HNHacker News
TopNewBestAskShowJobs

jgrahamc

94,298 karma · joined July 2, 2007

https://jgc.org/
submissionscomments
jgrahamc··on Ask HN: What old developer tool do you still miss?
I am an older, low-level developer!
jgrahamc··on The Forgotten Art of the LAN Party (2023)
Me and some other friends used laptops (think they were IBM ThinkPads), PCMCIA Ethernet adapters (maybe from Xircom?) and thin Ethernet (coax) to play multiplayer DOOM on a Reno Air or AA flight from San Jose to Austin once. I think we were using IPX for networking and we just strung coax between the seats.

Needless to say this was before 9/11 and the flight attendants took it in their stride.

jgrahamc··on Ask HN: What old developer tool do you still miss?
SoftICE
jgrahamc··on Flipper One Tech Specs
I have a Flipper Zero and I've used it... occasionally. Like that one time controlling the Taylor Swift Eras tour wristbands: https://blog.jgc.org/2024/05/controlling-taylor-swift-eras-t... but it's mostly sat around being an odd device.

I duplicated a couple of RFID things, used the IR for some stuff, and once in a while used the radio receiver, but mostly it looks pretty.

I'm not sure what I'd do with a Flipper One, but I guess I've done a lot of things with Raspberry Pis so... maybe?

jgrahamc··on The Aperiodic Table
I had not thought about it that way and to be clear some of the parameters (such as the sizes you mention and also the row numbers in ELEMENTS) were found by a bit of experimentation. With the fundamental algorithm in place there was a bit of iteration to get something that looks good on screen (almost all the time).

The other thing was the title. The code originally could have had two letters (e.g. P and E in APERIODIC) joined at a vertex and it looked odd (it looked like the word was broken) so there's specific code to make sure that doesn't happen.

jgrahamc··on Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised
On that machine there's Claude's authentication for my account so I can run Claude on it, a public key so I can SSH to the box, and a private key for GitHub access.
jgrahamc··on Mini Shai-Hulud Strikes Again: 314 npm Packages Compromised
And this is partly why my development machine is a Raspberry Pi that I can image any time by removing the SD card: https://blog.jgc.org/2026/04/raspberry-pi-as-isolated-ai-cod...
jgrahamc··on Peter Neumann has died
I loved reading RISKS and looks like back in 1991 (35 years ago! Eek!) I was worried about trojan horses on Netware 286: https://catless.ncl.ac.uk/risks/11/65#subj3

RIP

jgrahamc··on The Aperiodic Table
The code includes an ELEMENTS array with the layout of elements on the standard periodic table with H at the (1, 1) position. The tiles are laid out on the page and the code attempts to place the elements as close to the "standard" position (rectilinear) by calculating the Euclidean distance from the centroid of rhombi to the centre of the square that would be drawn for the element in the standard table.

So you've got 118 elements with ideal locations and a whole bunch of rhombi with known locations. The Euclidean distance (without bothering with the sqrt) is used as the "cost" function for the Hungarian algorithm (https://en.wikipedia.org/wiki/Hungarian_algorithm): the idea is to minimize the cost (distance from ideal) for each element.

