HNHacker News
TopNewBestAskShowJobs

tomduncalf

8,351 karma · joined June 7, 2016

Full-stack software engineer. Currently working with TypeScript and C++.

Twitter: @tomduncalf

submissionscomments
tomduncalf··on Polyend releases the Tracker firmware source code
Share the link!
tomduncalf··on Infinite Mac: BeOS
Woah I never even considered the possibly of rebooting old OS with new features. Very cool. Would love to experience that era of music tech
tomduncalf··on Apple routed a graphite pipe through the iPhone Duo's hinge to dissipate heat
Yeah as I recall it, the iPhone was the first device where touch felt really natural and fun. They nailed that feeling that you’re actually interacting directly with what is under your finger. Previous touch devices I tried felt kind of disconnected because they hadn’t sweated the details in the same way.
tomduncalf··on Experiments with Plotter Art
I recently learned that vinyl cutters like Silhouette Portrait can be used for drawing too, which is fun as they can be picked up super cheap and they are very compact. I’m sure they’re not as good or accurate as a proper XY plotter but I’ve been having a lot of fun with mine! I’d recommend Silhouette as they are less closed than Cricut and there’s an Inkscape plugin
tomduncalf··on StemDeck, a free, open-source and local AI stem separator
It still blows my mind that this is possible, as someone who spent a lot of time as a kid trying and failing to get “acapellas” by EQing or subtracting instrumentals from vocal versions haha
tomduncalf··on Why does Opus 5 feel worse to work with?
I’ve been doing OCR of scans of old magazines (specifically extracting music reviews and charts, so turning complex layouts into structured data) and have been impressed with GPT/Codex’s performance.

My setup has a Sol orchestrator and Terra OCR agents and seems to get great results. I’ve not dug into the details too much, it also has a Tesseract stage as an deterministic input which it told me helped. Not sure how token efficient it is but I often don’t have anything to do with my personal tokens ahead of a reset so just let it burn through it in batches.

I am impressed (both in this task and other work I’ve done) not just at how well Codex can setup a structure for a complex task like this, but how it will keep going (Claude seems to find excuses to stop) and also can critique and refine its approach as it goes.

I did try out a bunch of other models and specific OCR providers but none of them hit the same accuracy for my task as Codex so I’m sticking with it.

tomduncalf··on Reviving a four year old reMarkable 2
I posted in a comment above that I (well Codex) was able to get full Chromium running on it. It’s not fast by any means but is usable if you just want to read a web page on e-ink… so it’s not crazy underpowered
tomduncalf··on Reviving a four year old reMarkable 2
Re: the software, I do think the on device software is good, if somewhat minimal, and the core writing experience is great
tomduncalf··on Reviving a four year old reMarkable 2
Yeah I got an RM2 cheap off there and I’m very impressed. It only really does one thing but it does it well. Personally can’t really see any reason I’d need a more powerful one, the latency is great already. Maybe for the front light.

They are quite hackable, but a lot of the mods rely on some funky QT hacking… it’s all a bit kind of undocumented. I was able to get Codex to get full Chromium running in a chroot and render the screen via Xvfb though which was pretty cool and is somewhat usable, so I guess most things are possible with determination

tomduncalf··on Fasttracker II clone in C using SDL 2
This rocks. Such nostalgia.

FT2 was how I discovered anything about music making - I loved the euro dance music I heard on the radio as a 12 year old but had no idea about the scene or how electronic music was was made.

PC Format had FT2 plus hundreds of modules on its cover CD one month, I used to love exploring all the random stuff on there and opened it up and my mind was blown when I realised that there was music like I heard on the radio, but you could see all the individual bits that made it up.

It took a loooot of messing around to figure out how to do anything of value with it, pretty sure this was before we had internet at home, but it was the start of a life long fascination with electronic music making.

So thank you to the author for resurrecting this amazing and somewhat esoteric bit of software!

tomduncalf··on Elevators
Ha I know the exact ones you mean well, going to the train from terminal 5? I couldn’t have told you what was up with them but they seem very inefficient and there’s always a queue! Thanks for explaining
tomduncalf··on Termixer (TUI DJ Mixer)
I dig the look - check out https://boorch.itch.io/ for some similar lovely musical TUIs
tomduncalf··on The lost joy of music piracy
Audiogalaxy was awesome. I loved how you could browse every file that had ever been online, rather than just what was online now, and queue them up for when they came online again. I’d just leave it running on our dial up connection when everyone went out of the house (no dedicated line so you’d clog up the phone, the good old days haha) and then come back to some exciting downloads I’d totally forgotten that I ever queued
tomduncalf··on The lost joy of music piracy
Don’t tell anyone! Haha
tomduncalf··on Jurassic Park computers in excruciating detail
Yeah this reminded me of “the good old days” of the internet when every site felt like this :)
tomduncalf··on Show HN: Juggler – an open-source GUI coding agent, by the creator of JUCE
Hey Jules! This looks awesome, excited to check it out :) Hope you're doing well! Tom
tomduncalf··on Apple WWDC 2026
Yeah I’m surprised by what a design misstep it was. The shiny corners of icons on iOS look so tacky and on macOS the corner radius mismatch is crazy. Also not a fan of the “bulbous” shapes of things with excessive rounded corners.

