Python stuff
I’ve been programming in Python since about 2001. I think it was Mo Patel, the legend that he is, who showed me the ropes while we were load testing software using Facilita Forecast at the Department for Work and Pensions.
Python’s probably my favourite language and has been a constant throughout my adult life. Back then I would have called it a modern BASIC, and I still think that’s still fair comment.
Python dev things
- example-python-project - A template for Python projects developed in vim/vscode on Mac/Linux.
Command line apps
- uh-halp - AI helper for the shell.
- merge-files - Universal file converter, extractor, merger. Not quite, but might be one day.
- ienv - Brutalize your venvs by symlinking them together.
- ocr-pdf - Use Optical Character Recognition to convert a PDF to TXT.
- benpipe - Convert bencoded data to JSON and back again using stdin/stdout.
Libraries
- arranges - Represent ranges as strings in Pydantic.
- interpolist - A list that fills in missing values.
- py9 - A Python implementation of Nokia’s T9, from back when that was a thing.
- filefrag - Python library to access Linux File Extents
Hax
- schrodinger’s rng - Generate proveably random numbers using a smoke alarm and a webcam.
- bubbler - Count bubbles as your beer or wine ferments.
- temper - Linux driver for temper digital thermometers.
- connection-limiter - The hackiest way to limit connections per user to a back-end behind nginx.
Older projects
- XBMC IRC - an IRC MP3 downloader for XBMC (Kodi).
- Google Remote Desktop Search - Search your local machine remotely.
- favicon to png - Tiny script to convert favicons to PNGs on the fly and cache them.
- Scrapers - Numerous data scrapers for various sites.
Commercial stuff
-
At NDA PROTECTED CLIENT, I’ve been writing bots and command line tools and libraries in Python.
-
For First Response Finance, I wrote an ML Ops inference and deployment framework for delivering Python + R machine learning models as APIs to Azure.
-
At William Hill I wrote note and coin acceptor drivers for multiple devices, and a bunch of other things for a gaming machine.
-
For Betconnect, I did a bunch of performance engineering for their exchange software.
-
At Sonocent, I wrote a BI platform to support business experiments.
-
At NHS Digital, I worked on the SPINE 2 project doing various things, probably the biggest TDD Python codebase in the world.
-
Someone on bitcointalk paid me 6 Bitcoins to write a data scraper for a violin sale site. I wish I’d kept them, they were worth $36 at the time.
-
At BetFair, I used funkload for performance testing and submitted a couple of bug fixes and made some pretty nice results visualization/reporting/diffing tools for perf tools in CI. Didn’t get permission to share the reporting tools, so all that survives is a bug report!