Author Archives: Graham

About Graham

I make it faster and easier for you to create high-quality code.

The laser physics of software

I’ve worked in a few different places where there have been high-powered lasers, the sort that would make short work of slicing through Sean Connery in a Bond movie. With high-powered lasers comes mandatory laser safety training. At least, it … Continue reading

Posted in whatevs | Leave a comment

Full-stack

That moment where you’re looking back through your notes to see that you’ve: modelled charge carrier behaviour in semiconductors built a processor from discrete logic components patched kernels patched operating system tools written filesystems written device drivers contributed to a … Continue reading

Posted in whatevs | Comments Off on Full-stack

More Excel-lent Adventures

I previously wrote about Excel as the most successful IDE: Now what makes a spreadsheet better as a development environment is difficult to say; I’m unaware of anyone having researched it. That research is indeed extant, and the story is … Continue reading

Posted in code-level, tool-support | Leave a comment

What it takes to “win” a discussion

You may have been to some kind of debate club at school, or at least had a debate in a class. If so, the debate you had was probably a competitive debate, and went something along these lines (causality is … Continue reading

Posted in learning | Leave a comment

APPosite Concerns

I’ve started another book project: APPosite Concerns is in the same series as, and is somehow a sequel to, APPropriate Behaviour. So now I just have one question to ask. What is going to be in the book? This question … Continue reading

Posted in books | Leave a comment

Apple’s Watch and Jony’s Compelling Beginning

There are a whole lot of constraints that go into designing something. Here are the few I could think of in a couple of minutes: what people already understand about their interactions with things what people will discover about their … Continue reading

Posted in UI | Leave a comment

Sitting on the Sidelines

Thank you, James Hague, for your article You Can’t Sit on the Sidelines and Become a Philosopher. I got a lot out of reading it, because I identified myself in it. Specifically in this paragraph: There’s another option, too: you … Continue reading

Posted in advancement of the self, philosophy after a fashion | Leave a comment

Why is programming so hard?

I have been reflecting recently on what it was like to learn to program. The problem is, I don’t clearly remember: I do remember that there was a time when I was no good at it. When I could type … Continue reading

Posted in edjercashun | 1 Comment

Programming, maths and the other things

Sarah Mei argues that programming is not math, arguing instead that programming is language. I don’t think it’s hard to see the truth in the first part, though due to geopolitical influences on my personality I’d make the incrementally longer … Continue reading

Posted in philosophy after a fashion | Leave a comment

Intellectual property and software: the nuclear option

There are many problems that arise from thinking about the ownership of software and its design. Organisations like the Free Software Foundation and Open Source Initiative take advantage of the protections of copyright of source code – presumed to be … Continue reading

Posted in economics, IANAL | Leave a comment