Hello, I am Jean-Francois Richard and this is my site.
Some things I work on in my spare time:
2009 - executable-war, a simple to use, Maven-based, tool to generate executable WAR packages. Inspired by Hudson's own mechanism (described by Kohsuke Kawaguchi's blog post on the topic), and by Google Gerrit's own take.
In short, it enables a developer to write a Web
application that will be packaged as a WAR file suitable
for deployment in any compliant servlet container and, at
the same time, that will be directly runnable on the
command-line:
java -jar mywebapp.war
The end
result will be the same, with the Web application
available for the user to use over HTTP.
This makes it very easy for end-users to launch the application without having to download and install an application server, while preserving the possibility of deploying to such a managed environment.
This technique involves introducing changes (at packaging time, with Maven) to the the regular WAR file so that it contains both a normal Web application structure and a small launcher class registered as the main class in a standard JAR file manifest. The launcher class then unpacks a lightweight servlet container (included in the WAR file) that will then deploy & launch the original WAR file.
The servlet container used is the very lightweight Winstone. Jetty could also be a good candidate for this scenario, but it introduces more dependencies that would need to be included in the WAR file. I wanted to keep additions to the WAR file as simple and as small as possible.
2009 - libsnmp, an experiment with SNMP and some techniques presented in Effective Java, by Joshua Bloch. The aim is to build a small client-side library able to query SNMP-enabled devices.
2007 - git-home-history, a tool to track and backup changes made to one's home directory very easily. Based on Git.
My photo gallery, for the curious. And yes, I root for Nikon! :-)
Experimental SVG world map showing countries I have visited (works with Firefox, Chromium).