Programer i vi - vodič za preživljavanje

Programer i vi – vodič za preživljavanje

Developeri su ljudi (da, stvarno jesmo, testirali su nas!) koji će biti odgovorni za realizaciju vaše ideje. Iako vam je možda jezik kojim pričaju nerazumljiv, a silne linije koda koje pišu graniče sa znanstvenom fantastikom, o njima ovisi kako će vaša aplikacija funkcionirati - a o funkcionalnosti vaše aplikacije ovisi vaš posao.

Napravili ste web stranicu i svakodnevno s oduševljenjem radite na njenom održavanju. Dizajner je napravio odličan posao, a korištenje sustava za upravljanje sadržajem je jednostavnije nego što ste mislili i koristite ga s užitkom.

No, s vremenom otkrivate i nedostatke svog weba i dobivate dojam da to može još bolje. Možda želite dodati web shop ili neku društvenu komponentu; možda jednostavno imate neki tip sadržaja za koji vaš trenutni CMS tj. sustav za upravljanje sadržajima nije predviđen.

Za neke će od vaših ideja postojati gotova rješenja koja će vam, uz minimalne izmjene, savršeno odgovarati. U nekim će slučajevima gotovo rješenje zahtijevati malo veće zahvate, a neke će vaše zahtjeve trebati razvijati from scratch, tj. ispočetka, jer gotovo rješenje ne postoji ili bi njegova prilagodba bila jednostavno prezahtjevna i neisplativa. Ukoliko imate (ne)sreću da vaš zahtjev spada u jednu od zadnje dvije navedene kategorije…

Upoznajte Developera

...i developeri su ljudi!

Developeri su ljudi (da, stvarno jesmo, testirali su nas!) koji će biti odgovorni za realizaciju vaše ideje. Iako vam je možda jezik kojim pričaju nerazumljiv, a silne linije koda koje pišu graniče sa znanstvenom fantastikom, o njima ovisi kako će vaša aplikacija funkcionirati – a o funkcionalnosti vaše aplikacije ovisi vaš posao.

Ovisno o tome radite li s freelancerom ili s tvrtkom, vaše developere možda nikad nećete vidjeti, no to ne znači da ne možete napraviti ništa da im olakšate posao; naprotiv, vaš pristup i informacije uvelike mogu utjecati na njihovu motivaciju i mogućnost izrade kvalitetnog proizvoda.

Dakle, kako vama i vašem razvojnom timu život učiniti ljepšim i jednostavnijim?

Budite svjesni budžeta

Brzo, dobro, jeftino – odaberite dvoje od ponuđenog” vrlo dobro opisuje vezu između financijskog i vremenskog budžeta te kvalitete vaše aplikacije. Ukoliko ste financijski ograničeni, nemojte očekivati novi Google ili Twitter, no uz malo konzultacija možete postići kompromis koji će rezultirati dobrom aplikacijom izrađenom u razumnom roku unutar budžeta. Ono što svakako treba imati na umu je da stvar ne radi uvijek u svim smjerovima (“skupo” ne povlači nužno “dobro” i “brzo”), no za te su iznimke dobri filteri preporuke i reference potencijalnog izvođača radova.

Ponekad se zna dogoditi da klijent misli da je njegova ideja nevjerojatno kompleksna i teško ostvariva, a u biti je upravo suprotno; malo se češće događa obratno. Takve se situacije jednostavno mogu izbjeći tako da zatražite okvirnu, neobvezujuću ponudu od tvrtke ili freelancera i prepustite odluku njima.

Ukoliko vam se procjena čini nerealnom, probajte kod njihove konkurencije – ako se ponude uvelike razlikuju, uvijek možete tražiti njihovo pojašnjenje koje bi vam trebalo razjasniti je li riječ o krivo shvaćenom zahtjevu ili “brzo, dobro, jeftino” problemu. Bitno je naglasiti da su te ponude neobvezujuće za izvršitelja onoliko koliko su i za vas, kao i da je velika šansa da će se mijenjati kako detaljnije i bolje formulirate svoj zahtjev, no mogu dobro poslužiti kao okviran pokazatelj stupnja složenosti projekta.

