Category Archives: architecture of sorts

I’ve vastly misunderstood the Single Responsibility Principle

So have a lot of other people; my understanding of it accords with much writing I’ve seen about the principle on the web, and elsewhere. For example, in Michael Feathers’ “Working Effectively with Legacy Code”: Every class should have a … Continue reading

Posted in architecture of sorts | Tagged | 7 Comments

On or Between

The new way to model concurrency is with coroutines (1963), i.e. the async/await dance or (building upon) call-with-concurrent-continuation. The new new way is with actors (1973), and the old and busted ways are with threads (1966), and promises (1976). As … Continue reading

Posted in architecture of sorts, code-level, design, performance, software-engineering | Tagged | Leave a comment

On UML

A little context: I got introduced to UML in around 2008, at an employer who had a site licence for Enterprise Architect. I was sent on a training course run by a company that no longer exists called Sun Microsystems: … Continue reading

Posted in agile, architecture of sorts, design, software-engineering, sunw, tool-support | Tagged | 2 Comments

It protects. It also promotes and prevents.

I sometimes get asked to review, or “comment on”, the architecture for an app. Often the app already exists, and the architecture documentation consists of nothing more than the source code and the folder structure. Sometimes the app doesn’t exist, … Continue reading

Posted in architecture of sorts | Leave a comment

Everyone rejecting everyone else

It’s common in our cooler-than-Agile, post-Agile community to say that Agile teams who “didn’t get it” eschewed good existing practices in their rush to adopt new ways of thinking. We don’t need UML, we’re Agile! Working software over comprehensive documentation! … Continue reading

Posted in agile, architecture of sorts, process | Tagged | 1 Comment

On exploding boilers

Throughout our history, it has always been standardisation of components that has enabled creations of greater complexity. This quote, from Simon Wardley’s finding a path, reminded me of the software industry’s relationship with interchangeable parts. Brad Cox, in both Object-Oriented … Continue reading

Posted in architecture of sorts | Tagged | Leave a comment

Sprouts

Having discussed reasons for change with a colleague on my team, we came up with the sprouts of change. Good software is antifragile in the face of changing: Situation People Requirements Organisation Understanding Technology Society Like any good acronym, it’s … Continue reading

Posted in architecture of sorts | Leave a comment

Change

I was just discussing software architecture and next steps with a team building a tool to help analyse MRI images of brains. Most of the questions we asked explored ways to proceed by focussing on change: what if the budget … Continue reading

Posted in architecture of sorts | 2 Comments

Zen and the Art of Software Maintenance

In one part of the book Zen and the Art of Motorcycle Maintenance, which is neither about Zen nor motorcycle maintenance, there are two motorcycles and two riders. John Sutherland is a romanticist who appreciates the external qualities of his … Continue reading

Posted in architecture of sorts, design | Leave a comment

Great Documentation, Great Software

A paraphrased conversation, the other day, between me and a customer of one of my customers: Me: Are you experienced at working with my customer’s developer APIs? Them: I always feel like a newbie, because there’s so much stuff. But … Continue reading

Posted in architecture of sorts, documentation | Leave a comment