Raise.dev (2023 - Present)
CTO and Cofounder. Building something new. Stay tuned…
Project Leader and longest-running maintainer. Invented Homebrew binary packages (bottles) which were featured in Apple’s Touch Bar MacBook Pro keynote and are used by Google, Microsoft and Facebook. Fix users issues, plan roadmap, create and manage security program, make new releases, teach new maintainers and contributors and develop features in Ruby and Bash. Started a successful Kickstarter project which was funded in two hours to create a Jenkins CI system for Homebrew. Installed servers into data-centre and keep them running. Ran and mentored people in several Google Summer of Codes a MLH Fellowship and an Outreachy for Homebrew to successfully attract new maintainers. Brought Homebrew into the Software Freedom Conservancy for 501c3 non-profit status in the USA and financial sustainability. Organised first ever Homebrew maintainer meeting. Migrated Homebrew to GitHub Packages which required extensive changes and collaboration in both Homebrew and GitHub.
Creator. A script to bootstrap a minimal macOS development system. Built for GitHub (replacing Boxen) to reduce development downtime for all GitHub-employed engineers.
Maintainer. Like Ruby’s bundler but for non-Ruby dependencies from Homebrew and various other sources. Brought into GitHub organisation and integrated with the rest of the Homebrew ecosystem.
Employee #232. Built Merge Queue, Codespaces for GitHub’s internal usage, GitHub Sponsors, repository archiving, Open Source Friday, Open Source Guides, Strap (replacing Boxen), new APIs, GitHub Enterprise’s release process and many more changes invisible to those outside GitHub.
Creator. A small application to delete your old, unpopular tweets.
Creator. An inactive podcast that assumes it’s normal for working dads to be present in their kids’ lives. We speak to fathers about their work-life balance and what works (and doesn’t) with their kids. Was hosted by Paul Campbell and I.
Open Source Guides
Maintainer. Implemented language translations support and workflow, general bug-fixes and development. Managed community.
Open Source Friday
Maintainer, program manager and lead engineer. A program and site encouraging regular contribution to open source software during work hours.
Creator. Official TextMate bundle providing programming languages linter functionality.
Creator. Official TextMate bundle providing GitHub Flavoured Markdown extensions to make working with GitHub Flavoured Markdown nicer.
Git in Practice
Author. An opinionated, intermediate/advanced Git book.
AllTrails and AllSnow
Full stack engineer developing Rails/MySQL back-end and Coffeescript/SASS front-end. Developed features, APIs and optimised performance. Setup Jenkins CI and automatic Chef deployment for Rails and mobile applications HockeyApp deployment. Managed and improved AWS EC2 infrastructure.
First non-founder employee and lead developer for Mendeley Desktop. Setup all Linux servers and software systems. Created a workflow focused on quick deployment and high quality through automated Buildbot builds, tests, CPack packages for Windows, Mac and Linux. Designed, ran technical interviews and personally recruited three engineers.
Ported Qt/MSVC++ application from Windows to CMake, macOS and Linux. Fought for successful Linux port. Proposed, implemented the successful rewrite of problematic contracted legacy code creating a faster application and happier users. Designed, implemented the REST XML protocol used between Mendeley Desktop and Web.
Maintainer. Improved Homebrew integration, general bug fixing and updates. Migrated GitHub to use Strap instead. Transitioned project to community ownership and (eventually) archived status.
Creator. A small web application which runs scripts from web hooks.
Creator. A small application to lock your old, closed GitHub issues.
Creator. Rake build system for generating Manning DocBook and PDF files from AsciiDoc.
Maintainer. Added HiDPI support, merged contributions and fixed bugs.
Creator. A collection of Qt wrappers for macOS’s Cocoa widgets.
Maintainer. Added support for Mac OS X 10.6 and Qt/Cocoa, added CPack packaging support and macOS installer creation, migrated to Git and bug fixing.
Added CPack packaging support, Windows support, other features and bug-fixes.
Technical lead for team that created the analysis mode and integrated Valgrind’s Memcheck, Callgrind and Cachegrind tools. Personally focused on tool visualisations. Released in 2.3.0.
Worked on KDE on Mac integration/bug fixing. Improved the KBlog XML-RPC API for KDE 4.0 API freeze. Added rich-text support and posting of journals (as blog posts) from KOrganizer which was released in KDE 4.1.
Fixed bugs in and improved cross-platform packaging in CPack. Added Qt plugin support. Created DeployQt4 module for easy deployment of Qt applications. Released in 2.8.7.
Wrote WM8711 Linux kernel driver which was released in 2.6.26.
Improved and merged the long-running launchd patchset. Bug fixes for macOS. Released in 1.4.1.
Added the CMake build-system and migrated to Git. Released in 0.9.
Improved support for parsing and generating non-Qt C++ code. Released in 0.2.0.
Added OpenDocument support and JFreeChart integration. Released in 3.2.beta1.
Fixed a noisy LCD issue. Released in 18.104.22.168-rc2.