Category Archives: Uncategorized

Programmez Magazine turns 20 years

I am proud to write for this magazine. It is written by developers for developers. The May issue is the special 20 years edition. Great Job François Tonic.


LMDB for Windows

When I discovered the fantastic history of LMDB, It fascinated me. For a R&D projet, we need to present something that looks sexy and with a strong architecture. I proposed to study LMDB and bring to it the distributed engine and the clustering stuff with nodes. There are plenty ways of acheiveing this.

First, OpenLDAP-LMDB need to be ported on the Windows platform. It’s a C based code so there are no some many changes to fix for building on Windows. There was a path concat that made some problems but it’s defined as constants so I fixed it rapidly. I put it in Github after the operation was done.:

I was able to build a static lib for LMDB. But in Windows, we love shared modules called DLL so I have to put some little things on the source code to enable loading shared modules DLL (Dynamic Link Library).

#define LMDBWINDOWSDLL_API __declspec(dllexport)
#define LMDBWINDOWSDLL_API __declspec(dllimport)

With theses expanded macros, it can export functions. Every headers and bodys need to be decorated. Here is the explaination. When you build the library, you define de constant LMDBWINDOWSDLL_EXPORTS in the project settings then every macros instruct the compiler to export the functions. When you build an application who needs the dll, the macro is expanded as an import operation and at the link phase, you need to link with the little stub to attach the library.

If you are new to Windows DLLs making, check this portion of doc on MSDN:

How to write a technical article ?

Few days ago, a friend of mine received a proposition to write an article for a developer magazine (french magazine Programmez). He was happy to talk about what he loves : TypeScript and Javascript in general.

I am a regular writer for this magazine so I gave him some tips & tricks. First : feel the passion into your word document you will send. The first article is always with big emotions but emotions should be replaced with passion for technologies. So there are differents ways to achieve the goal of producing a paper for a magazine. People like me talk to the reader by telling a story. Others are more “litteraire”, and with a good writing style. In my opinion, writing a technical article is giving keys and small samples and the goal is to make it attractive to the reader so that he can search in its favorite search engine topics about the stuff your write.

An article has to follow conventions : 4500 char per page. 9000 for two pages, etc. You can ship images with your articles and source code. Take care that the code should not be too much indented. There are two columns in the magazine so if one lne of source code fills 2 lines, it’s not good.

My friend gave me its article for review. I have feeled he gave everything he has to share. But it is a serie so he has to write one ou two more articles to fill the technical stuff and the deep dive of TS.

But the result is good. Now he can fly by himself. Everybody can write a technical article, it just takes time. If you known what your are talking about, it’s easy to put in Word.

Paris view from Montparnasse tower

Few days ago, I was at Tour Montparnasse for a job interview for young SupInfo students on the 16th floor. Look at the view:

My new contribution to GitHub is called MyOrganizer

Look at the prototype… It enables to create work items and edit the source code. I will make the link with  another prototype called VSDemo. Look :

Prototype is available at :

Next month, it’s C++ & OOP Fundamentals

In the march Edition of french magazine Programmez, you will find a technical article about OOP in C++.

How to create an object model, thinking about how to create smart classes, how to hide or not members, abstract classes, virtual functions….

Envoyé de mon téléphone Windows 10

VSDemo App is on GitHub

You can download the source code on :

You can have a binary package here: