jsaveload-s3

2025

A full stack Java Spring Boot web application designed to save and load files using an S3 bucket as a file store.

It serves a few simple web pages as a frontend, and uploads and downloads files to and from S3 on the backend. I wrote this mainly to replace Evernote as my note-taking application, and to share files.

You can find the source code on GitHub.

Read more

Chica

2016

Computer drummer implemented in Java with Swing.

Chica is your jam buddy. Soon after I picked up playing electric bass, I felt like I could really use a drummer to practice technique and improvisation. Program your drum patterns into Chica and watch her improvise on them!

Watch the video tutorial and demonstration on YouTube.

Download it here.

Read more

TimTom

2013

2D game engine with physics implemented in Java using AWT.

Needs parallelised processing to run more quickly. Get the source code on GitHub.

Read more

Chaos Device

2020

Wireless 'on air' light prototype.

Working from home with high levels of noise around my home office, I needed something like a radio studio 'on air' light. I wanted something lightweight and portable, and there was nothing like this for sale at the time. I designed and built the Chaos Device, partly as a test of my prototyping capabilities.

Read more

Shortbread Biscuits

2020

A stereo fuzz box made with LM386 chips.

Shortbread Biscuits is USB powered and features 2 fully independent audio processing channels.

Read more

Delight and horrify your friends by mirroring their face!

Read more

OddGo

2013

2-player local Go game written in Java with Swing.

Non-standard board sizes are supported and the display is responsive - resize the game window however you want.

End the game by skipping both players' turns. Identify dead groups and territories, and OddGo will calculate the score.

Get the source code on GitHub.

Read more

Shopping app

Mobile app that gets you the best value at the supermarket.

Online grocery shopping websites have been popular for a long time, but they have failed to displace brick-and-mortar stores. Maybe it's the atavistic hunter-gatherer instinct written into our genetic make-up, but there's just something about physically collecting your own nourishment that we can't do away with.

Features to include:

  • Which One? — take a picture of the product selection, whether it's oat milks or hot sauces. Which One? allows you to sort the selection by price per unit, price per weight/volume, online user rating, and more.
  • Manufacturer black/whitelisting — maybe your political leaning disinclines you to buy from certain companies, or you've had a bad experience in the past with a product from a certain manufacturer. The modern food business landscape can be almost impossible to make sense of given constant restructuring, rebranding, and corporate acquisitions. If you think you're sticking it to Unilever by buying Dove deodorant instead of Axe, think again! This app will help you vote with your wallet.
  • Catch out shrinkflation — sometimes it isn't just nostalgia, and that chocolate bar really is smaller than it used to be. Be alerted to when a product has tried to hide a smaller quantity or quality downgrade with a well-timed redesign of the packaging.

Still just an idea.

Read more

Osophy

Graph visualiser for logical predicates.

Still just an idea.

Read more