Skrivnost učinkovitosti je kakovostna koda in ne učinkovit menedžer

Eden najbolj idiotskih poklicev so menedžerji, ki vodijo programerje. Ne vsi, ampak tisti, ki sami niso bili programerji. Tisti, ki mislijo, da je možno »povečati« učinkovitost (ali povečati »učinkovitost«?) z metodami iz knjig. Ne da bi se sploh potrudil brati te iste knjige, je video ciganski.

Tisti, ki nikoli niso pisali kode. Tisti, za katere se snemajo hollywoodski filmi o programerjih – no, tisti, kjer elektronsko pošto gledajo z ukazno vrstico. Tisti, ki jih ne zanima nič drugega kot kazalniki, roki in lastna plača.

Tisti, ki so večina.

Vendar so idioti iz drugega razloga. Želijo učinkovitost ali vsaj uspešnost (daj no, manager, Google, kakšna je razlika), ne da bi razumeli ne eno ne drugo. Brez splošnega razumevanja bistva, procesa pridobivanja rezultata, izgub, ki nastanejo pri tem procesu, stroškov razvoja. Skratka, delo s programerjem kot s črno skrinjico.

Na vodstvo programerjev so naleteli iz točno enega razloga: tam je hype, denar, trg in kup istih idiotov. Obstaja kraj, kjer se lahko izgubiš.

Če bi bil hype v proizvodnji mehanskih sklopov, bi tekli tja. Karavani so zanič. Ne bi me presenetilo, da je fant, ki decembra prodaja božična drevesca v naši soseski, IT-vodja na dopustu.

Skratka, če je možno, ustreli te tipe v vrat. Ne skrbi, delo bodo našli. Nihče od njih ne bo naredil nič spodobnega, dokler sam ne postane programer. Ker ne razume bistva, mehanizma, logike procesa, ki ga obvladuje.

Ok, dovolj o menedžerjih. Zdaj pa k bistvu, za programerje. Kako povečati učinkovitost razvoja z učenjem pisanja visokokakovostne kode.

Če želite povečati učinkovitost, morate probleme reševati hitreje, ne da bi pri tem izgubili kakovost. Za hitrejše reševanje težav morate biti sposobni takoj napisati visokokakovostno kodo. In "visokokakovostno", "napiši" in "takoj". Naj pojasnim z metaforo.

Pisanje visokokakovostne kode je kot pravilno govorjenje tujega jezika. Ko ne poznate jezika, porabite veliko časa za to, da v njem oblikujete svoje misli.

Če moraš nujno kaj povedati, se držiš nekaterih besed, pogosto nepravih, pozabiš na členke, pravilen besedni red, da o glagolskih časih in slabi izgovorjavi niti ne govorimo.

Če imate čas za oblikovanje odgovora, boste morali odpreti slovar ali spletni prevajalnik in porabiti veliko časa za oblikovanje svojih misli. Občutek pa bo še vedno neprijeten: poveste odgovor in ne veste, ali je pravilen ali ne. Enako je s kodo – zdi se, da je napisana, zdi se, da deluje, toda ali je kakovostna ali ne, je skrivnost.

Izkazalo se je, da je to dvojna izguba časa. Za odgovor je potreben čas. Za oblikovanje tega odgovora je potreben tudi čas – in to ne tako malo.

Če je prisotna veščina pisanja visokokakovostne kode, potem je mogoče odgovor oblikovati takoj, takoj ko dozori v glavi, ne da bi porabili dodaten čas za prevajanje.

Veščina pisanja visokokakovostne kode pomaga pri načrtovanju arhitekture. Preprosto ne boste razmišljali o napačnih, neuresničljivih ali namišljenih možnostih v svoji glavi.

Če povzamemo: spretnost pisanja kakovostne kode bistveno pohitri reševanje problemov.

A to še ni vse. Po zaslugi upraviteljev škornjev iz klobučevine obstaja en ulov - nimamo razloga za pisanje visokokakovostne kode. Upravnik ne pogleda šifre, stranka ne pogleda šifre. Kodo redko pokažemo drug drugemu, le včasih, v nekaterih projektih, kjer je določen »preverjevalnik« kode ali občasno preoblikovanje.

Izkazalo se je, da gre v večini primerov usrana koda v produkcijo ali k naročniku. Oseba, ki je napisala usrano kodo, tvori stabilno nevronsko povezavo - ni le mogoče napisati usrane kode, ampak je tudi nujno - to je sprejeto in za to celo plačajo.

Posledično se spretnost pisanja visokokakovostne kode sploh nima možnosti razviti. Šifre, ki jo je napisal pogojni delavec, nihče nikoli ne preveri. Edini razlog, da se bo naučil normalno programirati, je notranja motivacija.

Toda ta notranja motivacija je v nasprotju z načrti in zahtevami po učinkovitosti in produktivnosti. To protislovje očitno ni rešeno v korist visokokakovostne kode, ker ljudje ljudi niti ne kritizirajo zaradi usrane kode. In za neizpolnitev načrta - tudi tako.

Kaj naj naredim? Vidim in predlagam dve poti, ki ju je mogoče združiti.

Prvi je, da svojo kodo pokažete nekomu v podjetju. Ne reaktivno (na vprašanje/prisiljeno), ampak proaktivno (uh, stari, poglej mojo kodo, prosim). Glavna stvar tukaj je, da ne objavljate sladkih smrkljev, da ne poskušate kritike kodeksa postaviti v vljudno obliko. Če je koda sranje, rečemo tako: koda je sranje. Seveda s pojasnili in priporočili, kako ga izboljšati.

Je pa tudi ta pot tako-tako. Njegova uporabnost je odvisna od točke, kjer je prišlo do stika. Če je delo že šlo v proizvodnjo in se izkaže, da je koda zanič, je nima smisla ponavljati. Natančneje, razlogi - tudi meritve bodo padle. Vodje bodo prihiteli in vas zatrli z zahtevami po učinkovitosti. In niti ne poskušajte jim razložiti, da se bo usrana koda zagotovo vrnila v obliki hroščev – obrnila se vam bo. Lahko se le zavežete, da tega ne boste več storili.

Če delo še ni opravljeno ali se je šele začelo, ima lahko sranje po kodi (ali njenem projektu, ideji) precej praktičen pomen - oseba bo to naredila normalno.

Drugi način, najbolj kul, je odprtokodni razvoj v prostem času. Kaj je cilj: da kup programerjev, in sicer programerjev, vidi vašo kodo in se o njej pogovori. Vsi v podjetju nimajo časa. Toda programerji po vsem svetu še vedno nimajo kaj početi, in če napišete nekaj koristnega z vidika aplikacije, bodo zagotovo pogledali notri.

Glavni trik je po mojem mnenju pisanje kode v prostem času, ker protislovje med kakovostjo kode in hitrostjo dostave rezultata ne bo delovalo. Napišite svoj razvoj za vsaj eno leto. Niti roki, niti tehnične specifikacije, niti denar, niti šef ne bodo pritiskali na vas. Popolna svoboda in ustvarjalnost.

Le v svobodni ustvarjalnosti boste razumeli in občutili, kaj je velika koda, videli lepoto jezika in tehnologije ter občutili čar poslovnih nalog. No, naučili se boste pisati visokokakovostno kodo.

Res je, da boste morali porabiti osebni čas. Tako kot vsak drug razvoj. Ne glejte na to kot na strošek, temveč kot na naložbo – vase.

Vir: www.habr.com

Dodaj komentar