Obavijesti

Kolumne

Komentari 17

Zašto je korisnik programeru nerijetko "najgori" prijatelj?

24sata placeholder

Osnovni problem odnosa programer-korisnik, kao i u mnogim drugim odnosima, je nerazumijevanje koje proizlazi iz različite perspektive i pogleda na određeni problem

Neki dan sam čuo još jedan u nizu viceva o tome kako netko rješava problem sa zamjenom žarulje. Ovaj put su se na tapeti opet našli programeri...
Što kaže programer kada mu kažu da korisniku treba promijeniti žarulju?
- Sad bi još i žarulju mijenjali?!!

Dvorac od pijeska

Ako se nikada niste našli u situaciji programer-korisnik vic vam možda i nije smiješan. Oni koji su svjesni zapetljanosti tog klinča reći će da to i nije vic nego prava istina. Programeri i korisnici su dva različita svijeta. Svaki zahtjev od korisnika programer će osjetiti kao ulazak stranog predmeta u svoje tijelo. Nimalo ugodno. Programer gradi svoj kod kao što dijete gradi dvorac od pijeska na plaži. I onda dolazi val korisničkih zahtjeva koji sav njegov trud pretvara u hrpu pijeska. 

Gerald Marvin Weinberg rekao je da kad bi arhitekti gradili zgrade na isti način kao što programeri pišu programe prvi bi djetlić razorio cijelu civilizaciju. Dobro, neki arhitekti stvarno grade zgrade na taj način i one se ruše, ali srećom, oni su u manjini. Programeri su sretni što umjesto čvrste i skupe gradnje imaju pijesak. Ako i dođe val ili neki nespretni kupač nagazi na dvorac od pijeska, nije problem sve srušiti i započeti ispočetka. Nije problem, ali treba vremena i gnjavaža je ponavljati posao koji ste već napravili.

Problem je u perspektivi

Osnovni problem u odnosu programera i korisnika, kao i u mnogim drugim odnosima, je nerazumijevanje koje proizlazi iz različite perspektive. Korisnik dođe programeru i kaže:

- Pa gle, ja ne vidim u čemu je ovdje problem, samo tu (korisnik neodređeno maše prstom iznad jedno područja na zaslonu) dodaš jedan gumb i problem je riješen.

Korisnikov problem bi stvarno bio riješen postavljanjem gumba koji bi pokretao određenu radnju, ali programer zna da za tu radnju treba natipkati brdo koda i još možda pomaknuti neki od kotačića koji bi mogao uzrokovati probleme ostalim gumbima, listama i korisničkim podacima.

Sigurno ste već vidjeli scenu u nekom filmu kad korisnik pritisne neku tipku, a kamera zatim ponire u mikro perspektivu čipova i brzo prolazi digitalnim krajobrazom. Tako i neki programeri, kad uhvate trenutak korisnikovog klika na gumb, u glavi vrte sav onaj kod koji se u tom trenutku izvršava.

Vožnja bez zaštitne ograde

Glavni razlog sukoba programera i korisnika je kad aplikacija ne radi ono što korisnik očekuje od nje. Takve situacije bi se izbjegle kad bi aplikacija bila dobro istestirana. Najveću grešku koju možete napraviti je da za taj posao zadužite programera. On zna kako se vrte kotačići, dok isprobava aplikaciju on u glavi vrti kod i neće svjesno napraviti ono što bi moglo izazvati probleme. Nešto kao kad bi napravili cestu na nekom brdskom području s puno zavoja i onda zbog uštede vremena (jer sve treba biti gotovo još jučer) i novca ne postavite svugdje zaštitne ograde.

Programer zna raspored zavoja i gdje nema zaštitnih ograda pa će svoju vožnju prilagoditi uvjetima koji su mu jako dobro poznati. Korisnik će nestrpljivo nagaziti na gas i izletjeti na prvom većem zavoju na kojem, gle slučajnosti, nema zaštitne ograde.

Budimo iskreni i recimo da programer nekad namjerno izostavi ogradu jer računa da nema budale koja bi se u tim uvjetima tako ponašala.

Programer u koži korisnika

Za poboljšanje odnosa nužno je bolje upoznavanje. Kako rijetko koji korisnik može ući u kožu programera i spoznati kod iznutra, na programeru je da napravi taj korak. Potrebno je pogledati aplikaciju očima korisnika, razumjeti njegove potrebe i način rada. Problematični korisnički zahtjevi su često takvi jer korisnik pokušava sam reći kako misli da bi se problem trebao riješiti umjesto da jednostavno kaže uzrok problema i da njegovo rješavanje prepusti programeru. 

U vrijeme kad sam radio knjigovodstvene aplikacije skoro uvijek sam od korisnika tražio da mi pokažu kako bi svoj problem riješili na papiru, bez računala. Najveći problem su mi bili oni koji su to u Excelu baš super riješili pa to samo treba prekopirati u aplikaciju. 

Kad cijelo vrijeme programer prima izvitoperene zahtjeve onda više ne raspoznaje ni one smislene. Ako je korisniku ‘crkla’ žarulja onda je treba i promijeniti. Nećemo ga valjda ostaviti u mraku?! Možda je baš u tom trenutku započeo ispunjavati virman s namjerom da programeru plati račun. ;-)

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 17
Ako ste rođeni na ove datume u mjesecu, čeka vas bogatstvo
TVRDE NUMEROLOZI

Ako ste rođeni na ove datume u mjesecu, čeka vas bogatstvo

Datum našeg rođenja može nagovijestiti naš karakter, talente i sposobnosti, ali i potencijal za sticanje bogatstva. Numerolozi smatraju da se ljudima rođeniima u ovim danima u mjesecu - smiješi vreća novca
SP 2026. Raspored i satnica svih utakmica. Kad igra Hrvatska?
SVE NA JEDNOM MJESTU

SP 2026. Raspored i satnica svih utakmica. Kad igra Hrvatska?

SP 2026. u Kanadi, SAD-u i Meksiku donosi novi format s 48 ekipa! Hoće li Hrvatska ponovno osvojiti medalju? Sve počinje 11. lipnja, a finale je 19. srpnja
Ljestvica i raspored HNL-a, Kupa i Europe. Satnica svih utakmica
SVE NA JEDNOM MJESTU

Ljestvica i raspored HNL-a, Kupa i Europe. Satnica svih utakmica

RASPORED I LJESTVICA HNL-a Prvi dio sezone domaćeg prvenstva završava vikend prije Božića. Pauza do nastavka trajat će svega pet tjedana