Jump to Navigation

Me on Twitter

  • How is NSA breaking so much crypto? https://t.co/0fObkAsMEK 5 weeks 3 days ago
  • @parisweb 2015 c'est fini... Je recommande fortement si vous voulez suivre ou confronter les technos du web ! 7 weeks 6 days ago
  • De la pres de @nitot "There is no cloud. Just someone else's computer" #jadore 7 weeks 6 days ago
  • @Nico3333fr Super pres j'ai appris quelque-chose ce matin ! Des pensées / docs sur CSP pour contrer les extensions navigateurs de pub/spam ? 7 weeks 6 days ago
  • Et de déranger tt le monde car les conf sont légèrement décalées ;-) Bref le wifi est donc "anémique"... https://t.co/q0v9nFRnYo 7 weeks 6 days ago
  • RT @ParisWeb: @nic0b0 ce n’est pas particulièrement une bonne idée d’encombrer un wifi anémique quand on est sur place. Il suffit d’aller d… 7 weeks 6 days ago
  • @parisweb le streaming stream.pw ne marche pas sur le wifi fourni au Beffroi... 7 weeks 6 days ago
  • Got it ! https://t.co/RercFTIlll http://t.co/ns7H3WUhkh 10 weeks 1 day ago
  • Now it's getting crazy ! http://t.co/c7xTfxwy5Y #okay #game 10 weeks 1 day ago
  • I am now a Professional #ScrumMaster ! http://t.co/mMGW7utxYH @scrumdotorg 10 weeks 4 days ago

python Python versus Shell scripting : from experience

A quick "pros & cons" to choose between Python or Shell scripting, from what I've observed through the years.

This could probably apply to other high level script languages* vs shell.

* Like Ruby, but not like Perl, as it shares more with shells from my point of view, like unreadable syntax and execution speed.

Python vs Shell

web2.0 Scaffolding the Web 2.0

Starting up with Web 2.0 development ?

Let's choose between three essentials tools to begin a new project !


graphism How to cook an egg with a Gimp

Here is a tutorial to draw an egg with Gimp.

With the following techniques, you will be able to build a realistic egg for a serious business (!) as well as a cartoonish one typically for a gamification usage ;-)

You will find the full Gimp source attached to this article, which I invite you to reuse at will.

The egg evolves !

python Building PyCrypto for Win32

The PyCrypto library provides Python with implementation for a lot of algorithms for cryptography. It's very useful.

Ubuntu has it by default but if you want to have it for Python 3.2 on Windows, you must use Active Python, as there is no other binary release for Python 3.2 on the web.

In case you want to use the official Python distribution or if ActiveState did not (yet) released a PyCrypto for the version of Python you are using, this article might help you by putting together the steps to build it from source.

Also attached : a binary exe for the impatients.

Python logo

android A paper backup for your private key

Android keychainAndroid requires developers to sign their applications with a digital certificate and that each future release be signed with the same certificate.

Sadly, bad things happen when the developer (you) looses access to the certificate : he (you) will not be able to release updates for the application without it. NeverEver.

Android does not currently support multiple certificates per application so the best you could do would be to release a new app with the same name, in the hope your users will find a way to it by themselves.

As years go on, you will change your computer, wipe USB keys, reinstall OS, ...
So many dangerous operations for your digital certificates, hidden among millions of files !
If, like me, you are anxious at the idea of losing your certificates or passwords, just print a paper copy !
Although it is not invulnerable, paper should be less prone to mass erasing than a simple electronic file.

The idea is simplenot new, and you just need to know two commands to get a printable hard copy of your certificate.

Let's start.

drupal AddThis for Drupal

This small article might help you to figure out quickly how to work with the AddThis module for Drupal.
It is not a substitute to the original documentation : it just provides a concrete view of the configuration process from my experience.

Here is a sample "toolbox" generated with the AddThis module : AddThis : nicobo's sample toolbox

Here is an overview of the main steps to get AddThis working on Drupal :

  1. install the module : http://drupal.org/project/addthis
  2. choose in which nodes it appears : page, story, teasers, ...
  3. select which type of widget you want : they are called "button" and "toolbox" in the configure tab
  4. build the widget by adding components to it (only for "toolbox") : components includes popular buttons like facebook like, google +1, tweet, but also custom elements like separator, addthis 'more' button
  5. add a service customization for each component you listed : this step simply provides each component with adequate parameters
  6. customize it more using the numerous other options


drupal Displaying your tweets on your Drupal blog

If you want to display your latest tweets on your Drupal blog, you will probably want to use the dedicated Twitter module. Among other features, this module provides a new block type that lists a selection of tweets from an account. Tweets are retrieved via a cron job and stored in your website's database, making them available even through corporate firewalls that banish twitter.com. Just-what-you-need !

There are a few catches however : it will likely not work if you are on a shared host because Twitter puts rate limits to the usage of their API, and there is a bug in the block view that can be circumvented.

tooling Migrating from Subversion to Mercurial

Need to migrate from Subversion to Mercurial ?

This is a quick guide to migrating an existing SVN repository to a new Hg one.

It takes 2 major steps :

  1. make a local copy of the existing SVN repository
  2. convert it to Hg


Successful import from SourceForge's SVN to Google Code's Hg :

Sample project imported from Sourceforge's SVN to Google code's Hg

java HttpClient 3.x : a portable SSL Socket Factory implementation

I was just trying to implement client and server authentication over SSL on IBM Websphere 6 (JRE 1.4.2)...


It may sound awkward in 2012, but if you wish the HTTPS server to identify your Java client (versus : only the server is identified), you will have to write your own implementation of a socket factory.

The Java Runtime Environment doesn't provide ready-to-use classes to do this. Yes : there is javax.net.ssl.SSLSocketFactory.getDefault() but it requires to set some system (therefore global) properties to point to the certificates files !!!

Even with Apache's HttpClient (at least version 3.x), you have to use a custom SSLProtocolSocketFactory.

The HttpClient SSL Guide provides sample code to implement mutual client and server authentication ; unfortunately the latest stable release of it (contrib 3.1) is bound to Sun's API with imports such as com.sun.net.ssl.KeyManagerFactory. Needless to say that this will not work on an IBM Websphere JRE...

This article contains an implementation of a SSLProtocolSocketFactory for HttpClient, to whom may be interested...

android Small devices are ignored

This has been annoying me since the beginning : small screen devices are not taken into account by the vast majority of apps editors.

Worse : despite Google's pleading about size-caring (see http://developer.android.com/design), they recommend patterns that actually don't fit the real small screens for which size-caring IS important.

Here are screenshots of Android Market and Google Reader on an Xperia Mini (HVGA 320x480, 88mm long) :

Android Market on Xperia MiniGoogle Reader on Xperia Mini

Syndicate content