Member-only story
Software Development Doesn’t Need To Be Perfect
Good enough is good enough and perfect wastes time
“No one in the brief history of computing has ever written a piece of perfect software. It’s unlikely that you’ll be the first.” Andy Hunt
No developer has written perfect code or software, but many have wasted time trying to improve some code that did its job well enough.
Don’t get stuck on details that don’t matter, they distract from what is important. Software projects are full of meetings, tasks and reports that sound important but rarely are. Most documents, reports and updates are barely or rarely read, make them good enough and no better.
The software made should do only what's needed and nothing more. Every extra line of code or functionality will drain resources from the development team.
Lego
My wife was making some Lego flowers and for the green leaves they are use pterodactyl wings (see picture — look closely). I can see they are pterodactyl wings because the leaves have little fingers.
It seems odd to have leaves with fingers, but it’s good enough and most people don’t notice.
The book Brick by Brick: How LEGO Rewrote the Rules of Innovation and Conquered the Global Toy Industry details how close Lego to collapse in 2003.
Jorgen Vig Knudstorp is known as the man who rebuilt Lego and turned the company around from 2004. Knudstorp wanted to control costs and understand the pricing of Lego sets.
No one at Lego knew how much each Lego cost to make, the price they charged was a guess (sometimes losing money, although couldn’t be sure). When you need to stop making a loss, you need to control your costs.
One of the key costs in a Lego set was the cost of special pieces. To create these, you had to change the machines, and it was a limited run for one set, so the costs increased with each unique piece. Knudstorp brought in a rule to make Lego sets with more standard pieces and a limit specialised pieces.
When I saw the leaves that were dino wings, it was a classic example of being…