Workshop open / taking on contract work

Give me your messiest problem.

I build complete systems out of ambiguous, half-understood problems. Technology is the tool. The work is finding what actually needs solving, then proving the answer works.

See the work ↓

01 / Selected projects

The evidence is
in the decisions.

Each started with a concrete problem and changed as I learnt more.

01Live / in production

A social product built and tested through real events

Hulofuse

Hulofuse started with a difficult question: can software do more than introduce people, and actually help them form friendships? I founded it and led the team that built it to find out. It launched across the Bay Area, grew to more than 800 users, and brought people together at real events.

800+Users, live for more than ten months

The decisionThe second meeting mattered more than the first.

02Complete / live

An animation community rebuilt from the server up

11 Second Club

Artists animate an 11-second audio clip, vote, and receive professional critique. The job was to move the neglected old site onto modern infrastructure, but the operating system, forums, media pipeline, spam controls, and deployment all needed work, so the migration became a complete rebuild. A local Qwen classifier now catches spam, and the mobile app lets members stream 16 years of animation entries, vote, and use the forums.

16 yrsOf animation entries, streamable on mobile

The decisionRebuilding became simpler than preserving each failing layer.

03In use / still developing

A file-sync replacement that grew around the work

Fogjaw

Fogjaw began by replacing a file-sync client that used a small website running on the same computer to manage local files. Solving that exposed everything that happened around the file: review, organisation, delivery, and time. A few friends now use it in their studio work while it continues to develop.

The patternSolving the first problem revealed the system around it.

04In active use / evolving

Reconstructing systems nobody can explain

Lazarus

Lazarus takes an inherited system nobody can fully explain and builds a verified source of truth from what survived and what is actually running. It checks documentation against repositories, build systems, hosts, processes, jobs, configuration, logs, and dependencies, so an upgrade, migration, or rebuild can be planned against what is actually running. It is used regularly and continues to evolve when a real system exposes a new case.

The decisionThe running system was the only reliable record.

02 / Currently building

A Spectrum Next
for Tang hardware.

NextTang is an independent, open-source port of the ZX Spectrum Next FPGA design to Sipeed Tang Console boards, starting with the 138K model.

Every bring-up stage is done. The Console 138K now runs 48K, 128K, and Spec256 machine profiles on real hardware, with DDR3-backed memory, HDMI video and audio, games loaded from the SD card, and USB keyboard and controller input.

Why
Make the platform available on capable, obtainable hardware.
Bring-up
All four stages complete on the Console 138K.
Running now
48K, 128K, and Spec256 on real hardware.
NextTang / bring-upConsole 138K
  1. 01Clocks and UARTDone
  2. 02HDMI and DDR3Done
  3. 03SD, audio, and USB inputDone
  4. 04Import and adapt the coreDone

Jetpac on the actual board: original colours on the left, Spec256 on the right.

03 / Workbench

Things I made
because I wondered if I could.

Games, tools, and working systems that started with curiosity, an irritation, or something I wanted to exist.

01

Complete / online multiplayer

GlitchHopper

My reimagining of what my favourite ZX Spectrum game would look like in 3D if it came out today. It is a complete game with online multiplayer. Making it meant working across game design, modelling, rigging, sound, networking, and visual polish.

02

In development / Next + PC

Attack of the Mutant Zombie Flesh Eating Chickens from Mars

A new game for the ZX Spectrum Next and PC, inspired by the unfinished 1987 Software Projects title. Zappo, an armed dog, races through a desert invasion while mutant chickens attack from above and the scenery itself becomes part of the fight.

Mast with two terminal panes; Claude has been handed the keyboard in the left pane and is running checks at the host's pace

03

Complete / in use

Mast

A collaborative SSH application built so several people can work in the same remote terminal without passing control back and forth. It is complete and used well beyond me. The source is private for now.

04

Ongoing / working tools

Cobra / ZX Next

Rebuilding a childhood game for the ZX Spectrum Next exposed gaps in the available knowledge and tooling. I added a developer debugger to the JNext emulator, built source-level tools, and began extracting the repeated game systems into a reusable engine.

05

Complete

Animation Mentor Mobile

A complete mobile portal for Animation Mentor. Students can take their classes, access course material, and use the school’s social features from the app. It is live and in use.

More things I wanted to see work.

Drawer / 06 to 11

06

Living History

Recorded family conversations become cited transcripts, a memory graph, and the next question worth asking. The imported-audio loop works end to end.

Working end to end

07

GarageIQ

A phone-based automotive diagnostic tool for reading faults, streaming live vehicle data, inspecting freeze frames, checking emissions readiness, and identifying the vehicle through an OBD adapter.

Working / live vehicle data

08

Cribbage Trainer

A complete strategy trainer with three drill systems. It ranks all 15 discard choices by expected value, explains pegging decisions, and shows when board position changes the best play.

Complete

09

Keep Breathing

A mind-switcher for iPhone and Apple Watch. Choose distraction or calm, then drop into a scene: a catalogue of Metal-rendered fidget toys and slow worlds, spoken guidance, and heart-rate biofeedback from the Watch, with animation, audio, and haptics kept in sync.

Working / iPhone + Watch

10

Wallpaper Engine on Linux

A Linux port for running Wallpaper Engine assets across Wayland and X11, with multi-screen placement, property controls, and frame-rate limits.

Working / Wayland + X11

11

Recipe Manager for Control Freak

Typing recipes into the Breville Control Freak one by one was tedious, so I reverse-engineered the encryption used by its recipe files and built a macOS and Windows manager to read and write them. Then I modified a 16GB SanDisk Connect Wireless Stick and rebuilt the Wi-Fi app running on it. The manager could connect while the stick stayed plugged into the cooker, so I could update recipes from my phone without carrying the stick back and forth.

Recipe Manager for Control Freak showing the recipe list and a sear recipe at 232°C

Complete

04 / About

The problem picks
the technology.

I’m Jon Attree. I grew up working class in England. As a child, I was always taking things apart to find out how they worked, though they rarely still worked once I’d put them back together.

Some work starts with an inherited system nobody wants to touch. Some starts with an irritating tool, a product that misses the human problem, or a game I wanted to make as a child. I work across product, infrastructure, data, operations, and the parts that do not fit neatly inside one discipline.

  1. 01Start with the human problem.
  2. 02Test claims that sound too easy.
  3. 03Build the missing tool.
  4. 04Let evidence change the plan.
  5. 05Leave a working system behind.

05 / Contact

Have a useful mess?

If you’re sitting on a strange idea, a system nobody wants to touch, or a problem that doesn’t fit neatly inside one job title, I’d like to hear about it. I take on contract work, and I’m open to the right full-time role.