Noteworthy Projects

List of professional and personal open source projects

I like coding, a lot. I like coding in team. Most of these projects were developped as part of a team where I was either the lead or a major contributor.

Work related

This only lists open source projets:

  • 2011-present: (python/Go) LUCI Wrote Swarming and Isolate servers and client code.

    • As of 2015 this is my main project.

    • I planned and partially implemented the Go version.

  • 2008-2011: (python) Wrote Google Chrome’s pre commit continuous integration support infrastructure.

    • Sustains higher commits rate than the linux kernel, >1500 commits/week, with 30 hours of testing per commit before committing in the source tree.

    • That’s 5 years worth of testing per week.

  • 2008-2011: (python) Buildbot.net contributor. Wrote:

  • 2008-2011: (python) Rietveld contributor and partially defacto maintainer.

  • 2008: (C++) Data Execution Prevention (DEP) related work. Generated a small news cycle with my own 4 pages article in Ars Technica. Sadly I couldn’t be named at the time.

  • 2007-2008: (C++) Wrote Chrome support printing (ink on dead trees). Filed patent US8456668.

  • 2004: (C/C++) Wrote ActiveX port of tn5250. What a silly idea;

    IBM mainframe + ActiveX + touch screen + IE6 = What could go wrong?

  • 2002-2009: (C++) One-time contributions to libxml2, swi-prolog, tortoisesvn.

Personal

This only lists open source projets:

Tools

  • webskel (Go/HTML) Web site template that can be entirely deployed for free without having to touch the command line.

  • panicparse (Go) Parses panic stack traces, densifies and deduplicates goroutines with similar stack traces. Helps debugging crashes and deadlocks in heavily parallelized process.

  • serve-dir (Go) python -m SimpleHTTPServer but FAST. No frizz.

  • dumbcas (Go) is a safe and dumb hashtable creator for backup purposes.

  • pre-commit-go (Go) is a toolkit for checks on a Go project before committing via pre-commit git hook. Includes coverage. Fast.

  • go-lepton (Go/HTML/js) Serves images taken on a FLIR Lepton connected to a Raspberry Pi, served over WebSocket. Uses I²C, SPI, HTTP.

    +

Libraries

General purpose

  • subcommands (Go) Permits an application to implement subcommands support similar to what is supported by the ‘go’ tool. Automatically corrects typo.

  • circular (Go) In-memory circular buffer.

  • ut (Go) is compact testing utilities to shorten unit tests.

  • interrupt (Go) is a single global way to handle process interruption.

  • interfaceGUID (Go) calculates a unique hash based identifier for an interface.

Algorithm implementations