I’m involved in a large number of open-source projects. It’s too many to list them all here, but major ones include the followings:
- Jenkins — a continuous integration server.
- Akuma — turns a Java program into an Unix daemon
- File leak detector — monitors file descriptor open/close activities and records its stack trace.
- GitHub API — Object-oriented Java client API for GitHub
- Groovy sandbox — executes untrusted Groovy script in a restricted sandbox
- libpam4j — Java library to perform Unix PAM authentication.
- META-INF/services — auto-generate META-INF/services file from annotation.
- Winp — windows process manipulation
- YouDebug — DSL for debugger
- com4j — Interop between Java and Microsoft COM, the Java5 way.
- Dalma — a workflow engine that uses continuation.
- args4j — Java command-line options handling, the Java5 way.
- sorcerer — Java source code cross-reference tool. “read-only Eclipse on in a browser.”
- Parallel JUnit — JUnit3 extension to run unit tests in multiple threads.
- Stapler — my own Java web framework, used for Hudson.
- FreeTrain — a .NET ‘clone’ of a famous Japanese railroad simulation game “Take the A train”
Projects at Sun
At Sun, I was involved in a large number of projects:
- GlassFish v3 — I was invokved in the architecture and foundation part of it, most notably HK2
- JAXB (Java Architecture for XML Binding) — I’ve done significant part of the implementation and the spec maintenance work.
- JAXP — I worked on the validation API based on JARV (both spec and implementation.)
- JAX-WS/Metro — I led the design of the new architecture in the JAX-WS RI 2.1 and involved in various parts of implementations. I’m also working on various extensions.
- Sun Multi-Schema Validator (MSV) — XML validator that supports various schema languages.
- Sun XML Datatypes Library (XSDLib) — XML Schema datatypes implementation as a reusable library.
- RELAX NG + Schematron — A tool that allows Schematron to be combined with RELAX NG.
- XML instance generator — A tool that generates XML documents from a schema file. Supports various schema languages.
- RELAX NG converter — A tool to convert schemas written in various schema languages to their equivalent in RELAX NG.
- codemodel — Programatic java code generation library originally used in the JAXB RI, now available as a stand-alone project.
My earlier RELAX NG related work is available for archival reasons.