Monthly Archives: December 2017


I spent the weekend teaching myself some Amiga GUI (Intuition) programming using AROS via the Icaros Desktop distribution, their developer guides, and the Amiga developer CD. It’s a nice enough system to program in that works like most other GUI … Continue reading

Posted in Amiga, techradar | Leave a comment

Computing’s fundamental Principle of No Learning

I haven’t used Taligent’s frameworks or operating systems directly; what I know of it comes from their documentation and the book Inside Taligent Technology. I put some small effort into finding out whether it’s possible to use the Taligent system … Continue reading

Posted in C++, techradar | Leave a comment

Reasoning about reasoning about software

Functional programmers like to claim that you can’t reason about mutable state programs. Some thoughts: the first half of the book A Discipline of Programming by Edsger W. Dijkstra tells you how to do it. That half of the book … Continue reading

Posted in code-level, software-engineering | Leave a comment

All the things

It’s been a long time since I had a side project, or one that didn’t get abandoned very early on. I tend to get sidetracked by other thoughts about computing, or think “while I’m doing this, I’m leaving that unsolved” … Continue reading

Posted in advancement of the self, documentation, learning, techradar | Leave a comment

Against our values as a company

I’m going to pick on Patreon, not because they’re special, but because they’re typical. Here is a quote from a blog post in which they Back-pedalled a change to their pricing structure: We overstepped our bounds and injected ourselves into … Continue reading

Posted in Uncategorized | Leave a comment

Falsehoods programmers believe about programming

There is no ethical impact of my job; I build technological systems and it’s up to others how they use them. Software is a purely technical discipline. There is some innate affinity for computer programming which you must be born … Continue reading

Posted in code-level | 14 Comments

Don’t like a new way of working? Just point out the absurdity of suggesting that the old way was broken: Somehow, the microservices folks have failed to notice all that software that was in fact delivered as monoliths. What the … Continue reading

Posted on by Graham | Leave a comment

An unhelpful distinction

Object-Oriented Programming is quite simple: it’s just choosing what function to run based on the parameters to the function (whether through method sending like Smalltalk, polymorphic lookup like CLOS, or table searching like C++: usually pattern-matching like Haskell would be … Continue reading

Posted in OOP | Leave a comment