Efektyvumo paslaptis yra kokybės kodas, o ne efektyvus vadovas

Viena iš labiausiai idiotiškų profesijų yra vadovai, kurie vadovauja programuotojams. Ne visi, bet tie, kurie patys nebuvo programuotojai. Tie, kurie mano, kad galima „padidinti“ efektyvumą (ar padidinti „efektyvumą“?) naudojant metodus iš knygų. Net nesivargindamas skaityti tų pačių knygų, vaizdo įrašas yra čigoniškas.

Tie, kurie niekada nerašė kodo. Tie, kuriems kuriami Holivudo filmai apie programuotojus – na, tie, kur naudodamiesi komandine eilute žiūri el. Tie, kurių nedomina niekas, išskyrus rodiklius, terminus ir savo atlyginimą.

Tie, kurie yra dauguma.

Tačiau jie yra idiotai dėl kitos priežasties. Jie nori efektyvumo arba bent jau efektyvumo (nagi, vadybininke, Google koks skirtumas), nesuprasdami nei vieno, nei kito. Apskritai nesuvokiant esmės, rezultato gavimo proceso, šiame procese atsirandančių nuostolių, kūrimo kaštų. Trumpai tariant, darbas su programuotoju tarsi būtų juodoji dėžė.

Jie pateko į programuotojų valdymą dėl vienos priežasties: yra ažiotažas, pinigai, rinka ir krūva tų pačių idiotų. Yra kur pasiklysti.

Jei būtų ažiotažas mechaninių surinkimų gamyboje, mes ten bėgtume. Universalai šlykšti. Nenustebčiau, kad gruodžio mėnesį mūsų kaimynystėje eglutėmis prekiaujantis vaikinas atostogauja IT vadovas.

Trumpai tariant, jei įmanoma, šaukite šiems vaikinams į kaklą. Nesijaudink, jie susiras darbą. Nė vienas iš jų niekada nepadarys nieko padoraus, kol patys netaps programuotoju. Nes nesuvokia savo valdomo proceso esmės, mechanizmo, logikos.

Gerai, užteks apie vadovus. Dabar prie reikalo – programuotojams. Kaip padidinti kūrimo efektyvumą mokantis rašyti kokybišką kodą.

Norint padidinti efektyvumą, reikia greičiau išspręsti problemas neprarandant kokybės. Norėdami greičiau išspręsti problemas, turite sugebėti iš karto parašyti aukštos kokybės kodą. Ir „aukštos kokybės“, ir „rašyk“, ir „iš karto“. Leiskite paaiškinti su metafora.

Aukštos kokybės kodo rašymas yra tarsi taisyklingas kalbėjimas užsienio kalba. Kai nemokate kalbos, praleidžiate daug laiko bandydami joje suformuluoti savo mintis.

Jei reikia ką nors pasakyti skubiai, tiesiog prilimpa kai kuriuos žodžius, dažnai netinkamus, pamirštate straipsnius, teisingą žodžių tvarką, jau nekalbant apie veiksmažodžių laikus ir prastą tarimą.

Jei turite laiko suformuluoti atsakymą, turėsite atsiversti žodyną ar internetinį vertėją ir praleisti daug laiko formuluodami savo mintis. Tačiau jausmas vis tiek bus nemalonus: pasakai atsakymą ir nežinai, ar jis teisingas, ar ne. Tas pats ir su kodu – atrodo, kad jis parašytas, atrodo, kad veikia, bet ar jis kokybiškas, ar ne, yra paslaptis.

Pasirodo, tai dvigubas laiko švaistymas. Reikia laiko, kol sugalvoti atsakymą. Šiam atsakymui suformuluoti irgi reikia laiko – ir ne taip jau mažai.

Jei yra įgūdis rašyti kokybišką kodą, atsakymą galima suformuluoti iš karto, vos tik jis subrendo galvoje, neskiriant papildomo laiko vertimui.

Įgūdžiai rašyti aukštos kokybės kodą padeda kuriant architektūrą. Jūs paprasčiausiai negalvosite apie neteisingus, neįgyvendinamus ar suvaržytus variantus.

Apibendrinant: įgūdis rašyti aukštos kokybės kodą žymiai pagreitina problemų sprendimą.