You will sometimes see some gaps in the periodic table as this layout isn't "perfect" (in the sense of without isolated rhombi inside the table) and I did work on having a post-layout pass where these islands were identified and filled by moving adjacent rhombus assignments, but I wasn't happy with how this tended to break the layout of the periodic table (I was going for some visual "looks similar to the classic U shaped periodic table) and so decided to accept them.

jgrahamc··on The Aperiodic Table
Do it! Make an aperiodic table jigsaw with tiles that are elements and a lot of blanks!
jgrahamc··on The Aperiodic Table
Without Claude I wouldn't have made this because I wouldn't have wanted to spend the time. Claude allowed me to try something out and I spent time with Claude experimenting with different ideas (for example, at one point I had it tile the entire plane with periodic tables but the effect wasn't as good as the single periodic table I ended up using).

In a very short period of time I got to try many different ideas and create the final site. The ideas were all mine, the implementation was Claude's. I view this as wonderful: I had an idea and was able to iterate an implementation very rapidly. I can't turn my back on a tool that helps me create more.

PS If it's any consolation, my blog posts are all hand written. I don't use AI for any of the prose; I do use a spell checker.

jgrahamc··on The Aperiodic Table
The code attempts to retain the "shape" and "layout" of the periodic table.
jgrahamc··on Mythical Man Month
I am building a better interface for managing KNX systems than the ETS6 software. Code is here: https://github.com/jgrahamc/koolenex

1. I would not have attempted this without AI assistance because it's a big project.

2. I have built a functional program that I am able to use for real work in a handful of weeks, working part time on this (like literally a few hours per day prompting Claude and Kimi).

3. Had I decided to do this without AI assistance it would have been months of work.

jgrahamc··on Tell HN: An app is silently installing itself on my iPhone every day
Same here. I had installed Headspace long ago and deleted it. It's now reappearing if I delete it.
jgrahamc··on Ask HN: Who is your favourite Entrepreneur/Visionary?
I just don't idolize individuals.
jgrahamc··on PicoZ80 – Drop-In Z80 Replacement
Oh wow. Enhancements for the Sharp MZ line! Wonderful. I spent a lot of time with those machines in the 1980s and own a few. Being able to emulate the Sharp MZ-80K's (https://blog.jgc.org/2009/08/in-which-i-switch-on-30-year-ol...) MZ80FD would be cool.
jgrahamc··on Cloudflare targets 2029 for full post-quantum security
Cloudflare has long been doing work on PQ (sometimes in conjunction with Google) and rolled out PQ encryption for our customers. You can read about where this all started for us 7 years back: https://blog.cloudflare.com/towards-post-quantum-cryptograph... and four years ago rolled out PQ encryption for all customers: https://blog.cloudflare.com/post-quantum-for-all/

The big change here is that we're going to roll out PQ authentication as well.

One important decision was to make this "included at no extra cost" with every plan. The last thing the Internet needs is blood-sucking parasites charging extra for this.

jgrahamc··on Claude Code Down
Here in my corner of Europe it seems to be working fine.
jgrahamc··on Issue: Claude Code is unusable for complex engineering tasks with Feb updates
What I've noticed is that whenever Claude says something like "the simplest fix is..." it's usually suggesting some horrible hack. And whenever I see that I go straight to the code it wants to write and challenge it.
jgrahamc··on Artemis II crew take “spectacular” image of Earth
There is no point engaging in any way with people who believe in such "theories". They are like trolls, the only way to deal with them is not at all. Don't engage, don't disagree, just nothing, total silence. One can choose to be a wilful edit and waste your life and time on complete bullshit, but the rest of us should just ignore those people completely.
jgrahamc··on EmDash – A spiritual successor to WordPress that solves plugin security
I can assure you this is not an April Fools. Cloudflare does not do that. This is a real project.
jgrahamc··on Building a Reader for the Smallest Hard Drive
Why? It seems foolish to have a knee jerk reaction to someone using a tool that got them where they needed to be.
jgrahamc··on Celebrating Tony Hoare's mark on computer science
Now I see it written down I realize how lucky I've been to have spent time at the Programming Research Group at Oxford when Tony Hoare was running it and then to have worked for and founded a company with John Ousterhout. And, yeah, when I worked with him he wasn't a fan of threads.
jgrahamc··on Celebrating Tony Hoare's mark on computer science
Well, of course, a lot had already been done by the time I got there. But what really struck me about CSP was how easy it was to reason about concurrent programs because synchronization and communication were the same thing. In my doctoral thesis I created a provably secure multi-user file systems which went from specification to CSP to occam.
jgrahamc··on Celebrating Tony Hoare's mark on computer science
In the early eighties, for example, he brought to Oxford the creators of two major formal specification languages: Cliff Jones with VDM, Jean-Raymond Abrial with Z. At Oxford, Z actually underwent a systematic rework, reminiscent of the Goethe quip reproduced above, with Frenchmen and mathematicians replaced by English mathematicians (or computer scientists). The new version enjoyed immense success in Britain, won a Queen’s Award and was used not only academically but in many mission-critical applications in industry, leading to a number of startups and work by such researchers (all having gone through Oxford at some point) as Jim Woodcock, Carroll Morgan, Jim Davies, J. Michael Spivey, Ian Hayes and Ib Holm Sørensen.

This was the world I walked into in 1986 as an undergraduate studying Mathematics and Computation. I was quite quickly indoctrinated in the ways of Z notation [1] and CSP [2] and had to learn to program in ML. I still have all the lecture and class notes and they are quite fascinating to look at so many years later. Funny to read the names of celebrated researchers that I just thought of as "the person who teachers subject X". I do recall Carroll Morgan's teaching being very entertaining and interesting. And I interacted quite a bit with Jim Davies, Jim Woodcock and Mike Spivey.

Having decided I wanted to stay and do a DPhil I managed to get through the interview with Tony Hoare (hardest question: "Where else have you applied to study?" answer: "Nowhere, I want to stay here") and that led to my DPhil being all CSP and occam [3]. I seem to remember we had an array of 16(?) transputers [4] that the university had managed to get because of a manufacturing problem (I think the dies were incorrecty placed making the pinouts weird, but someone had made a custom PCB for it).

Imagine my delight when Go came around and I got to see CSP in a new language.

[1] https://en.wikipedia.org/wiki/Z_notation

[2] https://en.wikipedia.org/wiki/Communicating_sequential_proce...

[3] https://en.wikipedia.org/wiki/Occam_(programming_language)

[4] https://en.wikipedia.org/wiki/Transputer

jgrahamc··on Tony Hoare has died
Well, I do have a rather special last name which makes me susceptible.
jgrahamc··on Tony Hoare has died
Imagine being a world-famous computer scientist and dying and one of the top threads in a discussion of your life is juvenile crap about how your name sounds like "whore".
jgrahamc··on Tony Hoare has died
He was the professor in the Programming Research Group (known universally as the PRG) at Oxford when I was doing my DPhil and interviewed me for the DPhil. I spent quite a bit of time with him and, of course, spent a lot of time doing stuff with CSP including my entire DPhil.

Sad to think that the TonyHoare process has reached STOP.

RIP.

jgrahamc··on The Brand Age
Ah, so these products are useful to me after all!
jgrahamc··on The Brand Age
"Because at Patek he'd encounter the most extreme brand age phenomenon: artificial scarcity. You can't just buy a Nautilus. You have to spend years proving your loyalty first by buying your way through multiple tiers of other models, and then spend years on a waiting list."

Strange game, the only winning move is not to play.

I've heard other brands do this (Ferrari?) and, of course, there are lines outside "luxury" brands like Louis Vuitton. Why bother?

PS I'll stick to my Casios: https://blog.jgc.org/2025/06/the-discreet-charm-of-infrastru...

← PreviousPage 2 of 34Next →