HNHacker News
TopNewBestAskShowJobs

thom

9,932 karma · joined October 28, 2009

Recovering startup person.
submissionscomments
thom··on Software is made between commits
A software team’s job is to collaboratively learn an effective model for operating in a domain. They express that model and those learnings in code, tests and associated documentation. So on the one hand I wholeheartedly agree that pull requests and code reviews fatally undermine this process, but immediately recoil that we’re creating yet more secondary processes and artefacts to distract ourselves. This stuff should all be evident from your codebase. It’s not an extra thing. It’s not a bunch of commit messages or ADRs. If your codebase isn’t entirely self explanatory (both the what and the why) to both humans and AIs you’ve failed and will spend your whole life creating more and more process to manage that failure.
thom··on Conventional Commits encourages focus on the wrong things
Commits should have no information in them. Teams should be aligned on the design of their software, and all the information about that software should be apparent from its source code.
thom··on Ian's Secure Shoelace Knot
Not sure what my knot is called but it’s never come undone or gone wonky for me. At step five of the standard knot above, just pull the yellow loop into the empty space on the left and the blue loop to the right. Surely that saves you having to change hands?
thom··on KDE at 30
And in case this comes off too negative, I don’t think anyone has mentioned KStars, my favourite KDE app for many years. All my early Linux experiences were eye opening and mind expanding about what computers could be, but somehow none more than that.
thom··on KDE at 30
It feels to me that a lot of the bigger ideas in KDE fell away over the years. In the 2000s I would log in every morning, open a KWord doc in one Konqueror tab, a KSpread sheet in another, and some browser tabs alongside them, then I'd launch Kate and open some files over SSH or FTP and get to work. It felt like someone had really embraced OO and applied it to every part of the desktop, and I assume something like KParts and KIOSlaves still exist. But for the most part, I use KDE now as a bog standard boring Linux desktop that just works. I am grateful that it hasn't been dumbed down quite as much as GNOME over the years, but I hope they have a few bold experiments left in them (and would love to hear what I'm missing if it's already there!)
thom··on Sony Launches Bravia 9 II and Bravia 7 II with 'True RGB'
Yeah we have one of these in our kitchen diner and it's excellent.
thom··on What Gets Kept
Was about to comment, anyone who finds themselves bouncing off Kerouac could do worse than read Miller. The latter is more like your first torrid love affair versus the former’s first giggling glimpse at a porno mag.
thom··on DOS Zone
You don’t necessarily know when someone will decide to do a commercial release of an old game, causing it to disappear from various abandonware sites. Much simpler to grab eXoDOS once and use it for life.
thom··on DOS Zone
iDOS 3 works perfectly on my iPad Pro for both DOS games and Win 3.11.
thom··on Accelerando (2005)
I first read this on an HTC Typhoon smartphone on my daily commute to my first job out of university. I must have felt pretty smug and futuristic at the time.
thom··on Dirtyfrag: Universal Linux LPE
I think when there’s a step change in our ability to find one type of vulnerability, other types of vulnerability are probably going to become more common as well. Let’s see where we stand at the end of the year.
thom··on Dirty Frag: Universal Linux LPE
After all these years, we finally have enough eyeballs that all bugs are shallow, and it kinda sucks. How many times a week am I going to be updating my kernel from now on?
thom··on A desktop made for one
Same reason people muck about with knowledge management systems... to put off the day when you have to sit down at your desk and actually do something.
thom··on Clojurists Together – Q2 2026 Open Source Funding Announcement
What's core issues are you thinking of?
thom··on Ask.com has closed
There was a period in the early 2000s where AskJeeves’ answer to the question “what is the meaning of life?” was an old Eliezer Yudkowsky essay saying that because we weren’t smart enough to work out the meaning of life ourselves, our highest purpose was to build smarter AIs who might be able to answer definitively. Time to close the loop!
thom··on Ghostty is leaving GitHub
A charitable view might be that changing which fingers you're using to plug the holes in the dike is a lot harder when the volume of water on the other side is increasing exponentially.
thom··on Ghostty is leaving GitHub
While I wouldn't necessarily phrase it this way, there is a chart going around social media that tries to imply that GitHub had basically 100% uptime right up until the MS acquisition. All it takes is either 1) having been there or 2) a cursory search of HN to know that this is a complete fabrication.
thom··on UK Biobank leak: Health details of 500 000 people are offered for sale
Would this have been prevented by the Trusted Research Environment stuff Ben Goldacre always used to talk about?
thom··on Composition shouldn't be this hard
This is light on specifics, but is still directionally the closest anyone has come to describing my ideal future data platform. The founder Dan Sotolongo's work at Snowflake included Dynamic Tables which makes me think the proposal is basically this: a hybrid transactional/analytical database, with declarative domain-oriented schemas, with smart incrementally calculated updates, and a la carte performance characteristics (i.e. opt into row or columnar storage, or whatever indexing you like). Nathan Marz's Rama is also close to this vision but perhaps a little less accessible for many enterprises as it's more purely developer focused. The win here is that you have a single system with all your data, all the time, and can build on it however you like. Piecing complex new services together across multiple microservices is deeply painful - if you can give me a single smart platform for all my data, and make it work operationally, that feels like a big win.

