Archive for September, 2006

Rat oglasnika

U zadnjih par tjedana možemo primijetiti mali “rat” koji se pojavio na nekim od najposjećenijih sajtova koji se bave temom Web developmenta, iako na različite načine.

Prvo je tvrtka 37signals — autori popularnih online aplikacija kao što su Basecamp i Campfire, kao i sveprisutnog frameworka Ruby on Rails — omogućila objavljivanje oglasa za posao na posebnoj poddomeni njihovog sitea, i to po cijeni od 250 USD za 30 dana objave. Zatim je Joel Spolsky — čiji je osobni site dugo imao forum namijenjen objavljivanju i komentiranju poslovnih oglasa — napravio vlastitu inačicu oglasnika, na kojem objavljivanje tijekom 21 dana košta 350 USD. Nedavno sam uočio sličan oglasnik na omiljenom programerskom siteu The Daily WTF, a maloprije sam otkrio i CrunchBoard, čiji je stariji brat TechCrunch omiljeni izvor friških Web 2.0 vijesti.

Zašto je sve ovo zanimljivo? Sve donedavno, glavni online izvori oglasa za radna mjesta bili su veliki “job boardovi” na kojem je uglavnom bilo besplatno ostaviti kako oglas tako i životopis. Neki od njih, kao Dice.com, donekle su se fokusirali na određene poslovne grane, dok drugi — kao Monster — pokrivaju valjda sve moguće struke osim astronauta. Tu su i generički oglasnici kao što je Craigslist gdje rame uz rame možete naći oglase za prodaju starih kauča i za zapošljavanje DB/2 administratora.

Svjedoci smo dakle, svojevrsnog “novog vala” na području oglasa za radna mjesta na Internetu, koji se od tradicionalnih razlikuju na nekoliko načina:

  1. Objava oglasa se plaća. Ovo prije svega pogoduje vlasniku oglasnika, no očito nimalo ne ometa oglašivače: malo matematike pokazuje kako je Joel Spolsky samo oglasima trenutačno dostupnim na njegovom boardu u džep spremio skoro 90.000 USD (a oglasi vrijede samo 21 dan, ne zaboravite)!
  2. Oglasi su jednosmjerni. Naravno, ovo je na jedan način posljedica prethodnog, jer je činjenica da će poslodavci lakše izvući novčanik kako bi objavili oglas za radno mjesto nego što će potencijalni djelatnici platiti objavljivanje vlastitog životopisa. Stoga su i oglasi na navedenim boardovima usmjereni od poslodavaca potencijalnim zaposlenicima.
  3. Oglasi su specijalizirani. I brzim pregledom dostupnih oglasnika vidjet ćemo da se npr. na 37signals mogu pronaći uglavnom poslovi vezani uz dizajnerske i općenito “hip” Web 2.0 tvrtke, dok su oni na Joelovom boardu više “tehnički” nastrojeni, u skladu s temama njihovih “temeljnih” sajtova. Također, oglasnici potenciraju tu specijaliziranost, tako da na 37signals imamo podjelu na programerske, dizajnerske i ostle poslove, dok Joel — pored dodatnih podgrupa poput sistemske administracije ili testiranja — ima i mogućnost da tvrtka stavi oznaku koliko je njen način rada u skladu s famoznim Joelovim testom.
  4. Oglasi su usputna aktivnost. U svim navedenim slučajevima, oglasnici s radnim mjestima nisu temeljna aktivnost njihovih pokretača — svi su se prije toga bavili nečim drugim, bez obzira bile to komercijalne online aplikacije, objavljivanje komično lošeg kôda ili osobni blog.

Kao što smo mogli vidjeti, spomenutim specijaliziranim oglasnicima krenulo je sasvim dobro, i očito je da su i poslodavci uvidjeli prednosti ovakvih specijaliziranih boardova — na sajtovima koje redovno posjećuju oni koji ih zanimaju kao potencijalni posloprimci — u odnosu na “generičke” job-boardove. Danas je općenito, a posebno u high-tech području, izuzetno teško naći kvalitetne ljude na koje se može osloniti od početka; stoga ovakvi specijalizirani oglasi tvrtkama daju način da se izravno predstave stručnjacima, bez šuma kojeg unose generički sajtovi ili nedajbože razni posrednici. A kako je kod nas?

