Krav för bra IT-system är bättre, snabbare och enklare användning. Utvecklingsprojekt för IT-system kräver bra utvecklare. Utvecklarens kvalitetstänk är avgörande för IT-systemets kravuppfyllnad och resultat.
Oavsett programmeringsspråk och verktyg finns det en generell diskussion om vad utvecklare anser vara kvalitet och ”bra kod”.
Utvecklaren Linus Engback och jag hade ett samtal:
”Vad är ”bra kod” för dig?”
Bra kod för mig är kod jag kan vara stolt över. Koden måste inte vara så brutalsimpel att man vid första anblick förstår vad den gör, men man ska när man satt sig in i den förstå att ”aaaaah, det här är det perfekta sättet att göra det på”. Konsekvent kod, kod som inte blandar bort sig i olika pattern. Pragmatisk kod som gör det den ska.
”Min åsikt att dagens utvecklare bara klipper och klistrar kod från nätet. Är det sant?”
Nej, det är inte alldeles sant. Men det finns helt klart en strömning där webbutveckling väldigt mycket går ut på att hitta rätt ramverk, klistra ihop verktygen med varann och sen hoppas man att resultatet bara trillar ut om man har valt rätt. Själv är jag lite kluven – å ena sidan tror jag att det verkliga hantverket, att faktiskt veta hur saker fungerar är värdefullt. Å andra sidan vet jag att jag ofta gör onödigt dubbeljobb där någon annan redan har gjort jobbet bättre än mig. Allt kokar kanske ner till kontroll, eller känslan av kontroll.
”Vilka misstag är vanligast bland utvecklare?”
Spontant vill jag säga små onödiga misstag. Men sen tänker jag en gång till och tänker att det vanligaste misstaget kanske är att inte lyfta blicken ordentligt. Att lappa koden precis där felet visar sig, istället för att höja blicken och tänka ”Varför blev det fel? Vad är rot-orsaken?”. …och sen tänker jag efter en gång till och tänker att det största misstaget kanske är att inte höja blicken ännu lite mer och se koden i ett sammanhang av användare. Se vad koden faktiskt ska användas till. Ifrågasätta om det här överhuvud taget är den koden som borde skrivas.
”Vilken checklista ska man följa för att lyckas med bra kod?”
- Försök inte gena. Inte på ett dåligt sätt i vart fall. Om du laddar ner något från nätet, anta inte att det är felfritt eller ens bättre än det du kan skriva själv. Inte om du inte har goda skäl att tro det.
- Testdriven utveckling är bra för då blir det automatiskt rätt? Nej, du måste fortfarande tänka i varje steg. Om inte annat behöver du tänka när du gör dina testfall. Du behöver ha den extra tanken i huvudet som tittar på vad du gör och säger till dig när du inte tänkte rätt.
- Papper och penna. Kladda ner kod design. Kladda ner algoritmer. Kladda ner design-design. Skit i form och stil, bara du behöver förstå. Kanske behöver inte ens du förstå, det viktiga är antagligen processen. Att du får konfronteras lite med uppgiften innan du börjar skriva.
Tack Linus ( https://se.linkedin.com/in/linusengback )
Mer läsning
Effektiv metod ger framgång i IT-projekt och får verksamheten att älska IT igen.