Dobro definirajte vaše zahtjeve

Razvoj softvera je proces koji se sastoji od nekoliko međusobno vrlo ovisnih koraka: svaka izmjena funkcionalnosti vaše aplikacije zahtijeva povratak nekoliko koraka unazad. Svaki povratak utječe na budžet, a samim time i na kvalitetu krajnjeg rezultata – vaše aplikacije. Developeri su svjesni da je dobar, potpun i fiksan zahtjev mit u rangu s onima o besplatnom ručku ili beskamatnom kreditu.

No, konstantno mijenjanje i nadopunjavanje zahtjeva jednom kad se krene u razvoj je praksa koja će zasigurno dovesti motivaciju i fokus developera na nulu. Ukoliko ni sami niste sigurni što točno želite, posavjetujte se s vašim voditeljem projekta ili razvojnim timom prije nego što krenete s razvojem.

Dobro definiran zahtjev ne mora biti znanstveni rad od 300 stranica. No, mora sadržavati detaljan opis podataka s kojima će aplikacija baratati, kao i veze između njih. Nastojte malo toga prepustiti slučaju i što bolje i konkretnije opisati što točno želite da aplikacija radi. U ovom trenutku nije bitno je li aplikacija crvene ili zelene boje, nego što i gdje želite napraviti s podacima koje ubacite u aplikaciju. U idealnom bi slučaju rezultat vašeg zahtjeva bila detaljna funkcionalna specifikacija koju piše netko iz razvojnog tima dorađena u suradnji s vama; u praksi se to, nažalost, često preskače jer povećava troškove.

Olakšajte komunikaciju

Kolko para, tolko muzike...?

Nekome sa strane je nemoguće u detalje poznavati sve zakone i procese vezane uz vaš način poslovanja. Ukoliko vam se oni čine prirodnima i jasnima, samo se sjetite da su vašim developerima one silne linije koda vjerojatno isto toliko prirodne – ali vama nisu. Upravo je zato važno imati osobu zaduženu za komunikaciju i rješavanje eventualnih nejasnoća koju developeri mogu kontaktirati u slučaju nerazumijevanja nekog dijela zahtjeva. Važno je da je ta osoba upoznata s vašim poslovanjem, ali i da ima ideju o tome o čemu se točno u aplikaciji radi.

Branimir Šloser iz tvrtke Emusoft je na prezentaciji aplikacije RazborIT istaknuo da je upravo dobra komunikacija s klijentom, s kojim je u bilo kojem trenutku mogao riješiti nedoumice oko funkcionalnosti, bila jedan od ključnih čimbenika u brzom, bezbolnom i uspješnom razvoju te financijske aplikacije.

Vjerujte svojim developerima

Pojedinac ili tim developera koji radi na vašoj aplikaciji dnevno provodi puno vremena online. Neki od njih jako vole internet i svoj posao, pa su online otprilike onoliko koliko su i budni. Iako su nekima od njih draže kriptične komandnolinijske naredbe od lijepih grafičkih sučelja, imaju dobru ideju o tome što korisnici žele i što na webu funkcionira.

Stoga, na kraju preporučam da im ponekad vjerujete ili makar poslušate njihove komentare i prijedloge — nerijetko ih ne iznose zbog lijenosti, već zato što im je stvarno stalo da naprave dobar proizvod i olakšaju vama ili vašim klijentima život.

Na kraju krajeva, zato ih i plaćate.

Sukladno članku 94. Zakona o elektroničkim medijima, komentiranje članaka na Netokraciji dopušteno je samo korisnicima koji ostave svoje ime i prezime te mail adresu i prihvate pravila ponašanja.

Pravila ponašanja