Trenutačno, Hrvatska ima četiri online načina za ponudu radnih mjesta, i svi su maksimalno generički: MojPosao, Posao.hr, Oglasnik i HZZ (čiji oglasnik je nedostupan u trenutku dok ovo pišem). Iako još uvijek velika većina djelatnika do svog posla dolazi nekim “offline” načinom, mislim da se može slobodno reći da su u informatičkoj branši online oglasnici postali standard — a prije svega MojPosao. Međutim, još uvijek se dobri poslovi mogu utopiti u moru nezanimljivih, jer ne postoji način diferencijacije i fokusa — primjerice, premda je MojPosao prvi (i zasad jedini) uveo RSS feed, on još uvijek prikazuje samo deset najnovijih oglasa, bez obzira na kategoriju.

Problem je i u tome što domaći poslodavci — svugdje, pa tako i u informatici — još uvijek u velikoj većini imaju stav kako radnici moraju biti sretni što uopće imaju posao (a pogotovo baš u njihovoj firmi) i ne pada im na pamet da se malo više potrude oko pronalaženja najboljih kandidata. Plaćanje oglasa za posao vjerojatno se većini čini kao totalna besmislica.

Da budem konkretan, već neko vrijeme razmišljam o pokretanju svojevrsnog oglasnika specijaliziranog za poslove iz područja programiranja i Web developmenta, no nikako da se odlučim je li to vrijedno truda. Zato sam sa strane stavio malu anketu da vidim barem kako čitatelji ovog bloga “dišu” po tom pitanju, a slobodno možete svoje mišljenje ostaviti i u komentarima.

Nova anketa: Specijalizirani oglasnici za posao

Već neko vrijeme nisam baš puno pisao, a i posljednja anketa je poduže vrijeme gore, pa da ukratko bacimo pogled na njene rezultate:

Od 37 osoba koje su odgovorile na pitanje “Planirate li ostvariti neke prihode kroz vaš online projekt?” velika većina — čak 89% — odgovorila je pozitivno, iako 27% ne zna kako će te prihode realizirati. Od onih koji znaju, 27% računa na prihode od oglašavanja, 3% na proviziju od prodaje (što god već misle prodavati), a zapanjuje da nitko ne računa na mjesečnu (ili u nekom drugom razdoblju) pretplatu. Najveći postotak, 32%, planira prihode ostvariti na više načina navedenih ranije.

Zatvaranjem ove ankete došlo je i vrijeme za novu, a ova se nadovezuje na moj idući post o specijaliziranim oglasnicima za posao.

Masturbacija

Nedugo nakon što sam započeo ovaj blog, Vuk je citirao izjavu Alexandera Kjerulfa, koju sam ja zatim uzeo kao slogan bloga:

Vizija bez izvedbe je halucinacija.

(Digresija: Zanimljiva stvar se događa ako tu izjavu upišete u Google: u prvih nekoliko rezultata ćete je pronaći pripisanu raznim velikim ljudima, od Thomasa Edisona preko Alberta Einsteina do Stevea Casea. Ali nije važno tko je autor, izjava i dalje stoji.)

No danas mi je sinulo da se može konstruirati i druga izjava, svojevrstan antipod ovoj prvoj:

Izvedba bez vizije je masturbacija.

Ako pogledamo oko sebe, vidjet ćemo da su znakovi ovog pravila svuda oko nas, a u mojoj branši najbolje se mogu vidjeti u mnoštvu Web development frameworka koji niču kao gljive poslije kiše. Danas kao da svaki Web developer ima ideju kako najbolje napraviti razvojno okruženje, pa potroši mjesece na konstruiranje raznih hijerarhija klasa, lukavih rješenja pristupa bazi ili templating enginea. Odmah treba reći da nisu svi frameworci nastali na taj način — najbolji primjer je sveprisutni Ruby on Rails, koji je izvorno bio samo temelj aplikacije Basecamp, a isto vrijedi i za Django te još bezimeni framework kojeg naš Ilija planira izvući iz activeCollaba. No, brojna rješenja su nastala samo kako bi se razvili neki teorijski koncepti, ili iz autorovig ego-tripa, bez konkretne, praktične namjene — WACT, Willowgarden i QCodo samo su neki od njih (posebna su kategorija klonovi Ruby on Railsa, kao što su CakePHP ili PHP on Trax).

