-

Chiron Codex: helping software engineers become centaurs. 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
Support This Site
If you like what I do please support me on Ko-fi
FSF

Author Archives: Graham
I published a new book!
Executive summary: it’s called APPropriate Behaviour, head over to the LeanPub site to check it out. For quite a while, I’ve noticed that posts here are moving away from nuts and bolts code towards questions about evaluating my own performance, … Continue reading
Posted in advancement of the self, books, Business, code-level, Responsibility, software-engineering
Comments Off on I published a new book!
Surprising ARC performance characteristics
The project I’m working on at the moment has quite tight performance constraints. It needs to start up quickly, do its work at a particular rate and, being an iOS app, there’s a hard limit on how much RAM can … Continue reading
Posted in code-level, performance, software-engineering
Comments Off on Surprising ARC performance characteristics
Sideloading content into iOS apps
All non-trivial apps visualise content in some form, whether it’s game levels embedded in the app, data loaded from some internet service, or something else. In many cases the developer who’s writing the Objective-C code isn’t going to be the … Continue reading
Posted in iPad, iPhone, tool-support
Comments Off on Sideloading content into iOS apps
Object-Oriented callback design
One of the early promises of object-oriented programming, encapsulated in the design of the Smalltalk APIs, was a reduction – or really an encapsulation – of the complexity of code. Many programmers believe that the more complex a method or … Continue reading
Posted in code-level, OOP, software-engineering
Comments Off on Object-Oriented callback design
How to excel at IDE design
When people have the “which IDE is best” argument, what they’re actually discussing is “which slightly souped-up monospace text editor with a build button do you like using”. Eclipse, Xcode, IntelliJ, Visual Studio…all of these tools riff on the same … Continue reading
Posted in Uncategorized
Comments Off on How to excel at IDE design
An apology to readers of Test-Driven iOS Development
I made a mistake. Not a typo or a bug in some pasted code (actually I’ve made some of those, too). I perpetuated what seems (now, since I analyse it) to be a big myth in software engineering. I uncritically … Continue reading
Posted in books, Responsibility, software-engineering, TDiOSD
Comments Off on An apology to readers of Test-Driven iOS Development
It’s not @jnozzi’s fault!
My last post was about how we don’t use evidence-based techniques in software engineering. If we don’t rely on previous results to guide us, what do we use? The answer is that the industry is guided by anecdote. Plenty of … Continue reading
Posted in books
Comments Off on It’s not @jnozzi’s fault!
Does that thing you like doing actually work?
Genuine question. I’ve written before about Test-Driven Development, and I’m sure some of you practice it: can you show evidence that it’s better than (or, for that matter, evidence that it’s worse than) some other practice? Statistically significant evidence? How … Continue reading
Posted in advancement of the self, documentation, software-engineering
Comments Off on Does that thing you like doing actually work?
I made a web!
That is, I made a C program using the literate programming tool, CWEB. The product it outputs is, almost by definition, self-documenting, so find out about the algorithm and how I built it by reading the PDF. This post is … Continue reading
Posted in code-level, documentation, tool-support
Comments Off on I made a web!
A brief history of talking on the interwebs (or: why I’m not on app.net)
When I first went to university, I was part of an Actual September, though it took place in October. Going from a dial-up internet service shared with the telephone line to the latest iteration of SuperJANET with its multi-megabit connection … Continue reading
Posted in Twitter, user-error
2 Comments