Oct
7
2007

FOWA 2007: Golden rules for web app development

Pa sem nazaj… FOWA je bila zanimiva, zabavna in predvsem koristna. Ker je you.go ??e precej natan??no povzel predavanja, bom sam izlu????il tiste klju??ne misli, ki so ostale zapisane na disku. Objava bo delno v angle????ini, delno v materin????ini… upam, da to koga ne moti. :)

Ako spletne aplikacije zgolj uporabljate, pa objavo raje presko??ite in si poglejte tole.


“When hiring a new employee, these are the most important things to consider: personality fit, ability to learn, taste, passion for space and familiarity with technologies. If you have doubts about someone, let it pass.”

Dober sodelavec ni nujno tisti z najve?? znanja. Pogosto boste naleteli na izjemno sposobne ljudi, ki preprosto niso team playerji. Taki ne sodijo v kolektiv. Veliko bolj zadovoljni boste z nekom, ki ima npr. zgolj osnovno znanje v dolo??enem programskem jeziku, a je pri delu strasten, kooperativen in se z veseljem u??i novih stvari. Spremljanje strani, kot so TechCrunch, Slashdot, Read/WriteWeb, SitePoint ali Walleywag je ??e dober znak. Ako se vam pri potencialnem kandidatu pojavi samo kan??ek dvoma, je to zadosten razlog, da po??akate na primernej??o osebo. Najslab??e in najdra??je je zaposliti napa??nega ??loveka.


“If you can’t build your core features in 4 months, than don’t do it. Don’t over-develop and don’t be afraid to remove features.”

Za??nite z eno glavno funkcionalnostjo aplikacije. ??e je to nemogo??e zgraditi v 4 mesecih (do 3 programerji), je va??a ideja preobse??na. Premislite, kaj je bistvo aplikacije, vse ostalo pa prestavite na kasnej??i ??as. To, kar aplikacija po??ne, morate znati opisati v ENEM STAVKU! Razvoj naj poteka v smeri uporabni??kih potreb. Tudi do lastnih idej morate vzpostaviti kriti??no distanco, saj pogosto niso tisto, kar si va??i uporabniki resni??no ??elijo. Flickr je bil sprva aplikacija za on-line chat, pa poglejte, kje je danes.


“Approach VC with a company, not with a plan. Approach early.”

Dobro premislite, ??e VC dejansko potrebujete. V velikanski prednosti boste, ??e se dr??ite dveh pravil.
1) Pristopite kot podjetje, pa ??etudi samo z enim zaposlenim, beta verzijo aplikacije in v rde??ih ??tevilkah. Jemali vas bodo veliko bolj resno, kot nekoga, ki ima samo na??rt. Ideas are a dime a dozen. Dobra ideja je zgolj multiplikator (npr. x2, x500), izvedba pa je tista, ki postavi va??emu produktu resni??no vrednost. Na svetu je veliko pametnih ljudi, zato je skoraj gotovo, da ima “va??o” idejo tudi nekdo drug. Nima pa izvedbe in ta dejansko ??teje. Dobra ideja in dobra izvedba sta, seveda, recept za uspeh.
2) Pristopite takrat, ko kapitala ??e ne potrebujete – preden vam te??e voda v grlo. Tako boste dobili veliko bolj??e pogoje, saj ste bolj fleksibilni.


“Utility computing – outsource complexity and only focus on what you do best.”

S prevodom termina “utility computing” se niti ne bom ukvarjal, povedal bom samo bistvo. ??e bi zidali hi??e, kot gradimo aplikacije, bi imela vsaka hi??a svojo elektrarno. Zato se trendi pomikajo v drugo, racionalnej??o smer – pustite, da drugi delajo stvari namesto vas in se osredoto??ite na tisto, kar naredi va??o hi??o posebno. Outsource-ajte vse, kar se da in uporabite “pay as you go” model. Izogibajte se nakupu ultra zmogljivih stre??nikov, ki predstavljajo velik stro??ek, da ne omenjamo vzdr??evanja. Procesorsko mo?? in RAM raje najemajte in pla??ajte toliko, kot dejansko porabite. ??e vam uspe, boste preprosto najeli dodatne stre??nike in ??ir??o pipo. ??e vam res uspe, lahko za??nete premi??ljevati o nakupu lastne strojne opreme in kolokaciji. Do takrat pa so to nepotrebne komplikacije, ki vas utegnejo stati ??asa, ki ga najverjetneje nimate na pretek. Enako seveda velja za obstoje??e programske re??itve – ??e se npr. ukvarjate z izmenjavo datotek, uporabite Amazon S3, ??e potrebujete koledar, uporabite Google Calendar.


“After launch, monitor the website 24/7 and reply to blog posts. It’s a very efficient form of marketing.”

??e boste po “splavitvi” spletne aplikacije pokazali odzivnost na blogih, ki pi??ejo o vas, boste s tem dosegli ve?? stvari. Verjetno najpomembnej??a je t.i. ??love??ki faktor, saj boste (potencialnim) uporabnikom dali ob??utek, da za aplikacijo stoji ekipa, ki ji ni vseeno. Redno odgovarjajte na e-maile in ohranite osebni ton v komunikaciji. Zahvalite se uporabnikom, ki izpostavijo napake, ??e posebej pa bodite pozorni na tiste, ki predlagajo re??itve ali vam dajejo nasvete pri re??evanju te??av. ??e je le mogo??e, jih nagradite, pa ??etudi le s posebnim statusom v njihovem profilu, ki je viden ostalim uporabnikom. Spremljajte registracije novih uporabnikov – ve??krat ste tako lahko opozorjeni na npr. prihajajo??i “TechCrunch” efekt, ??e se registrira uporabnik z @techcrunch.com domeno. Morda gre za minute, a je vseeno dovolj, da zavrtite nekaj telefonov in postavite ekipo v stanje pripravljenosti.