To ne znači da se na tim platformama ne može razviti suvisla aplikacija — no kako već neko vrijeme tvrdim, frameworci u osnovi nikome ne koriste, jer su s jedne strane ili preopćeniti (za one koji ne žele programirati, već samo složiti nekakav jednostavan dinamički site; za takve su idealni CMS-ovi kao što su Joomla, Xoops, Typo3 ili Drupal) ili preograničeni (za programere koji ne žele otkrivati toplu vodu, ali i imaju potrebe za većom fleksibilnošću; njima više koriste generički libraryji kao što su ADOdb, EZcomponents ili Solar). No developeri frameworka prečesto imaju običaj igrati se s nebitnim detaljima, fokusirajući se na besmislene fines — moj omiljeni primjer je feature da se tablice u bazi nazivaju u množini (npr. ‘people’) a ActiveRecord klase u jednini (npr. ‘person), i da framework to sam prepozna i poveže. To je takav očit primjer suvišnog i nepotrebnog kodiranja da se to ne može nazvati drugačije nego masturbacija.

Dakle možemo zaključiti da su vizija i izvedba dvije strane istog novčića, i jedno bez drugog nema puno smisla. Tako da ću sad sukladno tome i modificirati svoj slogan. :)

Radovan baca daske

Dharmesh javlja kako je još jedan online projekt — HackABuck.componuđen na eBayu. Nedavno smo bili svjedoci iste takve prodaje online kalendara Kiko, kojeg je — kako je javio i Vuk — kupio Web veteran Tucows, i to za više od četvrt milijuna zelembaća.

Ako čitamo objašnjenje Tucowsovog CEO-a o tome zašto su odlučili kupiti Kiko, ključna rečenica je:

We needed the functionality, quite desperately, inside of our email platform and it was going to take us a long time to get it.

Kurziv je moj, a tu sam riječ istaknuo jer ilustrira jedan novi način razvoja softvera koji se očito polako pojavljuje — prije nekoliko godina tu bi se negdje našlo mjesta za famoznu frazu “paradigm shift”. Naime, nekad su se aplikacije razvijale monolitno — svaka aplikacija za sebe, bez ikakve komunikacije s drugima osim eventualno konverzije formata dokumenata. S vremenom su se pojavili načini kako se aplikacije mogu povezati, s jedne strane kao dodavanje funkcionalnosti glavnoj aplikaciji kroz razne pluginove i ekstenzije (sjećam se da sam to prvo susreo kod Adobe Photoshopa i Netscape Navigatora, dok su danas neke aplikacije — poput WordPressa na kojem ovo pišem — praktički nezamislive bez pluginova), te s druge strane kao komunikacija među sasvim različitim aplikacijama korištenjem raznih komunikacijskih platformi kao što su CORBA, RPC, SOAP itd.

Čini se da smo sad na pragu nove faze u razvoju aplikacija, u kojoj individualne tvrtke — startupi ako hoćete — razvijaju cjelokupnu funkcionalnost, kako bi ju netko drugi otkupio i uklopio u vlastito rješenje. Odličan primjer je famozni Google Office, koji okuplja skup aplikacija — dio kojih je razvio sam, dok je dio kupio — čija se zajednička funkcionalnost pomalo približava Microsoft Officeu.

Edit: Michal Arrington je upravo na Techcrunchu objavio podcast intervjua s Elliotom Nossom iz Tucowsa, a postavlja i zgodno formulirano pitanje u istom tonu kao i moje gornje razmišljanje:

Is eBay the investment bank of Web 2.0? New companies are easy to start, easy to fund and (now) easy to sell for a few hundred grand on eBay…this might be the way many of these small companies eventually find liquidity.

Edith: Izgleda da ni to nije sve: jedan komentator na Michaelov post je ukazao na AllActu.com, čini se nekakav digg-klon, koji se prodaje na francuskom eBayu.

Digresija: Kako je moj francuski zahrđao još od osnovne škole, provukao sam stranicu kroz Babelfish. Bilo je relativno razumljivo, no izuzetno mi se dopao sljedeći prijevod, u opisu same aplikacije:

This site was programmed to turn on a waiter PHP5.1.4 + MySQL 5.0.16 + Apache 2.0.55, therefore you will not have evil to make it functional on your waiter.

:D