Bet tai dar ne viskas. Veltinio batų tvarkytojų dėka yra vienas laimėjimas - mes neturime priežasties rašyti aukštos kokybės kodo. Vadovas nežiūri į kodą, klientas nežiūri į kodą. Mes retai rodome kodą vieni kitiems, tik kartais, kai kuriuose projektuose, kur yra paskirtas kodo „tikrintuvas“ arba periodinis pertvarkymas.

Pasirodo, daugeliu atvejų šiurkštus kodas patenka į gamybą arba pas klientą. Asmuo, parašęs šlykštų kodą, suformuoja stabilų neuroninį ryšį – parašyti šlykštų kodą ne tik galima, bet ir būtina – tai priimama ir net už tai mokama.

Dėl to įgūdis rašyti aukštos kokybės kodą neturi jokios galimybės tobulėti. Sąlyginio darbuotojo parašyto kodo niekas niekada netikrina. Vienintelė priežastis, kodėl jis išmoks normaliai programuoti, yra vidinė motyvacija.

Tačiau ši vidinė motyvacija prieštarauja planams ir efektyvumo bei produktyvumo reikalavimams. Šis prieštaravimas akivaizdžiai nėra išspręstas aukštos kokybės kodo naudai, nes žmonės net nekritikuoja žmonių už šlykštų kodą. O už plano neįvykdymą – net ir taip.

Ką turėčiau daryti? Matau ir siūlau du kelius, kuriuos galima derinti.

Pirmasis yra parodyti savo kodą kam nors įmonės viduje. Ne reaktyviai (kai prašoma / priverstinai), bet aktyviai (uh, bike, pažiūrėk į mano kodą, prašau). Svarbiausia čia neskelbti saldžių snarglių, nesistengti kritikuoti kodą mandagiai. Jei kodas yra šūdas, mes sakome taip: kodas yra šūdas. Žinoma, su paaiškinimais ir rekomendacijomis, kaip tai padaryti geriau.

Tačiau šis kelias taip pat yra toks. Jo pritaikymas priklauso nuo taško, kuriame įvyko kontaktas. Jei darbas jau pradėtas gaminti ir paaiškėja, kad kodas yra šūdas, nėra prasmės jo perdaryti. Tiksliau, priežastys – metrikai taip pat nusmuks. Vadovai skubės ir sutraiškys jus su efektyvumo reikalavimais. Ir net nemėginkite jiems paaiškinti, kad šlykštus kodas tikrai sugrįš klaidų pavidalu - jis atsilieps prieš jus. Galite tik įsipareigoti daugiau to nedaryti.

Jei darbas dar nepriduotas, arba tik prasidėjęs, tai šūdo užpylimas ant kodo (ar jo projekto, idėjos) gali turėti gana praktinę prasmę – žmogus tai padarys normaliai.

Antrasis būdas, pats šauniausias, yra atvirojo kodo kūrimas ne darbo valandomis. Koks yra tikslas: kad būrys programuotojų, būtent programuotojų, matytų jūsų kodą ir apie jį pasikalbėtų. Visi įmonės viduje neturi laiko. Tačiau viso pasaulio programuotojai vis tiek neturi ką veikti, o jei parašysi ką nors naudingo taikymo požiūriu, jie tikrai pažiūrės į vidų.

Pagrindinė gudrybė, mano nuomone, yra kodo rašymas ne darbo valandomis, nes prieštaravimas tarp kodo kokybės ir rezultato pateikimo greičio nepasiteisins. Parašykite savo raidą bent metus. Nei terminai, nei techninės specifikacijos, nei pinigai, nei viršininkas nedarys spaudimo. Visiška laisvė ir kūrybiškumas.

Tik laisvoje kūryboje suprasite ir pajusite, kas yra puikus kodas, pamatysite kalbos ir technologijų grožį, pajusite verslo užduočių žavesį. Na, jūs išmoksite rašyti kokybišką kodą.

Tiesa, tam teks skirti asmeninio laiko. Kaip ir bet kuri kita plėtra. Žiūrėkite ne kaip į išlaidas, o kaip į investiciją – į save.

Šaltinis: www.habr.com

Добавить комментарий