OOP the Easy Way
Object-Oriented Programming the Easy Way: a manifesto for reclaiming OOP from three decades of confusion and needless complexity.APPropriate Behaviour
APPosite Concerns
FSF
Category Archives: software-engineering
The Logical Fallacy
Nary a week goes by without seeing a post by a programmer, for programmers, on the subject of logical fallacies in arguments. This week’s, courtesy of hacker news, is not egregious, enlightening, or indeed different in any way from the … Continue reading
Posted in brute-force, software-engineering
3 Comments
Why 80?
80 characters per line is a standard worth sticking to, even today. OK, why? Well, back up. Let’s examine the axioms. Is 80 characters per line a standard? Not really, it’s a convention. IBM cards (which weren’t just made by … Continue reading
The ABC of Software Engineering Research
About this paper The ABC of Software Engineering Research by Klaas-Jan Stol and Brian Fitzgerald, published October 2018. See link for full citation. Notes There are too many ways in which terms describing research methods in software engineering get used, … Continue reading
More speed, lower velocity
I frequently meet software teams who describe themselves as “high velocity”, they even have graphs coming from Jira to prove it, and yet their ability to ship great software, to delight their customers, or even to attract their customers, doesn’t … Continue reading
Posted in Business, performance, process, software-engineering
4 Comments
Coming to terms with fewer terms
I was on a “Leadership in Architecture” panel organised by RP International recently, and was asked about problems we face using new techniques like Microservices, serverless and machine learning in the financial technology sector. The biggest blocker I see is … Continue reading
Posted in software-engineering
Leave a comment
What’s better than semver?
Many software libraries are released with version “numbers” that follow a scheme called Semantic Versioning. A semantic version is three numbers separated by dots, of the form x.y.z, where: if x is zero, all bets are off. Otherwise; z increments … Continue reading
Posted in software-engineering
4 Comments
To become a beginner, first become an expert
We have a whole load of practices in programming that only really work well if you’re already good at whatever the process is supposed to help with. Scrum is a process improvement framework, but only if you already know how … Continue reading
Posted in advancement of the self, software-engineering, TDD, tool-support
2 Comments
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
The Atoms of Programming
In the world of physics, there are many different models that can be used, though typically each of them has different applicability to different contexts. At the small scale, quantum physics is a very useful model, Newtonian physics will yield … Continue reading
In which new developer tools are dull
Over on lobste.rs I said that I don’t hold out much hope for another “blue plane” style event in developer tools. In one of Alan Kay’s presentations, he referred to the ordinary way of things as the pink plane, and … Continue reading
Posted in software-engineering, tool-support
Leave a comment