OnStartups

Već duže vremena čekam povod da uvrstim OnStartups na listu mojih poslovnih resursa. Odličnu priliku pružio je najnoviji post, pod provokativnim naslovom Why Web 2.0 Is Like Pornography, u kojem se pokušavaju nabrojati osobine koje nekom online projektu daju famoznu oznaku “Web 2.0″.

Glavni sadržaj na OnStartups siteu je blog čiji autor Dharmesh Shah sebe naziva “serijskim poduzetnikom”, a svaki njegov post donosi neke nove korisne informacije iz svijeta online poduzetništva. Korisno je pretražiti cijeli njegov arhiv, ali posebno mogu preporučiti postove kao što su 17 Pithy Insights For Startup Founders, Bootstrap Startups: Spending Money In The Right Places ili Revenue Early, Reveue Often.

Moja hrana za pse

Postoji dobra stara izreka “eating your own dog-food”, što znači da se svaki biznis koji nudi neki proizvod ili uslugu mora i sam njome koristiti, čime a) dobiva na ugledu, te b) dijeli iskustvo s vlastitim klijentom, što pozitivno utječe na korisničku podršku i budući razvoj. Npr. kad direktor Toyote vozi automobile vlastite tvrtke, a ne recimo BMW, on “jede vlastitu hranu za pse”; suprotan primjer je kad 37signals za svoj vlastiti Web site koriste PHP (a trebali bi Ruby on Rails).

Kako na ovom blogu (a i drugdje) pametujem o raznim temama, u zadnje se vrijeme sve češće razmišljam o tome kako bih trebao početi jesti vlastitu hranu za pse (sva sreća da ova fraza nije doslovna…). Konkretno, ozbiljno se bavim mišlju da pokrenem mali, usputni biznis na području developmenta, organizacije i poduzetništva; i nakon dosta promišljanja i diskusija s kolegama iz svih relevantnih branši, odlučio sam se objaviti svoju ponudu. A ona se sastoji od sljedećih usluga, namijenjenih sljedećim grupama klijenata:

Za poduzetnike

  • Analiza i razrada poslovnih ideja. Bacite pogled na vrh ove stranice, gdje se nalazi “slogan” ovog bloga. Jeste? Fino. Dakle, moj cilj je pomoći poduzetnicima da prestanu halucinirati.
    Osnovni problem raznih projekata i “projekata” o kojima slušam u zadnje vrijeme jest što njihovi pokretači nemaju jasnu sliku o tome kolika je realna vrijednost njihovog projekta. Vrlo često slušamo o poslovnim idejama koje “imaju puno potencijala”, “nema šanse da ne uspije” ili “garantirano će nas kupiti Google”. Međutim, pritom ne postoji realna ideja o tome koliko vremena i resursa je potrebno da se projekt realizira; koje mu je tržište i konkurencija; kakav je poslovni model, koliki prihod se očekuje i izkojih izvora… Stoga moja ponuda uključuje uslugu analize i razrade poslovnih ideja, kako bi poduzetnik stekao predodžbu o tome koliko njegova poslovna ideja ima smisla za njega samoga. Moram napomenuti da sam odlučio — zahvaljujući vrlo poučnoj korespodenciji s Borjom — da ću se ove usluge prihvatiti isključivo ako a) zaključim da je projekt dovoljno vrijedan da bih u njemu bio partner, te b) ako s njegovim osnivačima mogu uspostaviti partnerski odnos.
  • Izrada poslovnih planova. Kod nas je uobičajena predodžba kako poslovni plan služi da bi se od banke izvukli krediti, pa se obično u njih stavlja sve i svašta, često bez realne veze sa samim projektom, a obično košta više od kamata za postignuti kredit. Razlog tome jest što kod nas svojevrstan monopol na poslovne planove imaju skupo plaćeni “konzultanti” koji niti ne obavljaju sav potreban research.
    Analiza poslovne ideje ključan je element izrade poslovnog plana, no kod nas se ona zanemaruje. Stoga sam ja odlučio razdvojiti ove dvije usluge, jer samo glancanje i pisanje poslovnog plana nema smisla ukoliko analiza ne ukaže na potencijal projekta.
  • Pronalaženje investitora za zanimljive projekte. Bez brige, neću naplaćivati proviziju unaprijed. :) Međutim, biti ću izuzetno izbirljiv, i kontaktirati ću potencijalne investitore isključivo ako procijenim da projekt zadovoljava moje — vrlo visoke — kriterije. Ako mislite da imate takav projekt, javite mi se; a ako niste sigurni, pratite ovaj blog — uskoro planiram postove o tome kako pronaći pravi projekt.

