People vs Products

I’ve experienced an interesting arc over my twenty or so years (thus far) of software development. I started out as a one-person shop, doing my own things, selling shareware. I had no manager nor technical lead. I had to make all my own decisions, in all aspects, without guidance or assistance. Subsequently, during my four … Read more


I went to see Lawrence Lessig give a talk this evening, at the Computer History Museum, on the topic of copyright. It’s an issue which concerns me, as should it to anyone of my generation, given the ridiculous state of it today. I’ve never heard Lessig speak before, nor read any of his books, but … Read more

The Sims 3

It strikes me as odd that games like The Sims or Space Colony always have you forcing your little simulated personalities to train in different things. It’s the generic level-up scheme adopted by computer games since the year dot. And it’s really boring. And unrealistic. In reality, I don’t decide “hey, I’m going to learn … Read more

Coding for stability

You know, it always kills me, the Linux vs MINIX debate, Linus vs Tanenbaum. Everyone loves Tanenbaum’s ideals, but can’t refute Linus’ pudding – the orders of magnitude faster Linux is than MINIX. You’d think that with the focus these days more on coding for reliability, simplicity, elegance and maintainability – all at the expense … Read more


A while ago, when I first released Rotated Windows, I used sitx or somesuch as the archive format. Someone complained – of course – so as a bit of a sarcastic riposte I also put up archives in every other format I could – zip, bz2, gzip, sit, arj, rar, etc. It was a laugh, … Read more

Purposefully mangling arrays of structs

It’s a pretty common scenario to have an array of some structs, where you frequently iterate through the array using only one field in the struct. This is a cache nightmare – memory is loaded into cache sequentially by prefetching, meaning you’re wasting all that bandwidth loading all the other fields of the struct that … Read more