Fit Software in Your Head

Frederik Krautwald
9 min readApr 7, 2017

This article is a write-up on Dan North’s talk Software That Fits In Your Head at GOTO Amsterdam 2016.

Abstract

Software gets complicated fast. Most of the good architecture and design practice is about trying to slow the rate at which software gets complicated. You can’t stop it, it’s a form of entropy. You can only slow it down and do your level best to stay on top

The Goal of Software Development

The goal of software development is minimizing lead time to business impact. It turns out that minimizing lead time to business impact isn’t that hard. What is hard is to sustainably minimize lead time to business impact, which is the goal of what we call software development.

The Goal Is Not to Produce Software

We call ourselves software engineers. That’s like a plumber calling himself a piping engineer. The purpose of plumbing isn’t pipes. The purpose of plumbing is heating and water. The purpose of what we do is information. We used to call it information technology, i.e., applying technology to information, but that wasn’t cool enough, so now we are software engineers, and some of us are software craftsmen, which is kind of cute. However, the software is not the point — the business impact is the point. We don’t want to make more software, we want to make a business impact. We want to make a business impact quickly. Quickly suggests less software.

--

--