I'm an open-source software developer originally from the UK.
Contact me: Daniel Drake <email@example.com>
- One Laptop per Child - 2008-present
I've spent the last few years working on OLPC software releases, development and bug-fixing. This has lead to a lot of work on Linux, Fedora, and GNOME. I've also travelled and helped local teams deploy the end-result throughout the developing world.
- libusb: USB device access from userspace - 2007-2010
My fprint efforts lead to me adopting the libusb project. I developed a new version of libusb, offering new features allowing for more powerful applications.
- zd1211rw Linux kernel USB wireless (802.11b/g) driver - 2006-2008
Over 100 retailed USB-wireless adapters are based on the ZD1211 chipset. Ulrich Kunitz and I rewrote the vendor's driver. Our driver is called zd1211rw and is included in Linux 2.6.18 and newer.
- fprint: Fingerprinting on Linux - 2006-2008
Some generous people donated various different fingerprint readers, which were previously unusable on Linux. I reverse engineered these devices and created an image processing and authentication solution: the fprint project.
- Gentoo Kernel Project - 2004-2009
I led Gentoo's kernel project - packaging and patching the Linux kernel, and fixing bugs reported by the users.
- straightSSL - July 2007
A Python project I was working on required secure access to remote servers. Existing Python bindings for OpenSSL did not preserve the semantics and behaviour of Python's socket and urllib modules, a requirement for this project. I created these OpenSSL bindings to solve the problem.
- Beagle - 2005-2006
Beagle is an exciting desktop search tool primarily developed by the Novell Linux Desktop group. I performed various bug fixes, optimizations, and added/improved a few features.
- Touchcal - November 2006
As I couldn't find any reliable way to calibrate EloGraphics touchscreens, I adopted the touchcal project, moved it to SourceForge, and fixed it up to work with my hardware.
- Gentoo UK 2006 Conference - July 2006
I did most of the planning and organisation of the Gentoo UK 2006 annual conference. It took place in London and was a big success.
- Alauda driver - September 2005
I obtained a SmartMedia/XD card reader which uses a proprietary protocol (not USB mass storage compliant), originally unsupported by Linux. I reverse-engineered the device and wrote a Linux driver. The driver is included in the mainline kernel from Linux 2.6.16 onwards.
- Extended Attribute bindings for Mono - June 2005
I created bindings for Linux's Extended Attributes API, in the Mono.Unix.Syscall class. I then extended these to support FreeBSD's slightly different EA implementation, under the same Mono API, providing some portability for the use of Extended Attributes. Patch here.
- Planet Gentoo - March 2005
I proposed the creation of Planet Gentoo in GLEP 30. Once approved, I set it up on the Gentoo infrastructure and administrated it until things settled down.
- USBAT02 driver for Linux - January 2005
USBAT02 is a USB-ATAPI converter developed by SCM Micro/Shuttle. This converter is used in various USB card readers. There was a device driver available, but only for old kernels. I adopted their project in order to get the code modernised. The driver is included in the kernel from 2.6.12 onwards.
- GTK2 port for EasyTAG - Dec 2003 to May 2004
EasyTAG is a handy software package for managing identification tags of common music file formats (MP3, OggVorbis, ...)
The visual interface used to be based on GTK+ 1.2, but I fully ported it to GTK+ 2.4. The author accepted my work, and all recent EasyTAG releases are now based on GTK+ 2.x. Original patches: http://www.reactivated.net/patches/easytag/