Archive for December, 2006

Specijalisti i renesansni ljudi

Pišući novi tekst za stranicu O autoru (coming soon), pri čemu sam rekapitulirao svoje developerske korijene, shvatio sam kako je svojevremeno — tamo negdje sve do pucanja (prvog, rekli bi neki) dotcom mjehura — bilo sasvim normalno da jedni developeri rade na serverskoj strani Web aplikacija — JSP, PHP, ASP, ColdFusion… — dok drugi rade na klijentskoj strani — HTML, CSS, Javascript, Flash. Kad je prošlo vrijeme bezočnih ulaganja u Web i IT općenito, postalo je preskupo držati velik broj developera, pa su oni koji su bili dovoljno sretni da zadrže posao bili primorani raditi sve, potaknuti stavom poslodavaca “pa sve je to programiranje, možeš ti i jedno i drugo”.

Tako je nastala podjela posla po kojoj programeri pišu serverski kôd, a dizajneri pišu markup (i ne žele ni vidjeti programski kôd — otud toliki uspjeh template modula “for dummies”, kao što je Smarty), a negdje na ničijoj zemlji između njih ostale su client-side programske tehnologije poput Javascripta i ActionScripta. Kad god bi se pokazala potreba za razvojem nečega u njima, to je palo na leđa server-side programera, i tako su oni postali donekle “renesansni ljudi” Web developmenta, poznajući svaku od nužnih tehnologija do neke mjere.

Većina ljudi — a tu nažalost spada i većina klijenata — nije svjesna koju količinu tehnologija sadržava jedan prosječan (dinamički) Web site, a koju mora objediniti razvojni tim koji se nerijetko sastoji od samo jednog čovjeka. Podaci su najčešće smješteni u nekoj relacijskoj bazi — obično MySQL ili PostgreSQL — što podrazumijeva poznavanje SQL-a; poslovna logika koja se vrti sa serverske strane implementirana je u nekoj od adekvatnih tehnologija kao što su PHP, Perl, Java (JSP, J2EE), ASP, ASP.NET, Python, Ruby (on Rails), ColdFusion i druge; komunikacija s drugim Web aplikacijama zahtijeva poznavanje Web servisa, XML-a, RSS feedova i prema potrebi XSLT-a. Prikaz svega toga na serveru podrazumijeva znanje u najmanju ruku HTML-a (a i mnogi iskusni poznavatelji HTML-a nisu nikad čuli za vrlo korisne elemente kao što su q, fieldset, legend, label, pa čak i button), te CSS-a za oblikovanje, a često je potrebno i određeno znanje grafičke pripreme (npr. u čemu je razlika između GIF-a i JPEG-a i kad je kojega bolje koristiti). A ako dodamo malo aplikacijske logike na klijentskoj strani, komunikacije sa serverom bez osvježavanja stranice, dinamičke promjene sučelja itd, onda u igru ulazi i Javascript, dugo zanemareni i podcijenjeni jezik koji vlastitu renesansu doživljava pojavom “ajaxa”. Čak i najmanji dinamički site podrazumijeva redovno korištenje barem četiri od gore navedenih tehnologija: SQL, PHP (ili neku drugu serversku tehnologiju), HTML, CSS.

Kod klasičnog sistemskog i desktop developmenta broj tehnologija koje koristi jedan programer je daleko manji. Baza je često i ovdje prisutna, no brojni alati i libraryji omogućuju komunikaciju bez ijedne linije SQL koda; korisničko sučelje se također apstrahira iza raznih GUI libraryja. Jasno, postoje razlike od developera do developera, ali daleko lakše ćete naći desktop developera koji ne mora razmišljati o ničem drugom nego o temeljnoj logici u Javi ili C++-u, nego što će isti slučaj biti za Web developera.

Da zaključim: namjera mi nije izazvati sažaljenje prema “jadnim” Web developerima, već samo podsjetiti na nužnu širinu znanja koje oni posjeduju, te da Web development nije “pljuga” kako često čujem od vrlih kolega čije aplikacije rijetko imaju output raskošniji od jedne linije shella. Ne treba zaboraviti da svaka Web aplikacija, koliko god bila jednostavna, u suštini predstavlja dvije aplikacije: jednu, koja se vrti na serveru, i koju se obično smatra “pravom” aplikacijom, te drugu, koja se izvodi na klijentu — obično u browseru — a koja s prvom nema nikakve veze osim niza instrukcija koje joj ova šalje. Čak i najjednostavniji HTML — čest stav je bah, pa to je samo tekst — nije output Web aplikacije, već samo niz instrukcija klijentskoj platformi kako treba obaviti svoj dio posla.

