Category Archives: software-engineering

When all you have is a NailFactory…

…every problem looks like it can be solved by configuring a different nail. We have an obsession with tools in the software industry. We’ve built tools for building software, tools for testing software, tools for recording how the software is … Continue reading

Posted in advancement of the self, software-engineering | Comments Off on When all you have is a NailFactory…

Does the history of making software exist?

A bit of a repeated theme in the construction of APPropriate Behaviour has been that I’ve tried to position certain terms or concepts in their historical context, and found it difficult, or impossible to do so with sufficient rigour. There’s … Continue reading

Posted in advancement of the self, books, OOP, social-science, software-engineering | Comments Off on Does the history of making software exist?

An observation designed to aid the reading of books on software

Wherever a book on writing software describes the 1968 NATO conference in Garmisch on Software Engineering, consider whether the clarity of the argument can be improved by adding the following parenthetical clause: […], a straw man version of an otherwise … Continue reading

Posted in books, software-engineering | Comments Off on An observation designed to aid the reading of books on software

Retiring the “Apple developers are insular” meme

There’s an old trope used in discussions of Mac and iOS developers, that says they’re too inward-looking. They only think about software in ways that have been “blessed” by Apple, their platform vendor. I’m pretty sure that I’ve used this … Continue reading

Posted in advancement of the self, code-level, Responsibility, software-engineering | Comments Off on Retiring the “Apple developers are insular” meme

Server-side Objective-C

Recently, Kevin Lawler posted an “Informal Technical Note” saying that Apple could clean up on licence sales if only they’d support web backend development. There are only two problems with this argument: it’s flawed, and the precondition probably won’t be … Continue reading

Posted in code-level, OOP, server, software-engineering, WebObjects | Comments Off on Server-side Objective-C

Can code be “readable”?

Did Isaac Asimov write good stories? Different people will answer that question in different ways. People who don’t read English and don’t have access to a translation will probably be unable to answer. People who don’t like science fiction on … Continue reading

Posted in code-level, software-engineering | Comments Off on Can code be “readable”?

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

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

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