@Gogy: vsekakor je možnost natega z obeh strani. Isto velja za "glumce": tako programerji kot naročniki. Ampak, ker se večinoma prebira, kako smo "programerji grozni nateguni" in kako smo "vsi isti", sem pristavil še del svojih izkušenj z "nasprotne strani" :)
En karikiran primer:
Naročnik: potrebujem en enostaven spletni obrazec za izračun po X formuli
Programer: ok, tole bo 1 ura dela
Oba vesela, mogoče se še celo podpiše pogodba, ipd. In delo se začne. Potem pa:
Naročnik: tole bo treba še malo oblikovat, pa mora se lepo prikazovat tudi na telefonih/tablicah. Aja, pa fino bi blo še, da je na strani kontakten obrazec, preko katerega uporabnik lahko pošlje email. Pa ta mail naj bo še lepo oblikovan, da ne bo samo golo besedilo.
In programer začne kopat, da bo ja vse urejeno po željah. Na koncu, ko pa pride do računa, je pa naročnik pod stropom: Kako to, da je računanih 10 ur - sej je bilo rečeno, da je samo 1 ura dela!
Kdo je v tem primeru "glumac"?
To, kdo je pa "podkovan programer" in kaj je efektiven izkoristek, je pa lahko debata v nedogled :) Je to oseba, ki pozna vse PHP metode na pamet? ki kodira jQuery, javascript, CSS iz glave? Ali je to oseba, ki so mu poznani koncepti (relacijske baze, ORM baze, OO programiranje, MVC/n-tier arhitekture) in ve, kako posamezne sklope tudi pogooglat in jih sestavit skupaj? Hkrati pa je koda reusable in testable. Slednji bo v precej primerih vsaj na začetku porabil več časa, ampak na dolge proge je pa boljša izbira.
Pa da ne bom samo filozofiral: ko sam pridem h kakšnemu novemu projektu ali delu, se najprej poskusim zmenit ali za nek testni/pilotni projektič, ali pa rečemo da je v prvem tednu (ali dveh) nekoliko nižja urna postavka, potem pa vidimo kako bomo funkcionirali. Seveda je ogromno faktorjev še zraven, ampak tista 'core' filozofija je pa bolj ali manj ista. In se je že zgodilo, da sem zavrnil sodelovanje pri projektu (pri sicer precej dobro stoječi firmi), kljub temu, da sem za delo imel dovolj izkušenj. Zato, ker je bil odnos naročnika kombinacija zgoraj omenjenih "tole je pa itak samo eno urco dela" in "petnajstminutni 'a je že?'". S takim nočeš sodelovat, pa če plača 40€ na uro... Ker boš vedno samo 'ure nabijal' in 'zapravljal čas na čikpavzah' in nikoli ne bo dobro narejeno.
Po drugi strani pa sem že za precej manjšo urno postavko prebedel marsikakšno uro v iskanju rešitve, ki je šla popolnoma na moje stroške. Pa ne z muko, ampak veseljem - delo na zanimivem projektu, na tehnologiji kjer imam izkušnje ter za človeka, ki je tudi sam programer in mu je jasna količina dela, tudi če se na frontendu noben gumb ne spremeni 2 tedna skupaj.
Uf, dost bo... Sry for the long post, here's a potato :)