Hey, I'm Ed

Python demigod, SQL whisperer, data overlord and professional cat wrangler.

About Me

I'm a Python and SQL wizard who dabbles in JavaScript, C++, HTML/CSS and Game Devlopment.

When I'm not coding, I'm rollerblading, juggling, or petting my cats.

My gigs past and present include data ops engineering, game dev team leading, teaching data science and even brewing beer. Once I was a barman. I've pretty much done it all.

Me hanging out with some pigeons somewhere

Skills

Languages

Frameworks and Tools

Weird Shit

Brainfuck code to tell if a number is odd or even

Other Fancy Stuff

Just for Fun

Juggling some clubs

Work

Current Gig: Data Ops Engineer at Blueskeye AI

I started at Blueskeye AI as a Junior Data Ops Engineer, but within three months they realised I was too brilliant for the "Junior" tag and ditched it.

I overhauled our inefficient web-based annotation platform, using NiceGUI to build a sleek, modular system for creating annotation tools. I also migrated our annotation database from Firestore NoSQL to PostgreSQL, designing and deploying a scalable, maintainable database and integrating long-term data warehousing for annotation storage.

I process so much video data that I dream about FFmpeg. I've automated away all the boring crap with a bespoke Python library to make life easier for everyone (read: me).

Side Gig: Teaching Assistant at Le Wagon

I teach bootcamp students the ins and outs of Data Science. I teach a range of abilities, from those who thought Python was just a snake, right through to those who are deploying real-world projects.

I work one on one with students to help them understand tricky concepts, debug their code, and guide them through their projects. Sometimes I even learn new things myself.

The bootcamp covers everything from Python and SQL, to Machine Learning and Data Visualisation, and even a bit of MLOps.

Past Gig: Game Development Team Lead at Date & Game

Created and maintained an online multiplayer framework for integration with a dating app, with fancy features such as world state synchronisation, race condition handling, and arbitrary resynchronisation.

Collaborated with our backend team, pixel artist, and game designer to create memorable experiences for our users.

Trained up new recruits and managed our team's workflow.

Date and Game multiplayer adventure game

Past Gig: Head Brewer at Matlock Worlds Farm Brewery

Before I became a data wizard, I was a beer wizard. I juggled with our brewing schedule, stock levels, and quality control.

I even designed two award-winning beers along the way, including Reverence, brewed with Victorian heritage barley Chevallier. It's as fancy as it sounds, ask me about it.

Even though I was a brewer, I still managed to squeeze in a little VBA coding to fill in spreadsheets for me.

Master Brewer Carl Heron and I with our collaboration, Reverence

Feedback

Student Feedback From Le Wagon

Projects

Coding Heaven: A Comedy Coding Blog

Fed up of drab coding blogs? Me too. That's why I created Coding Heaven - a blog that finds joy in coding.

I've tackled absurdities such as automated stealing of Advent of Code solutions, determining if a number is odd or even in Brainfuck, turning Fizz Buzz into something that sounds sort of like music, and creating the universal 'Hello, World!' equation.

It's coding, but fun.

Blog Thumbnail for Operation Solution Steal

Blueskeye Annotation Tooling Suite (BATS)

When I began work at Blueskeye, I inherited a web-based annotation tool. It was like a car with square wheels (it didn't work very well).

I rebuilt it using clean, reusable classes and smart inheritance. The result is a bespoke, extensible annotation suite that supports a massive range of tools, lets us deploy new features in hours (not weeks), and handles hundreds of thousands of annotations (and no square wheels!).

Data retrieval times have been reduced and refactored to allow videos of any length and filesize to be annotated, removing bottlenecks for files over 10MB.

Data Processing Python Library

At work I wrangle video data. One hell of a lot of video data. After rewriting the same code for the billionth time, I decided to write a Python library to do it for me. Every function and feature in the library was built and tested using test-driven development (TDD), because breaking things is best avoided when dealing with terabytes of data.

The result is a library that simplified complex data processing tasks down to a mere few lines of code, integrates seamlessly with our annotation data warehouse, and can even be automated to continually process data whilst I sleep.

Errors have been reduced by standardising the processing pipelines and adding features such as auto-rotation to detect the orientation of videos, resulting in a reduction of both processing time and time lost to mistakes.

Laziness truly is the mother of invention.

My workspace

Sokobanvania (Working Title)

Ever played Chip's Challenge? Ever thought "what if this game were an open-world metroidvana? Someone should make that"? Yeah, me too.

Welcome to Sokobanvania - a seamless, dynamically loaded open-world puzzle game that mashes up block pushing with exploration.

Features include an undo system (sounds lame, actually really difficult to implement) and childlike coloured pencil artwork.

Sokobanvania gameplay

Bonus Section

Frankie sleeping