Obavijesti

Kolumne

Komentari 15

Isplati li se programere plaćati po liniji napisanog koda?

24sata placeholder

Onima koji nisu programeri jako je teško ocijeniti i izmjeriti njihov rad. Nepoznavanje te problematike dovodi do loših rješenja poput mjerenja koda.

U prošloj kolumni pisao sam o milijunima linija izvornog koda u vozilima, letjelicama, operacijskim sustavima. Upotrebljavati takvu metriku za mjerenje učinka programera je pogrešno, ali kad se usporedi broj linija koda onda se može dobiti dojam o tome koliko je uloženo posla da bi pojedini posao završio. Nije isto ako projekt ima 500, 50.000 ili 5.000.000 linija koda.

Programiranje je posao gdje svaki zadatak možete napraviti na nekoliko različitih načina. Ako za njega angažirate nekoliko programera velika je vjerojatnost da će svaki od njih to napraviti drugačije i u različitom vremenskom rasponu. Broj linija koda će se sigurno razlikovati. Neki će najboljima smatrati one koji to naprave u najkraćem vremenu i s najmanjim brojem linija koda, ali takvi će sasvim sigurno zaboraviti neku iznimku ili obraditi ulazne podatke na potreban način.

Ovaj tjedan sam bio produktivan -2000 linija koda

Oni koji šefuju programerima, a sami nisu nikada bili programeri (ne računamo one koji su napravili program koji crta krug na zaslonu) često se nađu u situaciji da vrednuju njihov rad i za to traže konkretnu metriku.

Appleov tim koji je 1982. radio na razvoju programa za Lisu bio je u gužvi jer je isporuka slijedila za 6 mjeseci. Neki šefovi su se dosjetili da bi mogli mjeriti učinkovitost programera po količini koda koju tjedno napišu pa su zatražili od njih da svaki petak prijave koliko su linija koda napisali. Jedan od najvažnijih ljudi na projektu, Bill Atkinson, smatrao je da se tako ne može mjeriti produktivnost programera jer mu je cilj bio da piše što brže i što manje programe.

Kako je baš taj tjedan radio na optimizaciji koda kojom je uštedio 2000 linija koda Bill je taj jedan prijavio da je napisao -2000 linija. Nije poznato kako su šefovi reagirali, ali za par tjedana su prestali tražiti od Billa da ispunjava taj formular.

Što bi napravili konformisti?

Bill je pokazao kako je takva metrika besmislena, nemam podatak kako su reagirali drugi u tom Apple timu, ali sasvim sigurno znam kakva bi bila reakcija konformista programera. Oni bi najprije pisali jako puno nepotrebnog koda dok se ne bi dosjetili da bi mogli napisati i generator koda koji bi sam pisao kod koji ne bi radio ništa korisno, ali bi povećao broj linija koda. Šefovi bi sigurno bili iznenađeni kako se produktivnost iznenadno povećala, možda bi si isplatili i pokoji bonus zbog toga. Sve dok im stvarnost ne bi lupila u glavu kad bi vidjeli da se povećana produktivnost nije očitovala i u samoj aplikaciji koja bi postala sve lošija i lošija.

Koje je rješenje problema?

Nema rješenja. Kod se ne može ocjenjivati niti plaćati po broju redova. To vam može biti indikator, ali ne i konačna metrika. Kod bi mogli usporediti s periodnim sustavom elemenata. Par stotina redova nekog algoritma koji rješava određeni problem može biti teže (i skuplje i za njihovo pisanje treba puno više vremena) od aplikacije koja rješava uobičajene probleme i čiji se broj linija koda mjeri u tisućama. Problem je u tome što takav periodni sustav ne postoji i teško da će ikada postojati za programiranje.

Jedno je sigurno, mjerenje linija koda nije rješenje.

Igre na sreću mogu izazvati ovisnost. 18+.
Vidi sve članke ovog autora
Sve što je bitno, na dohvat ruke
Skini aplikaciju za najbolje iskustvo portala. Čitaj, komentiraj i budi uvijek u toku s najnovijim vijestima.
Komentari 15
Oči su ogledalo duše, a evo što otkrivaju o vašoj osobnosti
CRNE, PLAVE, SIVE...

Oči su ogledalo duše, a evo što otkrivaju o vašoj osobnosti

Iako boju očiju prvenstveno određuje količina i raspodjela pigmenta melanina, od davnina se boju očiju povezuje i s osobnošću. Otkrijte što vaše oči govore o vama...
Rođendan tragično preminulog Matije Ljubeka, legende našeg sporta: 'Ubojici neću oprostiti...'
STRADAO PRIJE 24 GODINE

Rođendan tragično preminulog Matije Ljubeka, legende našeg sporta: 'Ubojici neću oprostiti...'

Matija Ljubek u karijeri je osvojio više od 300 medalja. Iz Belišća otisnuo se u svijet i osvojio četiri olimpijske medalje. Bio je možda i najveći hrvatski sportaš svih vremena. Bio je naša olimpijska senzacija, stradao je od metka s 46 godina...
Mornar za 24sata: Gattuso sad mora uvjeriti igrače da su bolji i od Cityja! To je radio Katalinić
HAJDUKOVA LEGENDA

Mornar za 24sata: Gattuso sad mora uvjeriti igrače da su bolji i od Cityja! To je radio Katalinić

Dinamu je problem igrati na više frontova, a Hajduk je lani malo "zabucao", požurio s pumpanjem euforije. Sad je tu Rakitić, koji nakon finala SP-a i LP-a igra po livadama i ne žali se. A jak Hajduk ne ide s jednim pomoćnim terenom...