Na Netokraciji za vas stvaramo kvalitetan, autorski potpisan sadržaj i zaista se veselimo vašim kvalitetnim, kontruktivnim komentarima. Poštujmo stoga jedni druge prilikom komentiranja, kao i Zakon, držeći se sljedećih pravila ponašanja:

  • Ne budite 💩: Nema vrijeđanja, diskriminiranja, ni psovanja (osim ako nije osobni izričaj, ali onda neka psovka bude općenita, a ne usmjerena prema nekome). Također, upoznajte se sa stavkom 2. članka 94. Zakona o elektroničkim medijima prije no što ostavite komentar.
  • Samo kvalitetna rasprava, manje trolanja: Ne morate se ni sa kim slagati, ali budite konstruktivni i doprinesite raspravi! Svako trolanje, flameanje, koliko god "plesalo" na granici, leti van.
  • Imenom i prezimenom, nismo Anonymous 👤: Autor sadržaja stoji iza svog sadržaja, stoga stojite i vi iza svog komentara. Koristimo ime i prezime te pravu email adresu.

Kako koristimo podatke koje ostavljate? Bacite oko na našu izjavu o privatnosti.

Sve ostale komentare ćemo s guštom spaliti, jer ne zaslužuju svoje mjesto na internetu.

Komentari

  1. Vibor Cipan

    Vibor Cipan

    16. 03. 2010. u 8:22 am Odgovori

    Pohvale za članak, kratko, jasno i sažeto – a opet pogađa dobar dio problematike. Trokut “brzo-dobro-jeftino” neodoljivo me podsjeća na slične metafore iz područja project managementa – primjerice “cost-scope-schedule”.

    Sve u svemu, zanimljiv članak!

  2. sloser

    sloser

    16. 03. 2010. u 9:42 am Odgovori

    Bravo Nikola, odličan tekst… Mislim da ću spremiti link i često ga slati klijentima na početku suradnje… I hvala za spomen, fakat je istina da uz malo (obostranog) truda rezultat i sam proces dolaska do rezultata mogu biti puno bolji i ugodniji.

    Nadam se da će biti još tvojih članaka ovdje 😉

  3. and1v

    and1v

    16. 03. 2010. u 9:57 am Odgovori

    Ako može jedan ispravak krivog navoda: U rečenici “U idealnom bi slučaju rezultat vašeg zahtjeva bila detaljna funkcionalna specifikacija koju piše netko iz razvojnog tima dorađena u suradnji s vama; u praksi se to, nažalost, često preskače jer povećava troškove.” nedostaje riječ NAIZGLED dakle “… često preskače jer NAIZGLED povećava troškove.”
    Ne da mi se sad elaborirati jer to može bilo tko tko je učestvovao u jednom projektu sa (polu)detaljnom specifikacijom i u jednom bez ikakve specifikacije.

    Inače odličan tekst, možda previše programerski za slat link klijentima, jer fale ključne riječi za one koji nemaju pojma o tematici (ROI, strategija, tržište, brend i slično 🙂 )

  4. Emanuel Blagonić

    Emanuel Blagonić

    16. 03. 2010. u 10:10 am Odgovori

    Nikola,
    pohvale za članak. Mislim da si uočio sve glavne probleme koji nastaju u komunikaciji naručitelja i izvođača. No, ovo što si napisao može se uz male izmjene primijeniti i na slučaj naručitelja i dizajnera, jer se i mi suočavamo sa sličnim problemima. Ako smijem nadopisati, ono što je najbitnije kod razgovora dizajnera i klijenta:
    * struktura stranica
    * tekstovi
    * što se klijentu sviđa (linkovi na stranice, detaljno objašnjenje što mu se sviđa/ne sviđa)
    Još jednom pohvale. +1 od mene 😉

  5. Nikola Plejić

    Nikola Plejić

    16. 03. 2010. u 5:57 pm Odgovori

    Hvala svima na komentarima, drago mi je da je članak koristan i/ili zanimljiv. 🙂

    @and1v: Istina, nedostaje “naizgled”. Specifikacije definitivno štede vrijeme (pa i novac) u razvojnoj fazi i vjerojatno su zadnja stvar koju bi treblao preskakati, ali su nekako prve na listi za odstrel. Nikako mi nije bio cilj reći da bi *trebalo* preskakati taj korak, no nažalost, nije bilo dovoljno mjesta za detaljnu razradu svake od točaka jer bi svaka zahtijevala svoj članak ili dva :).

    @Emanuel: Da, velik dio ovoga je istinit za razvoj bilo kakvog proizvoda, pogotovo na webu. Mislim da u odnosu s klijentima svi uključeni u razvoj dijele vrlo slične probleme.

  6. QuadMachine

    QuadMachine

    17. 03. 2010. u 4:34 pm Odgovori

    Posebno mi se sviđa onaj dio o nedefiniranim zahtjevima klijenata, i kako oni ne shvaćaju koliko je teško napraviti nešto što njima djeluje jako jednostavno…