Obviously a lot of this you can piece together today, in fact Snowflake itself does a lot of it. But the other part of the article makes me think they understand the even harder part of the problem in modern enterprises, which is that nobody has a clear view of the model they're operating under, and how it interacts with parts of the business. It takes insane foresight and discipline to keep these things coherent, and the moment you are trying to integrate new acquisitions with different models you're in a world of pain. If you can create a layer to make all of this explicit - the models, the responsibilities, the interactions, and the incompatibilities that may already exist, then mediate the chaos with some sort of AI handholding layer (because domain experts and disciplined engineers aren't always going to be around to resolve ambiguities), then you can solve both a huge technical problem but a much more complicated ecological one.

Anyway, whatever they're working on, I think this is the exact area you should focus on if you want to transform modern enterprise data stacks. Throwing AI at existing heterogenous systems and complex tech stacks might work, but building from scratch on a system that enforces cohesion while maintaining agility feels like it's going to win out in the end. Excited to see what they come up with!

thom··on Modern Board Games: and why you should play them (2022)
I think you should play modern board games, but can we agree that there are both good and also heinously bad lessons to learn from them? Far too many board games want to be computer games, and seem to think it's trivial to have 20 different piles of crap to set up at the start, and then a dozen different pieces of state to track in your little corner of the table during what will inevitably be a complicated five-phased turn. If your board game takes hours to learn and set up, and then half an hour to put away again at the end, I am just going to invest my time in a proper TTRPG that better repays the investment.
thom··on The future of everything is lies, I guess: Where do we go from here?
https://archive.is/eXuD0
thom··on Ask HN: Any interesting niche hobbies?
I don't think chess engines are a solved problem for some use cases. Yes you can make something strong, maybe even the strongest, but can you create a chess engine perfectly tuned to actually teaching a player? Instead of superhuman perfect lines and inscrutable long-horizon strategy, can you teach nearly optimal human play in a way that's actionable, modular and memorable? Can you improve on tournament prep for players against particular opponents or within a particular metagame?

Also, obviously it's your life, and we're here on Earth to fart around, but I have spent a good portion of my life dipping into one hobby after another, as my dad did before me, so I'm half speaking to myself when I ask this: why do you think you can't meaningfully contribute to any of these realms, even now? To me that sounds like some deep seated fear or doubt, some aversion to competition, some overriding bitterness. I'm slightly worried you'll just be back here in another couple of years trying to find another new hobby, unsullied by the efforts and achievements of others. You won't find that! I would actually suggest a particularly expensive hobby: going to therapy. Try that, and learn that you're already enough, and if your contributions are meaningful to you, that's all that matters. Happy to be way off the mark here though.

thom··on Steam on Linux Use Skyrocketed Above 5% in March
I've been very impressed with Bazzite on my ASUS dual screen laptop. Honestly feel like hardware support is better (especially in the absence of crappy ASUS software) and nothing on Steam runs noticeably worse. Hard to imagine going back to Windows at this point.
thom··on LinkedIn Is Illegally Searching Your Computer
I was under the impression Firefox randomises extension IDs on install, so hopefully not?
thom··on Bringing Clojure programming to Enterprise (2021)
Almost exactly, it's mostly how you use the REPL that differs, and then only because of what different editors prioritise. When I'm in Emacs, all my work happens against a running REPL - when I open or save a file, it's reloaded. Any tests loaded in the REPL rerun on every save, within that live instance. If I drop into the debugger, it's against that live instance. I can swap in mock components to a running system, go check stuff in a browser (even jack into a live webpage with ClojureScript), all in one long running instance. I have struggled to recreate this kind of setup as smoothly in Python with any editor (pytest doesn't want to run this way, and IPython's autoreload doesn't feel as reliable), but I do probably write more REPLy code in Python than most, so all my model training and optimisation runs during development happen in pausable background threads in IPython etc.

All that said, 90% of the time you still just eval a bit of a code to see what happens and that's the same between the two languages.

thom··on Bringing Clojure programming to Enterprise (2021)
This is already a strong theme in the Clojure ecosystem, e.g.:

https://github.com/BetterThanTomorrow/calva-backseat-driver

thom··on One of the largest salt mines in the world exists under Lake Erie
I spent part of my childhood in Winsford, a salt mining town in the UK (its other claim to fame being that it was where Neville Southall played before Everton). Every time I pass a yellow bin of salt for gritting the roads, I get to feel a little bit of nostalgia (before falling over because councils no longer have enough money to grit the roads and pavements).
thom··on The Oxford Comma – Why and Why Not (2024)
Many years ago working on natural language to SQL, when we had ambiguities this is how we’d clarify things with the user (albeit with the minimal amount of brackets necessary).
thom··on Wired headphone sales are exploding
I’m sure somebody posted a link to E-Prime here recently (a form of English where all forms of ‘to be’ are forbidden) and this conversation is a wonderful example of the kinds of conflicts that it helps avoid.
thom··on Ask HN: What Are You Working On? (March 2026)
Things like string-set and string (repeating section headers on each page), counter and target-counter (embedding page number references) etc. Prince and pagedjs support all the CSS3 paged media bits I've found myself needing, just wondering if that was on the roadmap.
← PreviousPage 3 of 34Next →