Popularity: 52% [?]

Wil Schroter

Ukoliko aktivno planirate pokrenuti online projekt ili bilo kakav drugi oblik startupa, velike su šanse da ste naišli na Go Big Network, site na kojem se mogu naći raznorazni oblici informacija i resursa korisnih za startupe, od mogućnosti investicija do konkretnih savjeta za pokretanje i vođenje tvrtke (naravno s naglaskom na konkretno okruženje SAD-a). Međutim, definitivno najkorisniji resurs na tom sajtu je blog njegovog osnivača, Wila Schrotera.

Podnaslovljen “Mindless Ramblings from a Serial Entrepreneur”, ovaj blog je prepun vrlo konkretnih i praktičnih savjeta, korisnih ne samo poduzetnicima-početnicima (zar mi zaista nemamo kraći prijevod pojma “startup”?), nego svakome tko želi uspjeti u nečemu. Tako je primjerice njegov današnji post, You can’t teach motivation, mene doveo do zanimljive spoznaje da se ljude može naučiti kako nešto trebaju raditi, ali ne i kakvi trebaju biti. Njegov pak post od prekjučer, naslovljen Investors are sharks, not lifeguards, šalje upozorenje svim prezaduženim poduzetnicima koji investitore očekuju kao manu s neba (pozdrav mom bivšem poslodavcu).

Popularity: 53% [?]

Smjena anketa: Umjetnost početka

Došlo je vrijeme za skidanje ankete, a rezultati su dosta zanimljivi. Najveća većina od 38 posjetitelja koji su odgovorili željela bi čuti Guya Kawasakija (9, tj. 24%) ili Paula Grahama (10, odnosno 25%), što znači da su čitatelji ovog bloga ipak nešto više zainteresirani za ideju pokretanja vlastitih projekata, a daleko manje na npr. vođenje programerskih timova (Joel Spolsky: 2 glasa, 5%) ili Internet marketing (Seth Godin: 2 glasa, 5%). Činjenicu da je Dharmesh Shah dobio samo jedan glas (3%) tumačim time da je on relativno nepoznat u našim krajevima, iako njegov site OnStartups ima velik broj sadržaja zanimljivih startup poduzetnicima. Poslovni guru Interneta, Om Malik, dobio je također samo jedan glas (3%), dok su Eric Sink, Alexander Kjerulf i Stowe Boyd sasvim zanemareni.

Zanimljivi je pogledati i nadopisana imena. Ovdje je najviše glasova, čak četiri (11%) osvojio Michael Arrington s TechCruncha, dok ga u stopu prati autor Ruby on Railsa David Heinemeier Hansson s tri glasa (8%). Zanimljivo je da su sva dopisana imena dobila barem još po jedan glas, pa su dva glasa (5%) dobili Mark Shuttleworth (Thawte, Ubuntu, jedini afrikanac u svemiru), Damir Sabol (stvoritelj Iskona) i Miho Grbić (tko?). (Nadopuna: Pred samo zatvaranje Miho Grbić je dobio još jedan glas. O kome je riječ?)

Nova anketa odmiče se od ideje okupljanja (ali ona je i dalje prisutna) na jedno novo, srodno područje. Iako je Guy Kawasaki dobio dosta vaših glasova, šanse da ga uskoro vidimo u našem podneblju vrlo su male, jednostavno zato što se njegov honorar piše peteroznamenkastim brojem (sa znakom $ ispred njega) — a to ne uključuje ni prijevoz, ni smještaj.

Ali ako već ne možemo Guya dovesti k nama, možda možemo učiniti, kako to Ameri kažu, “the next best thing”. Upravo sam počeo čitati njegovu najnoviju knjigu The Art of the Start, već me prvih nekoliko stranica oduševilo. Pa je nova anketa vezana uz mogućnost prijevoda i izdanja te knjige na hrvatskom jeziku.

Popularity: 33% [?]