Odgovori

Tvoja e-mail adresa neće biti objavljena.

Popularno

Startupi

Osnivač Njuškala uz Hanza Mediju pokreće novi digitalni oglasnik – Dealio

Dealio u tržišnom okršaju za korisnike u Hrvatskoj i šire ima stratešku podršku medijske grupacije Hanza, ali čini se kako se neće zaustaviti na tome.

Startupi

4 milijuna dolara za domaći startup koji je napravio “prvog pravog AI developera”

U otprilike godinu dana ekipa iza Pythagore prošla je program prestižnog Y Combinatora, skupila 30.000 aktivnih korisnika i prikupila investiciju. Među investitorima je i Damir Sabol.

Umjetna inteligencija

Kako osposobiti AI agenta za potrebe svoje tvrtke? Saznajemo od inženjera iz Infobipa i Sofascorea

Hrvatski jednorog pokrenuo je svoje meetupe, a sudeći po prvom izdanju, inženjerska zajednica dobila je događaj na kojem će imati što čuti - i naučiti.

Što ste propustili

Tvrtke i poslovanje

Osnivači Sofascorea, Rentlija i Productiva otkrili svoje najveće marketinške greške!

Koja je cijena uspjeha, kada postaviti odjel marketinga i koje su najveće marketinške boljke otkrivaju nam Sofascore, Rentlio i Productive za 15. rođendan Netokracije! 🎂

Scaleupi i jednorozi

Za praksu u Infobipu prošle se godine prijavilo 2000 osoba! Evo koga traže ove…

Ususret prijavama za ljetni program praksi u Infobipu, razgovarali smo s pripravnicima i mentorima iz područja produktnog marketinga, softverskog i QA inženjerstva te developerskog sadržaja.

Umjetna inteligencija

Europsko vijeće odobrilo AI akt! Za oko mjesec dana stupa na snagu

Finalno usvojen zakon kojeg je digitalna industrija Europe čekala godinama uskoro će stupiti na snagu, evo koje obveze donosi za sve koji razvijaju sustave uz pomoć umjetne inteligencije.

Tvrtke i poslovanje

Najpoznatija svjetska IT regulatorica: U EU ne gušimo inovacije, nego reguliramo primjenu!

Hoće li se Europa prilagoditi digitalnom dobu i postati konkurentna sa svojim inovacijama ili nam je sudbina biti regulator koji izdaje kazne?

Veliki intervjui

Upoznajte Hrvata koji je napravio nastavak Tetrisa (i dobio blagoslov originalnog tvorca)!

Nevjerojatne priče ne susrećemo svaki dan, a upravo vam donosimo jednu takvu koja se kuhala 12 godina na dva kontinenta, u čijem se središtu nalazi nastavak jedne od najpoznatijih igara ikada napravljenih.

Novost

AI developeri, AI glasovni asistenti, AI dejtanje…

U tjednu koji su obilježile pomalo distopijske AI vijesti u podcastu smo ugostili suosnivača hrvatskog startupa koji svoj proizvod zove - AI developerom.