Skip to main content


Showing posts from November, 2019

In Praise of Crappy Code

Not all code needs to be perfect! This is pretty heretical thinking for a software engineer.

The issue is simple: how do you go about developing software for a small fixed budget. Imagine that you have $500 to implement a solution to a problem. If you spend more than that you will never recoup the extra that you spent.

This comes up a lot in systems integration scenarios and also in customization efforts. Someone wants you to 'tweak' an application that they are using; you know that no-one else would want that feature and that if you spend more than what the customer will pay you will end up losing money.

From the customer's perspective, the common 'time and materials' approach to quoting for software development is a nightmare. Being able to offer a fixed price contract for a task is a big benefit for the customer.

But, how much do you quote for? Too much and you scare the customer away. Too little and you lose money. This is where 'crappy code' comes in.