“When building a community, keep the following things in mind: reward your top users, use guidelines rather than rules, keep emotions out of decisions and don’t play the blame game if you mess up.”

Precej razumljivo samo po sebi. Izpostavil bi le zadnji stavek… Priznajte svoje napake. Motiti se je ??love??ko in va??i uporabniki se zavedajo, da je za vsako spletno aplikacijo le skupina ljudi. V??asih gre kaj narobe, ne glede na to, kako pazljivi in natan??ni ste.


“Don’t punish your regular users to make an extra buck with ads.”

??e je ogla??evanje na strani va?? edini vir dohodka, je to seveda brezpredmetno. V nasprotnem primeru pa raje dobro premislite, ??e se prikazovanje oglasov va??im zvestim uporabnikom res izpla??a. Raziskave namre?? ka??ejo, da je profil uporabnikov, ki najve??krat kliknejo na oglas, precej specifi??en. Za oglase so bolj dovzetni uporabniki, ki niso va??i redni obiskovalci (recimo, da so va??o strani na??li na iskalniku) in uporabljajo Internet Explorer. ??e je le mogo??e, oglase skrijte pred va??imi rednimi obiskovalci (tistimi, ki naslov strani vpi??ejo direktno v naslovno vrstico), uporabljajo naprednej??e brskalnike (npr. Firefox) ali alternativne operacijske sisteme (npr. Linux). Va?? finan??ni izkupi??ek bo sicer malo manj??i, a po??eli boste splo??no odobravanje tistih, ki va??o aplikacijo dejansko uporabljajo.


“After you launch a new feature, do nothing except bug fixes for 14 days. Keep it as it is.”
Odpor proti spremembam je v ??love??ki naravi, zato uporabnikom pustite ??as, da se teh sprememb navadijo. Prito??be bodo vedno prisotne in najve??jo napako boste naredili, ??e boste popustili pritiskom glasne manj??ine in za??eli z nepremi??ljenim spreminjanjem aplikacije, da bo le ustrezala njihovim pri??akovanjem. ??e se prito??be po 14 dneh ??e kaj vrstijo, potem premislite, ??e morda res niste naredili kaj narobe. Hro????e, seveda, popravljajte sproti. In vedno si vzemite ??as, da se uporabnikom, ki te hro????e odkrijejo, osebno zahvalite.


“Develop a website as it’s only going to be used by disabled users. You will greatly improve usability for non-disabled users as well.”

Mislim, da tu ni kaj dodati. ??e bo lahko (napol) slepa oseba z uporabo Windows Narrator-ja na??la potrebne informacije, potem ste lahko skoraj prepri??ani, da enako velja za obi??ajne uporabnike.


“When developing mobile applications, don’t increase the font, just use bold text. Keep in mind that BlackBerry has CSS turned off by default.”

Vsak brskalnik na mobilnih telefonih je razred zase, zato se dr??ite tega pravila: 176 pixlov ??irine in 10k prenosa na posamezno stran.


“When optimizing, focus on frontend first. Backend (database) improvements are difficult and often not very significant.”

Pogosto je razlog za po??asno nalaganje strani v predstavitveni plasti, se pravi v strukturi HTML, CSS in Javascript datotek. Za analizo si namestite Firebug, nato pa ??e YSlow, ki spletno stran analizira in sam predlaga spremembe, ki jo utegnejo pohitriti. Glede na to, da je spreminjane strukture frontend-a neprimerno la??je, hitrej??e in varnej??e kot optimiziranje poslovne logike in poizvedb na podatkovni bazi, se je priporo??ljivo najprej lotiti tega. Ve?? si lahko preberete tukaj.


“Cache expensive database queries with Memcached.”

Memcached omogo??a, da najbolj zahtevne poizvedbe shranite v RAM in se tako izognete branju diska. Seveda ne bo ??lo brez spreminjanja delov kode, a razlike so velikanske.


“If Chuck Norris can wear pink, any man can.”

:)

Ostalo je ??e ogromno stvari, ki jih nisem omenil. Predvsem gre za vsebine petkovih delavnic, ki bi si zaslu??ile svojo objavo. O teh morda kdaj drugi?? ali na bolj oseben na??in, recimo ob skodelici kave… za tiste, ki jih zanima.

Objavil: besso        Kategorije: Uncategorized        Brez komentarjev

Brez komentarjev »

RSS feed za komentarje na to objavo. TrackBack URI

Komentiraj objavo

Èe želiš komentirati, moraš biti prijavljen.




Creative Commons License

p4b.nu is licensed under a
Creative Commons Attribution-Noncommercial-Share Alike 2.5 Slovenia License.

Mashin' it BrandNu style | We also Twitter | Contacts, inquiries and DJ bookings via contact [at] p4b.nu
Design by Ozren :: template by #kruh :: developed and hosted by APPoteka
Inspired by WordPress - Code is poetry
Entries and comments feeds Valid XHTML and CSS ^Top^