Skip to content

Tag Archives: emergent design

How to explain backend changes that support undelivered features

My current work environment is in a cost-pressured large national transport enterprise with a familiar internationally-recognised brand name. We have to build a lot of systems that model many real-world, highly-regulated, parameters and states. This data is often used to feed into other systems that feed the voracious information maw of an often severely critical […]

Xcode and its inability to handle simple things like renaming a directory

Why is it so damned hard to rename a directory in Xcode? When you open up Xcode and create a new Project, it creates a virtual directory – a “Group” into which your application source files go. If you look at the project with Finder or through the shell you’ll find a directory of the […]

High-performance system design by declarative specification

“I want to get from London to New York in 12 minutes.” “Ok, we will have to design and build some sort of ICBM or buy one, that will cost a lot of money. Also, I’m not even sure you can get an ICBM that’s fast enough for that distance. And have we thought about […]

The Frustrated Architect

An interesting set of slides by Simon Brown from a talk he gave about the role of the architect. A PDF is attached to the linked post or you can view the slides online. Wish I had heard the talk (see below). The Frustrated Architect: Software architecture plays a pivotal role in the delivery of […]

REST-based architectural style, a big winner

Recently been deeply stuck in building software (apart from starting my PhD part-time). A long time ago I wrote about dynamically loading Spring contexts and component discovery – this system I’ve been building is an evolution of that one. We decided to adopt an most REST-based style to integrate between our components. Now, “run-time” discovery […]

Throw it away and write another one

Most developers familiar with agile methods are familiar with the idea of the spike. A spike is a time-boxed task that concentrates on clarifying the unknowns in your project. Usually these are technological (“can this be done with this technology?”) but they are also sometimes in the area of the business domain (“is this a […]

Systems versus Individuals and technical debt

I kind of disagree with this picture by Josh Susser regarding the “circle of death” in terms of code quality and late night effort. It is right enough as far as it goes but it doesn’t go far enough. First up, the easy way out – take a day off, go for a walk in […]

Just Say No (to broken processes)

Broken development processes lead to broken code. When you find badly formed code, and especially if you didn’t  write it just then in order to make the test pass just a minute ago, and super-especially is the code is already in production, you not only need to rectify the code, you need to rectify the […]

I’m not making this mess anymore!

XP: After 10 years why are we still talking about it? By Robert C. Martin. Uncle Bob argues passionately, and correctly, for the principles of software craftsmanship. Link:

Code re-writes and U.S. health care reform

This post is not about health-care, per se. This is about “re-writes” or “total reforms” of systems. An argument Atul Gawande makes in New Yorker magazine about health-care reform: [Certain reformists say] The country has this one chance, the idealist maintains, to sweep away our inhumane, wasteful patchwork system and replace it with something new […]