Whenever I use my personal Mac or iPad, still on the old OS, I wonder what they were thinking - I would guess it was rushed to hit the annual release, as it does have potential in parts.

That said, it looks from the few screenshots in this like you’re able to pare it back to something much closer to how it used to look, which is great and I’m glad they’re taking feedback on board.

tomduncalf··on Ask HN: What was your "oh shit" moment with GenAI?
Schwung is great. See also the recent new firmware for the Elektron Monomachine (old unsupported hardware) created using LLMs
tomduncalf··on Ableton Extensions SDK
FWIW you can bypass quite a lot of the Max visual stuff by using the JS support, which now finally supports modern JS (the v8 object). A lot of the LOM (Live API) is exposed there though you will no doubt need to use Max objects for some stuff. They also have web UI support with jweb.

I get the frustration coming to Max as a regular developer, but actually when I bothered to learn it was one of the most rewarding uses of time and I find it really quite fun to work in (and frustrating sometimes of course! But the JS support helps). You just need to forget everything you know about programming lol

tomduncalf··on Ableton Extensions SDK
Ha yeah I have considered the same. There’s not enough info exposed via the Python or Max APIs (or indeed this one) to sync all the state you’d care about so I think the only option would be syncing the actual als files (which are zipped XML) which means you’d only be able to sync at save points
tomduncalf··on PipeDream on the Acorn Archimedes
The screenshots of RISC OS bring back fond memories of playing with it in our school computer room (which was mostly BBC Micros but had a few RISC) - mostly playing Lemmings as I recall! It felt pretty cool at the time though
tomduncalf··on Six Years Perfecting Maps on WatchOS
I have been using the app for years but literally just because I like the step counter widget. I had no idea it did all this! Will try it for sure. Cool read.
tomduncalf··on Claude for Creative Work
I hooked Claude up to Ableton’s Python API last year and it seemed pretty promising https://m.youtube.com/watch?v=2WxSB75U6vg and more recently I created a skill for Claude to manipulate Ableton arrangements (which aren’t exposed via the API so you need to manipulate the file, which is zipped xml, instead).

Both seemed pretty promising and fitted with how I’d like AI to assist rather than replace me for creative tasks.

This reminds me I should open source them as I’ve had no time to do more work on them!

tomduncalf··on Thoughts and feelings around Claude Design
Yeah +1, at the start of my career (mid 2000s) all the web designs were done in Photoshop. I think this was true until 2010/11 at least, when I first encountered Axure being used for some design stuff. I’ve never used Fireworks and never saw it in the wild (UK, in case it was a regional thing)
tomduncalf··on Our commitment to Windows quality
For you maybe but seems a reasonable compromise to hit the price point and I bet you’d miss it less than you think
tomduncalf··on Hammerspoon
As chance would have it, I just tried this for the first time as I wanted to bind a keyboard shortcut to an option from a menu bar app which doesn’t support keybinding. ChatGPT wrote a script which uses AppleScript to do it. Really anwesome, and excited to find more cool things to do with it!
tomduncalf··on MacBook Neo
This is going to be a huge success and to me makes so much sense as a product. I’m always amazed at the range of opinions people have on these topics. Might even pick one up for myself to use on the go, I had been thinking about an Air but I don’t need much by the way of power in all honesty
tomduncalf··on Claude Composer
I’ll take this opportunity to plug a couple of experiments I’ve not progressed any further but thought were fun:

- Using Claude as a “pair producer” in Ableton by giving it access to the Ableton remote script API so it can create patterns - this was 1 year ago so I’d be interested to see how newer models can do https://youtu.be/2WxSB75U6vg

- A Claude Code skill which teaches it how to arrange Ableton loops into songs (by modifying the XML as there isn’t an API for this): https://youtu.be/P6Zw6f6CEbI and https://youtu.be/tVZigxFceUE

tomduncalf··on Ask HN: How are you automating your coding work?
But the model doesn't need to read the node_modules to write a React app, it just needs to write the React code (which it is heavily post-trained to be able to use). So the fair counter example is like:

function Hello() { return <button>Hello</buttton> }

tomduncalf··on Notes on Apple's Nano Texture (2025)
Tangent but the screen scratches mentioned from the keyboard are annoying. Every generation of MacBook has suffered from them and everyone’s seems to have it after a while, I guess it’s just physics when it gets stuffed in a bag etc, but any good tips to avoid it? I’ve heard mixed things about keeping a cloth in there
Page 1 of 30Next →