About me
I'm currently working as a freelance software developer. I've been a professional programmer for the last 20+ years working on everything from industrial automation and SCADA systems to embedded systems and educational robotics. I'm a huge opens source fan and have contributed to 100s of open source projects over the last 10+ years.
A big part of the last 10 years has been LEGO robotics. I have done everything from coaching and judging FIRST LEGO League teams to reverse engineering the latest LEGO robotics platforms to build complete 3rd-party open-source alternatives (LEGO actually encourages this, in case you might be questioning the ethics of reverse engineering).
Major projects
Here are some of the projects where I have spent the most time contributing and maintaining and are actually used by 1000s of people.
- Pybricks: MicroPython for LEGO Powered Up smart hubs
- Bleak: A cross-platform Bluetooth Low Energy Python package
- ev3dev: A full Debian Linux distribution for LEGO MINDSTORMS EV3
- KeeAgent: An SSH Agent plugin for the KeePass 2.x Password Safe
Notable contributions
Here are a few bigger projects I've contributed to that are fun to tell about.
- I'm the official maintainer of LEGO MINDSTORMS EV3 and some related drivers in the Linux kernel.
- I implemented the
writeWithResponse()
andwriteValueWithoutResponse()
Web Bluetooth APIs in the Chromium web browser. - I have written software that is running on the International Space Station.
- I'm one of the top 10 contributors to the MicroPython project.
Programming languages
Like most programmers, I'm a polyglot. This is the shortlist of the languages and technologies I have used the most recently.
Expert level | Working knowledge |
|
|