Za programere

  • Pisanje CV-a i ponuda za posao. Kod nas nekako svi misle da znaju sve, pa tako i napisati dobar poslovni životopis, te ga na pravi način predstaviti potencijalnom poslodavcu. Nažalost, nedavno sam imao prilike poći kroz vrlo širok raspon programerskih životopisa, i tu je zaista bilo svega.
  • Pronalaženje klijenata, odnosno svojevrsna programerska agentura. Dakle, ja neđem klijenta, povežem ga s programerom koji dogovori i obavi posao; meni ide provizija.
  • Pronalaženje i dogovaranje programerskih poslova. Ponovo nalazim programera za odgovarajuće poslove, no za razliku od prethodnog ovdje ja preuzimam odgovornost za posao, organiziram i koordiniram programere, te naplaćujem od klijenta i plaćam programeru.
  • Organizacija naplate preko tvrtke. Individualni programeri često su u inferiornom položaju prema trvtkama jer a) djeluju manje ozbiljno, te b) u startu su skuplji (osim ako naplaćuju na crno), jer i plaćanje preko autorskog ugovora (~35%) i preko student-servisa (18%) predstavlja tvrtki-naručitelju veći trošak od PDV-a (22%, ali se vraća kroz predporez). Kroz ovu uslugu programer bi preko mene mogao ispostaviti fakturu i dobiti honorar uz minimalne komplikacije.

Za poslodavce

  • Provođenje natječaja za zapošljavanje programera. Kroz svoj (sad već poduži) radni vijek bio sam svjedokom (na obje strane) raznovrsnih natječaja za radna mjesta programera (i srodnih zanimanja), i vidio sam svakojakih situacija — od raznih testova inteligencije i osobnosti bez ijedne linije koda, preko testiranja tehnologija zastarjelih prije više godina, do zapošljavanja Java programera tamo gdje je potreban C programer. Uz časne iznimke, došao sam do zaključka kako velika većina tvrtki, čak i programerskih, jednostavno ne zna na pravilan način testirati kandidate za programerska radna mjesta.
    Ova usluga bi uključivala konstrukciju teksta oglasa, analizu i testiranje kandidata, razgovore s njima te sugestiju konačnog odabira, u bilo kojoj kombinaciji.
  • Pronalaženje kvalitetnih programera i drugih kadrova bez natječaja. Odnosno, klasični headhunting. Najkvalitetniji programeri obično već imaju dobar posao i ne javljaju se na natječaje, i često ih je lakše i sigurnije pronaći kroz neformalne kanale i mrežu znanaca nego natječajem.
  • Savjetovanje u organizaciji programera i razvojnih timova. U karijeri sam sudjelovao u brojnim timovima (kako programerskima, tako i nekim drugima, poput radijskih i nakladničkih redakcija, ili pak košarkaškog tima), i uočio sam vrlo velik problem nepostojanja kvalitetne organizacije u većini slučajeva programerskih timova. Dok kod “tradicionalnih” timova, poput redakcija i klubova, postoje uhodani obrasci koji osiguravaju da tim kvalitetno funkcionira, velika većina developerskih managera jednostavno ne poznaje slične obrasce za taj tip tima, ili jednostavno nisu ni svjesni njihovog postojanja, pa se uhvate pravila za neku vrstu tima i onda neuspjeh svaljuju na programere.
    Moja ponuda će obuhvaćati strukturiranje razvojnog tima za klijente koji prepoznaju potrebu za tim, te provođenje reorganizacije. To uključuje kako human resources, tako i tehničke pretpostavke za kvalitetan razvojni tim.

Za svakoga pomalo

  • Organizacija stručnih skupova, kongresa, prezentacija itd. Naravno, prije svega iz područja developmenta i poduzetništva. U početku planiram ponuditi organizaciju održavanja takvih skupova za nekoga tko želi organizirati, npr. domaću varijantu Web 2.0, a s vremenom se nadam i samostalno pokrenuti odgovarajuće skupove.