À propos

Je m’appelle Pascal Levy et je suis développeur. Mes plateformes de prédilection sont iOS, Mac OS X, Linux et le C/C++ embarqué. Je vis à quarante kilomètres au sud-ouest de Paris. Je bois du thé anglais et je conduis une moto japonaise (l’inverse aurait été sympathique aussi mais beaucoup plus cher). Depuis 2010, Æquans est le nom derrière lequel je me cache pour publier des applications, librairies ou documents portant sur le développement.

Ce joli nom provient d’une théorie mathématique développée au IIe siècle de notre ère par Ptolémée pour rendre compte des mouvements planétaires. Inutile de préciser que cette théorie est aujourd’hui complètement dépassée, mais le mot sonne bien et il a un rapport avec l’astronomie, ce qui se trouve être justement une passion personnelle et le thème d’une de mes applications.

Projets

J’ai travaillé sur un assez grand nombre de projets, la plupart commerciaux. En plus de ceux présentés sur les autres pages de ce site, voici les plus significatifs :

  • Balade à ciel ouvert, une application de planétarium qui a eu un petit succès dans les années 90. Le défi : faire en temps réel des calculs astronomiques, de la synthèse d’images et de la décompression audio sur les PC de l’époque, ce qui nécessita pas mal d’astuce et d’assembleur.
  • HB++, qui fut en son temps l’un des langages et compilateurs majeurs pour le développement sous Palm OS. Si vous avez possédé un Palm, la probabilité est grande que beaucoup des applications que vous utilisiez dessus aient été développées avec.
  • Diabeo, un outil d’aide au traitement du diabète qui combine un système expert embarqué dans une application mobile à destination du patient, et un portail de télémedecine à destination du médecin traitant.
  • AlgoGen, un langage mi-graphique mi-fonctionnel, un compilateur et une plateforme permettant de spécifier, d’implémenter et de tester des algorithmes médicaux.

Professionnellement, je travaille aujourd’hui sur des algorithmes de traitement d’image sur des systèmes embarqués. Pendant mon temps libre, je développe diverses librairies et applications, principalement en Haskell.

Compétences

Expert en C/C++/Objective-C, assembleurs x86, ARM et M68000. Niveau intermédiaire en Swift et Haskell. Développements occasionnels en Java, Python, Prolog, bash.

Bonne connaissance des technologies web : HTML, CSS, PHP, JavaScript, XML, JSON, AJAX… D’ailleurs, ce site est entièrement manufacturé à la main. Expérience dans la conception et l’implémentation d’une API REST.

Expérience significative dans l’implémentation de compilateurs : analyse lexicale et syntaxique, algorithmes d’inférence de types, manipulations d’arbres syntaxiques, génération de code ou de bytecode pour des machines à registres ou à pile. Implémentation de machines virtuelles.

Bonnes connaissances en cryptographie. Implémentation de plusieurs algorithmes (AES, RSA, fonctions de hachage, Diffie-Hellman, etc.) sur des plateformes mobiles à l’époque où les bibliothèques communes aujourd’hui n’était pas disponibles.

Intérêt dans les problèmes d’internationalisation des logiciels. Développement d’une bibliothèque et d’outils permettant de mieux séparer le code métier, indépendant de la langue, du code gérant les particularités typographiques et grammaticales dépendantes de la langue.

Capacités rédactionnelles. Animation de formations sur des sujets variés, comme par exemple : internationalisation, calculs en virgule flottante, multithreading, cryptographie, programmation objet, programmation fonctionnelle, etc.

Et bien sûr : développement de nombreuses applications !