
Skönt att någon hjälper mitt gnäll vidare ut i världen.
"Fixen borde inte påverka nåt annat"
Bifogar för säkerhets skull också den engelska versionen för att upplysa våra engelskspråkiga vänner:
I DON'T UNDERSTAND WHAT YOUR PRODUCT DOES AND WHAT YOU ARE TRYING TO SELL!
public void criticalBusinessFunction() {
try {
// do a lot of stuff that definitely
// needs to be exception handled with care
} catch(Throwable t) {
t.printStackTrace();
}
}
En rimlig fråga är kanske 'Ge mig tumreglerna du jiddrar om, mannen?'.
Där kan jag inte ge nåt svar (jag vill ju inte vara killen med silverkulan)...
Det enda jag hoppas är att lite av min luttrade cyniska attityd kan smitta av sig lite lagom på alla entusiastiska oerfarna systemutvecklare out there.
Tänk efter innan ni hakar på the-most-recent-best-thing-since-sliced-bread, så slipper ni göra samma misstag som jag gjorde i min ungdom...
Notera att listan ovan gäller en luttrad utvecklare. En ung, oförstörd dito skulle kanske ha punkt 3 överst och punkt 1 längst ner.
Notera även att listan ovan gör en luttrad cyniker glad även om systemet aldrig kom i drift (ty ett system ej i drift genererar inga problem, se även http://hellrefaraherde.blogspot.com/2007/12/dlig-dag-p-jobbet.html).
Antalet problem som ett system genererar kan, i idealfallet, antas vara en linjär funktion av antalet användare.
Då utesluter man faktorer som att en dubbling av antalet användare kommer locka fram de där prestandaproblemen som ligger och lurar nånstans långt inne i buken på systemet; querysarna som funkar så fint i testmiljön, men som i verkligheten joinar de fetaste tabellerna i en 20 minuters full-table-search-fest.
Disk är billigt, det vet man. Raidade kanske inte lika. Vad man vet dock är att allt jävelskap loggar. Fett med gig med webserver-loggar (till 99,9999999 procent ointressanta, men man måste ju ha dem ifall det är nån som bråkar med systemet).
Backuperna på databasen måste såklart tas. Och sparas nånstans.
Rapporter måste filas på för att gå att köra i rimlig tid när datamängderna växer.
Kort sagt, ditt system blir som en trädgård du anlagt med gräs, fruktträds-yngel och buskar som sen gödslas och växer i en rasande takt så att du efter ett tag inte har tid att lägga ner häcksaxen ens för en kopp kaffe.
Resultatet blir att problemen växer med kvadraten på antalet användare.
Pengar kan antas växa linjärt med antalet kunder/användare på ett system.
See the problem here?
Eftersom man i slutändan (när man står framför Sankte Per?) mäts efter hur mycket pengar produkten drar in så kan man lakoniskt konstatera att om detta mått på framgång används (och vad annat vore rimligt), så gäller följande:
Om produkten blir riktigt framgångsrik så kommer du att sitta med arslet fullt, äta mer Losec än Kicki D äter falukorv och ha ett rätt ryckigt arbetsschema med nattmanglingar remote hemifrån).
Då är det dags att se till att man har ordentligt betalt eller att söka sig till greener pastures...