Old Projects (2000-2009)

Wormux game

See also

My current projects and my talks.


Old websites (dead)

  • Wiki (last new article in december 2013).
  • Blog Haypo (last article in 2011)
  • Wordpress Blog (dead URL: http://www.haypocalc.com/wordpress/) (last article in 2011)

These sites were hosted at the haypocalc.com domain created in december 2001, but the domain died in december 2017, 16 years later.

Paper Articles

  • Netfilter et le filtrage du protocole IPv6 (french): GNU/Linux Magazine HS 41 (April 2009)
  • Hors-série Linux Mag : Explorez les richesses du langage Python (dead URL: http://www.haypocalc.com/blog/index.php/2009/01/27/185-hors-serie-linux-mag-explorez-les-richesses-du-langage-python) (january/february 2009). I wrote 4 articles:
    • Nouveautés de Python 2.6
    • Nouveautés de Python 3.0
    • Trucs et astuces
    • Ctypes et Python
  • “Pratique du fuzzing avec Fusil” (french), MISC magazine n°39 (september 2008)
  • “Comment réaliser un fuzzer ?” (french), MISC magazine n°36 (march 2008)
    • dead URL: http://www.haypocalc.com/blog/index.php/2008/03/10/136-comment-raliser-un-fuzzer

Python projects

  • pysandbox: Sandbox to run untrusted Python code. Project stopped because it is broken by design.
  • python-ipy: Python classes and tools for handling of IPv4 and IPv6 addresses and networks. I don’t need this module anymore and so I am no more interested to maintain it, the new maintainer is Jeff Ferland aka autocracy. Python 3.3 now includes ipaddress, a concurrent module to handle IP addresses and networks.
  • registervm: My fork of Python 3.3 using register-based bytecode, instead of stack-code bytecode. Read REGISTERVM.txt
  • python-ptrace: Python binding of ptrace library to debug processes on UNIX and BSD.

Other projects

  • Trollius: portage of the Tulip project (asyncio module, PEP 3156) on Python 2, asynchronous input/output library.
  • Hachoir3: Python library that allows to view and edit a binary stream field by field. In other words, Hachoir allows you to “browse” any binary stream just like you browse directories and files. A file is split in a tree of fields, where the smallest field is just one bit.
  • Warmux, previously known as “Wormux”: Open source clone of the famous 2D game “Worms” by Team17.

Old removed projects

  • Hasard: pseudo-random number generator (PRNG) library.
  • Fusil: Fusil is a Python library used to write fuzzing programs. It includes fuzzers for Firefox, ClamAV, Mplayer, Python, etc. I am no more working actively on the project, but it still works.
  • aioeventlet: implementation of the asyncio API (PEP 3156) on top of eventlet.
  • aiogevent: implementation of the asyncio API (PEP 3156) on top of gevent.
  • astoptimizer: experimental optimizer for Python code working on the Abstract Syntax Tree (AST, high-level representration). It does as much work as possible at compile time.
  • macfly: tool allowing to run one or more programs with a shifted clock compared to system clock. project written at INL for the french CNES (National Centre for Space Studies)
  • HaypoCALC: A formal calculator in text terminal. Existing functions : ln,lg, basen, gcd, lcm, ncr, npr, factor(int), cos,sin,tan, acos,asin,atan, derive,taylor, … Work on Linux and Windows, programmed in C++.
  • happyboom: Prototype of a library to write a turn-based game, it is mostly a network protocol.

Workshops Lolut

Dans le cadre du club Lolut auquel j’appartiens, j’ai organisé plusieurs ateliers :


I like programming. I started with examples copy-pasted manually from the magazine “Science & Vie Junior”, programs written in “Basic” (Microsoft Quick Basic).

Then I moved forward with the programming language “Pascal” (avec Turbo Pascal 7), completed with assembler Intel x86 (Borland Turbo Assembleur 1 and 2).

The other major change was the move to the object oriented programming (OOP) with Borland C++ Builder and short tests with gcc on MS-DOS (it didn’t work well). When I started to study at UTBM (engineer school), I switched from Windows to Linux because the 4 computers running Linux were always available and I didn’t thave the Internet at home.

I learnt HTML and XHTML (completed with Javascript), then PHP, and finally XML + XSLT + CSS. I learnt some Java at school, and Python at home.

I also developed with Visual Basic and Delphi, but I didn’t do anything interesting with them.