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
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?
What’s a software architect?
After a discussion on the twitters with Kellabyte and Iris Classon about software architects, I thought I’d summarise my position. Feel welcome to disagree. What does a software architect do? A software architect is there to identify risks that affect … Continue reading
Posted in Responsibility, software-engineering
2 Comments
Inheritance is old and busted
Back when I started reading about Object-Oriented Programming (which was when Java was new, I was using Delphi and maybe the ArcGIS scripting language, which also had OO features) the entire hotness was inheritance. Class hierarchies as complicated as biological … Continue reading
Posted in code-level, OOP, software-engineering
Comments Off on Inheritance is old and busted
On Null Objects
I’ve said before, NSNull is an anti-pattern. It’s nice that we have the nil object, which allows us to have a stand-in for any object that doesn’t do anything. Unfortunately, it’s not a universal stand-in. You can’t add nil to … Continue reading
Posted in code-level, OOP, software-engineering
3 Comments
Illuminative-C
In addition to being a mildly accomplished software engineer, I’ve done some studying and armchair research in the field of ancient languages and palaeography. What happens if we smoosh those fields together? In a very slight way, art historian and … Continue reading
Posted in advancement of the self, books, code-level, documentation, PCAS, software-engineering, UI
Comments Off on Illuminative-C
On community
This is a post that had been boiling for a while; I talked a little about the topic when I was in Appsterdam earlier this year, and had a few more thoughts which were completely supplanted and rearranged by watching
Posted in AAPL, advancement of the self, books, Business, iDeveloper.TV, iPhone, Mac, NSConf, OOP, Responsibility, software-engineering, Talk, WebObjects
Comments Off on On community
Sound bites considered harmful
Knuth said: premature optimization is the root of all evil. Only, what he actually said was: There is no doubt that the grail of efficiency leads to abuse. Programmers waste enormous amounts of time thinking about, or worrying about, the … Continue reading
Posted in software-engineering
1 Comment
Coding. Standards.
I just realised that this month marks the 10th anniversary of my first payment for writing software (on, of all the weird things to be writing software on in 2002, a NeXTstation)! What have I learned from those ten years? … Continue reading
Posted in advancement of the self, Business, code-level, OOP, software-engineering
2 Comments
Class clusters, placeholder objects, value-oriented programming, and all that good stuff.
Have you ever seen this exception in your crash log? 2012-05-29 17:55:37.240 Untitled 2[5084:707] *** Terminating app due to uncaught exception ‘NSInvalidArgumentException’, reason: ‘*** -length only defined for abstract class. Define -[NSPlaceholderString length]!’ What’s that NSPlaceholderString class? Leaving aside NSMutableString … Continue reading
Posted in code-level, Foundation, software-engineering
Comments Off on Class clusters, placeholder objects, value-oriented programming, and all that good stuff.
Is privacy a security feature?
I’ve spoken a lot about privacy recently: mainly because it’s an important problem. Important enough to hit the headlines; important enough for trade associations and independent developers alike to make a priority. Whether it’s talks at conferences, or guiding people … Continue reading
Posted in Privacy, software-engineering
Leave a comment