Fail At Once
This message will be repeated in english further down.
Hur får man rättningar och funktionalitet så fort som möjligt genom dörren?
Hur får man så få buggar som möjligt i produktion?
Jag fick en gång kommentaren från en vän “Men du levererar väl aldrig otestad kod?”. Det var en komplimang och en kommentar till att jag just då satt i ett projekt som skulle leverera den högsta kvaliteten jag levererat hittills, dessutom rakt ut i fabrik
Mitt svar förvånade honom “Jag testar inte.” Jag lät honom hämta andan. “Rättning: jag testar så lite som möjligt och mycket kod går rakt ut i produktion otestad.”
Sedan följde en förklaring. En förklaring jag har dragit för alla i projektet:
“Använd kompilatorn för att fånga fel.”
Vanligtvis när man talar om system med hög kvalitet pratar man om testning. Massor med manuella tester med speciella konsulter man hyr in som är specialiserade på test. Dyrt. Men det blir dyrt med hög kvalitet.
Bullshit.
Manuella tester är dyrt och tar lång tid.
Modernare utveckling innehåller enhetstester.
Jag förespråkar Fail At Once för att slippa många enhetstester och manuella dito.
Det är viktigt att fånga fel så fort som möjligt. De allra bästa är att inte skriva dem alls.
Där är jag inte ännu.
How do you ship patches and functionality as fast as possible?
How do you get as few bugs as possible in production?
I once got a comment from a friend “But you never deliver untested code?” It was meant as a compliment and comment to my job then; I was working in a project that was delivering the highest quality I have ever delivered; right onto factory floor.
My answer surprised him “I don’t test.” I let him catch his breath. “Correction: I test as little as possible and as much code as possible goes into production untested.”
I had to explain, the same explanation everyone in the project had heard.
“Use the compiler to catch errors.”
Normally when one talks about high quality system one also mentions testing. Lots of manual tests with consultants specialised on testing. Expensive. But high quality is expensive.
Bullshit.
Manual tests are expensive and take lots of time.
The more modern unit testing is cheaper.
I recommend Fail At Once to get rid of many unit tests and manual ditto.
It is important to catch errors as fast as possible. The best is to not write them at all.
I am not there yet.
Tags: fail-at-once, solid code