"There is a colossal opportunity for companies to break this logjam and organize around customer satisfaction instead of around software, around personas instead of around technology, around profit instead of around programmers."

From the Foreword of Alan Cooper — The Inmates Are Running the Asylum.

I can’t believe this book is not a required reading in all Computer Science and Business Administration curricula.


Livingston: What is the key to excellence for an engineer?

Wozniak: You have to be very diligent. You have to check every little detail. You have to be so careful that you haven’t left something out. You have to think harder and deeper than you normally would. It’s hard with today’s large, huge programs.

I was partly hardware and partly software, but, I’ll tell you, I wrote an awful lot of software by hand (I still have the copies that are handwritten) and all of that went into the Apple II. Every byte that went into the Apple II, it had so many different mathematical routines, graphics routines, computer languages, emulators of other machines, ways to slip your code in and out of an emulation mode. It had all these kinds of things and not one bug ever found. Not one bug in the hardware, not one bug in the software. And you just can’t find a product like that nowadays. But, you see, I had it so intense in my head, and the reason for that was largely because it was part of me. Everything in there had to be so important to me. This computer was me. And everything had to be as perfect as could be made. And I had a lot going against me because I didn’t have a computer to compile my code, my software.


Steve Wozniak - Founders at Work


Everything takes a long time in this project, and i’m not entirely sure why. Even something simple like allowing the user to plant a bug on a cctv camera has turned out to be a massive job, with interface redesigns and heavy rethinking on how the player interacts with the world. I’m overthinking everything, always looking ahead to situations that won’t become problems for months, trying to design and implement everything correctly first time. This is usually a bad idea. Iterative improvement and replacement often gets you to a better solution faster than aiming for the perfect solution first time. And even if you write a system and then totally replace it, you still learn a huge amount - writing a system wrongly is often the best way to learn how to do it right.

Subversion is a game Introversion Software started to develop in 2006 and has then exploded into a massive and highly experimental project, with innovative technologies.