Getting Real
- chapter 1 Úvod
- chapter 2 Startovní čára
- chapter 3 Stay Lean
- chapter 4 Priorities
- chapter 5 Feature Selection
- chapter 6 Proces
- chapter 7 The Organization
- chapter 8 Staffing
- chapter 9 Interface Design
- chapter 10 Code
- chapter 11 Words
- chapter 12 Pricing and Signup
- chapter 13 Promotion
- chapter 14 Support
- chapter 15 Post-Launch
- chapter 16 Conclusion
Úvod kapitola 1
Co je Getting Real?
Chcete vytvořit úspěšnou web aplikaci? Pak je ten pravý čas na Get Real. Getting Real představuje menší, rychlejší a lepší cestu tvorby softwaru.
- Getting Real je o vynechání všeho toho, co skutečnost jen představuje (tabulky, grafy, boxy, šipky, schémata, wireframy atd.), a věnování se skutečnému budování toho, co chceme vytvořit.
- "Méně" je leitmotivem Getting Real. Menší rozsah, méně softwaru, méně funkcí, méně papírování, méně všeho, co není podstatné (a většina toho, o čem si myslíte, že je podstatné, vlastně podstatné není).
- Getting Real je o tom zůstat malý a průžný.
- Getting Real začíná s uživatelským rozhraním, tedy tím, co uživatelé uvidí. Začíná s tím, jaký dojem má uživatel mít a pak staví pozpátku od tohoto bodu. Dokážete díky tomu udělat správné rozhraní dřív, než byste ho špatně naprogramovali.
- Getting Real je o postupném vývoji a snižování ceny změn. Getting Real je celý o vydávání verzí, ladění a neustálém zlepšování, což z něj dělá perfektní přístup pro budování webových aplikací.
- Getting Real přináší pouze to, co zákazníci potřebují a odstraňuje všechno, co nepotřebují.
Výhody Getting Real
Getting Real vás dostane k lepším výsledkům, protože vás bude nutit postavit se skutečným problémům, které chcete řešit, místo vašim představám o nich. Bude vás nutit vypořádat se s realitou.
Getting Real se vzdává funkční specifikace a ostatních přechodných dokumentů ve prospěch práce na skutečném výsledku. Funkční specifikace je iluze dohody, živá webová stránka je realita. Tu uvidí a budou používat vaši zákazníci. Na ní záleží. Getting real vás k ní dostane rychleji. A díky tomu budete rozhodovat na základě skutečnosti a ne abstraktních představ.
A konečně, Getting Real je stvořený pro webové aplikace. Starý model dodávání softwaru v krabicích a ročním čekání na update se už začíná vytrácet. Na rozdíl od instalovaného softwaru se mohou webové aplikace neustále vyvíjet a den ode dne měnit. Getting Real vymáčkne z této výhody maximum.
Jak psát "dobrý" software
"Dobrý" styl psaní je pregnantní. Věta by neměla obsahovat, žádná zbytečná slova, odstavec žádné zbytečné věty, ze stejného důvodu, proč by kresba neměla obsahovat zbytečné čáry a stroj zbytečné části. To neznamená, že by měl autor textu psát pouze krátké věty, nebo že by se měl vyhnout podrobnostem a předmět pojmout jen obecně. Ne. Ale každé slovo musí mít svou váhu.
—William Strunk Jr., "The Elements of Style"Už žádné zbytečnosti
Postaru: zdlouhavý, byrokratický proces ve stylu "tohle děláme, abysme měli krytý záda". Obvyklý výsledek: nafouknutý, nezajímavý software, ze kterého průměrnost přímo křičí. Fuj.
Getting Real vás zbavuje…
- Časových odhadů na měsíce nebo dokonce roky dopředu
- Funkčních specifikací vycucaných z prstů
- Debat o škálovatelnosti
- Nekonečných pracovních schůzek
- "Nutnosti" najmout tucty zaměstnanců
- Nic neříkajících čísel verzí
- Nedotknutelných plánů vývoje, které předvídají skvělou budoucnost
- Nekonečných možností nastavení
- Outsourcované zákaznické podpory
- Nerealistického testování s uživateli v laboratorních podmínkách
- Zbytečného papírování
- Direktivní hierarchie
Abyste vytvořili skvělý software, nepotřebujete balík peněz ani obrovský tým ani zdlouhavý vývojový cyklus. To jsou ingredience pomalých, složitých a neměnných aplikací. Getting real na to jde opačně.
V této knize Vám ukážeme…
- Proč je důležité mít filozofii
- Proč je dobré zůstat malou firmou
- Jak budovat méně
- Jak rychle měnit nápady v realitu
- Jak vybírat lidi do týmu
- Proč byste měli designovat zevnitř ven
- Proč je psaní tak důležité
- Proč byste měli dávat do aplikací méně funkcí než konkurence
- Jak propagovat vaší aplikaci
- Tajemství úspěšné podpory zákazníků
- Tipy jak udržet drajv i po spuštění aplikace
- …a mnoho dalšího
Zaměříme se na celkový obraz. Nebudeme vás zatěžovat ukázkami kódu nebo CSS triky. Budeme se držet základních myšlenek a přístupů, které tvoří proces Getting Real.
Je tahle kniha pro vás?
Jste podnikatel, designér, programátor nebo obchodník a pracujete na skvělém nápadu.
Je vám jasné, že stará pravidla už neplatí. Distribuovat svůj software na CD-ROMech jednou za rok? Možná tak v roce 2002. Čísla verzí? Zbytečnost. Potřebujete budovat, spustit a ladit. Pak protřepat a opakovat.
Nebo jste možná do vlaku pružného vývoje a podnikových struktur nenaskočili, ale chtěli byste se o nich dozvědět víc.
Pokud na vás výše uvedené sedí, je tato kniha určena právě vám.
Poznámka: Ačkoli tato kniha klade důraz na budování web aplikací, hodně ze zde uvedených myšlenek a přístupů je aplikovatelných i mimo vývoj software. Doporučení ohledně malých týmů, rychlého tvoření prototypů, očekávání iterací a mnoho dalších, které zde prezentujeme, vám může posloužit ať už začínáte podnikat, píšete knihu, navrhujete webovou stránku, nahráváte album nebo celou řadu jiných činností. Když už jednou začnete s Getting Real v jedné oblasti svého života, zjistíte, že uvedené koncepty můžete použít v široké paletě aktivit.
O 37signals
Naše produkty
Co děláme
37signals je malý tým, který vytváří jednoduchý, cílený software. Naše produkty vám pomohou spolupracovat a organizovat. Více než 350 000 lidí a malých firem používá při své práci naše web aplikace. Jeremy Wagstaff z Wall Street Journal napsal: "Produkty 37signals jsou krásně jednoduché, elegantní a intuitivní nástroje, vedle kterých vypadá obrazovka Outlooku jako softwarový ekvivalent mučírny." Naše aplikace vás na skřipec nikdy nenatáhnou.
Náš modus operandi
Jsme přesvědčení, že software je příliš složitý. Příliš mnoho funkcí, příliš mnoho tlačítek, moc věcí, které se musíte naučit. Naše produkty nabízí méně než konkurence — záměrně. Budujeme produkty, které fungují chytřeji, máte z nich lepší pocit, umožňují vám dělat věci tak, jak chcete vy a snadněji se používají.
Naše produkty
V době publikování této knihy máme pět komerčních produktů a jeden framework pro webové aplikace, které jsme uvolnili jako open source.
Basecamp staví správu projektů na hlavu. Místo Ganttových tabulek, krásných grafů a excelovských dokumentů plných statistik, Basecamp přináší diskusní fóra, to-do listy, jednoduché plánování, kolaborativní psaní a sdílení souborů. Stovky tisíc našich uživatelů vám potvrdí, že je to lepší cesta. Farhad Manjoo ze serveru Salon.com řekl "Basecamp představuje budoucnost softwaru na webu."
Campfire přináší jednoduchý skupinový chat do podnikového prostředí. Chytré firmy vědí, jak cenná může být konverzace v reálném čase, kterou navíc najdete zaznamenanou i za dva měsíce.
Backpack představuje alternativu k těm matoucím a složitým správcům osobních informací typu "zorganizujte si život ve 25 jednoduchých krocích". Přístup Backpacku ke stránkám, poznámkách, to-do listům a automatickým připomenutím na mobil nebo email je novátorský v kategorii produktů, které trpí status-quo-itózou. Thomas Weber z Wall Street Journal prohlášil, že je to nejlepší aplikace ve své třídě a David Pogue z New York times ho jako jako "very cool" organizační nástroj.
Writeboard vám umožní psát, sdílet, upravovat a porovnávat text, ať už na něm pracujete sami nebo s někým jiným. Je to osvěžující alternativa k přeplněnému textovému editoru, který představuje příslovečné "dělo na komára" pro 95% toho, co chcete napsat. John Gruber ze serveru Daring Fireball řekl, "Writeboard je možná ta nejčistší, nejjednodušší web aplikace, kterou jsem kdy viděl." Web-guru Jeffrey Zeldman prohlásil, "Ty brilantní hlavičky ze 37signals to dokázaly znovu."
Ta-da List může obsahovat všechy vaše to-do listy, přehledně, online na jednom místě. Nechte si přístup k jednotlivým to-do pro sebe nebo je sdílejte s ostatními. Není jednodušší způsob, jak si udržet přehled v úkolech a dobrat se výsledků. K dnešnímu dni bylo vytvořeno přes 100 000 to-do listů s téměř 1 000 000 položek.
Ruby on Rails, je pro vývojáře, představuje plnohodnotné, open source vývojové prostředí v programovacím jazyce Ruby, které jim umožní snadno a rychle budovat skutečné aplikace. Rails se postará o tu namáhavou práci, takže vy se můžete soustředit na nápady. Nathan Torkington z nakladatelství O'Reilly řekl "Ruby on Rails jsou neuvěřitelné. Když je používáte, je to jako dívat se na kung-fu film, kde se tucet zloduchů-vývojových-prostředí chystá na to, jak namlátí tomu malému nováčkovi, aby v zápětí jejich zadky byly nakopány na mnoho vynalézavých způsobů." Tuhle hlášku jsme nemohli vynechat.
Více o našich produktech a naší firmě najdete na webu www.37signals.com.
Varování, zřeknutí se odpovědnosti a jiné preventivní údery
Abychom se s tím nemuseli dál zatěžovat, tady jsou naše odpovědi na stížnosti, které tu a tam slýcháme:
"Pro mě tyhle postupy fungovat nebudou."
Getting real je systém, který úžasně fungoval pro nás. Neříkáme, že je to přístup vhodný pro každý projekt pod sluncem. Pokud stavíte zbraňový systém, atomovou elektrárnu, bankovní systém pro milióny zákazníků, nebo jiné životně důležité/finančně citlivé systémy, budete místy kroutit hlavou nad naším laissez-faire přístupem. Klidně buďte opatrnější.
A nemusí to být všechno nebo nic. Třeba nebudete moci využít Getting Real naplno, ale nevyhnutelně v něm najdete alespoň pár nápadů, které dokážete ve firmě protlačit.
"Tohle není nic nového."
Netvrdíme, že jsme tyto postupy vynalezli. Mnoho z níže uvedených konceptů se v té nebo jiné podobě vyskytuje už dlouhou dobu. Nečilte se, když vám některé naše rady připomenou něco, co jste už četli na tom a tom blogu nebo v knize vydané před 20 lety. To je rozhodně možné. Tyto techniky nejsou v žádném případě jedinečné pro 37signals. Říkáme vám jen, jak pracujeme a co nám fungovalo.
"Váš pohled je příliš černobílý."
Pokud na vás náš tón bude působit moc "všeználkovsky", vydržte to. Myslíme si, že je lepší prezentovat nápady v odvážných větách, než kolem nich mlžit. Jestli výsledek působí namyšleně nebo arogantně, tak ať. Radši budeme provokativní, než abychom všechno rozmělnili do samých "záleží na tom…" Nevyhnutelně přijdou chvíle, kdy budete potřebovat naše pravidla ohnout nebo porušit. A některé postupy se na vaši situaci nebudou hodit. Použijte svůj úsudek a představivost.
"Tohle v naší firmě fungovat nebude."
Myslíte, že jste příliš velká firma pro Getting Real? Dokonce i Microsoft používá Getting Real a pochybujeme, že jste větší než oni.
I když vaše firma obvykle běží podle dlouhodobých plánů s velkými týmy, stále existují způsoby, jak využít Getting Real. Prvním krokem je rozdělení na měnší jednotky. Když je v něčem zapojeno příliš mnoho lidí, nic se nedodělá. Čím jste menší, tím rychleji — a lépe — se vám budou věci dělat.
Samozřejmě to může vyžadovat přesvědčovací schopnosti. Ukažte jim tuto knihu. Nastartujte u vás práci podle ní. Ukažte jim skutečné výsledky, kterých dosáhnete rychleji a s menším týmem.
Vysvětlete, že Getting Real představuje způsob testování nových konceptů bez velkých investic a s malým rizikem. Pokuste se při menším projektu odpoutat od hlavních firemních procesů a zkusit, jestli to bude fungovat. Ukažte jim výsledky.
Nebo můžete zkusit být neviditelní. Pracujte tímto způsobem tajně a předveďte až konečné výsledky. Tento přístup použil tým vývojářů Start.com, když použili Getting Real v Microsoftu. Robert Scoble, v té době Technical Evangelist v Microsoftu, o tom řekl: "Sledoval jsem tým Start.com při práci. Neptali se na svolení. Mají šéfa, který jim poskytl krytí. Vždycky si ukousli menší kus, zapracovali na něm a reagovali na zpětnou vazbu."
Budování Start.com v Microsoftu
Ve velkých společnostech jsou mítinky a pracovní procesy standardní součástí práce. Měsíce se stráví plánováním funkcí a dohadováním podrobností s cílem dosáhnout všeobecné dohody na tom, co je "to správné" pro zákazníka.
To je možná správný přístup ke krabicovému softwaru, ale na webu máme neskutečnou výhodu. Prostě to spusťte! Nechte uživatele, aby vám řekli, jestli je tohle ta správná věc. A když nebude? No co, jste schopni to opravit a publikovat na web ještě ten samý den, když budete chtít! Nikdo nemá větší slovo než zákazník — odolejte tlaku na zdlouhavé pracovní schůzky a dohadování. Prostě to spusťte a one se ukáže, jak to je.
To se mnohem snadněji řekne, než udělá — předpokládá to:
Měsíce plánování nejsou nutné
Měsíce psaní specifikací nejsou nutné — specifikace by měly získat pevné základy i všechny podrobnosti během fáze vývoje. Nesnažte se uzavřít všechny nejasné záležitosti a vyleštit každý detail ještě předtím, než začnete na projektu pracovat.
Spusťte s méně funkcemi, ale s kvalitními funkcemi
Nemusíte hned spustít kompletní verzi s mnoha funkcemi. Poskytněte uživatelům menší kousky, které mohou postupně strávit.
Pokud se vyskytnou menší chyby, zveřejněte svou aplikaci okamžitě, jakmile budete mít klíčové funkce a opravujte chyby postupně, až po spuštění. Čím rychleji se dostanete ke zpětné vazbě od uživatelů, tím lépe. Něco může skvěle vypadat na papíře, ale v praxi zjistíte, že je to nevhodné. Čím dřív zjistíte, co je špatně, tím lépe.
Pokud budete vyvíjet rychle a reagovat na požadavky zákazníků, vytvoříte si s nimi vztah. A pamatujte, cílem je získat si zákazníky tím, že vytvoříte to, co chtějí.
—Sanaz Ahari, Program Manager of Start.com, MicrosoftStartovní čára kapitola 2
Dělejte méně
Dělejte méně než vaše konkurence
Tradiční moudrost říká, že pokud chcete přemoci vaše soupoře, musí vás být alespoň o jednoho víc. Jestli mají čtyři funkce, potřebujete jich pět (nebo patnáct nebo dvacetpět). Jestliže utrácejí X, vy musíte utratit XX. Jestliže mají dvacet vy musíte mít třicet.
Tento přístup "přečíslení" konkurence vede do slepé uličky. Je to drahý, obranný a paranoidní způsob vývoje produktů. Paranoidní společnosti, které se jen brání nejsou schopny myslet dopředu a zabývají se jen minulostí. Takové firmy nevedou – jen následují.
Jestli chcete budovat firmu, která jen následuje, můžete tuto knihu s klidem odložit.
Takže co dělat? Odpověď je "méně". Dělejte méně než vaši konkurenti abyste je dostali. Vyřešte jednoduché problémy a ty složité, komplikované a nepříjemné nechte na ostatních. Místo přečíslení zkuste opak. Místo více zkuste dělat méně.
Budeme se konceptem "Dělat méně" zabývat v průběhu celé této knihy, ale jako předkrm vám nabízíme několik významů "dělat méně":
- méně funkcí
- méně možností nastavení
- meně lidí a firemní struktury
- méně mítinků a abstrakcí
- méně slibů
(from Salon.com People | Ian MacKaye)
kapitola 3
(from Less is More: Jumpstarting Productivity with Small Teams)
kapitola 4
kapitola 5
Proces kapitola 6
Honba za funkčním softwarem
Rychle udělejte něco funkčního
Funkční software je ten nejlepší způsob, jak získat drajv, sestavit tým a zahodit nápady, které nefungují. Měla by to od prvního dne být vaše priorita.
Je v pořádku, když toho uděláte méně, přeskočíte podrobnosti a využijete zkratek v procesu, které vám pomohou dostat se rychleji k funkčnímu softwaru. Jakmile ho už jednou budete mít, získáte mnohem přesnější představu o tom, jak pokračovat. Vymyšlené příběhy uživatelů, nákresy stránek (wireframy) i HTML prototypy představují jen více či méně zdařilé přiblížení k realitě. Funkční software je realita.
Díky skutečnému, funkčnímu softwaru se všichni dostanou blíž k pochopení o co opravdu jde a ke skutečné dohodě. Vyhnete se bouřlivým hádkám nad nákresy a odstavci, o kterých se později ukáže, že na nich stejně nezáleželo. Zjistíte, že části, které jste považovali za triviální, jsou naprosto klíčové.
Reálné podněty vedou k reálným akcím. A jedině tak se dostanete k pravdě.
Práce na funkční věci je cesta k dohodě
Když se skupina různých lidí rozhodne vyzkoušet a najít, co je harmonické… jejich názory se budou mít tendenci zbližovat, pokud budou modelovat plnohodnotnou, reálnou věc. Samozřejmě, pokud budou kreslit náčrtky a hýřit nápady, neshodnou se. Ale pokud se začne pracovat na funkční věci, většinou se dojde k dohodě.
—Christopher Alexander, profesor architektury(z Contrasting Concepts of Harmony in Architecture)
Udělejte funkční verzi tak rychle, jak je to jen možné
Myslím, že jsem nikdy nebyl zapojen do softwarového projektu — ať už velkého nebo malého — který by byl úspěšný z hlediska časového plánu, nákladů nebo funkčnosti, který by začal dlouhým plánováním, diskutováním a kde by současně neprobíhal i skutečný vývoj. Je prostě moc jednoduché, a někdy i zábavné, ztrácet drahocenný čas vynalézáním funkcí, které se v reálném nasazení ukáží jako zbytečné nebo neimplementovatelné.
To platí pro všechny úrovně vývoje a "rozběhněte něco funkčního" je mantra i pro menší části. Platí nejen pro projekt jako celek, ale neméně pro vývoj menších komponent, ze kterých je cela aplikace sestavena.
Pokud je dostupná funkční implementace nějaké klíčové části, chtějí vývojáři porozumět tomu, jak bude pracovat s jejich částí aplikace a obecně se budou snažit použít ji co nejrychleji. I kdyby nebyla prvotní implementace dokonalá nebo úplná, ta brzká spolupráce většinou povede k dobře navrženým rozhraním a funkcím, které dělají přesně to, co je třeba.
—Matt Hamer, vývojář a product manager, Kinja
kapitola 7
(from Where do These People Get Their (Unoriginal) Ideas?)
kapitola 8
(from How To Find And Keep The Perfect VA)
(from Reduce the risk, hire from open source)
(from How to Write More Clearly, Think More Clearly, and Learn Complex Material More Easily)
kapitola 9
kapitola 10
(from There is No CODE that is more flexible than NO Code!)
(from And, the rest of the (AIGA Conference) story)
kapitola 11 -->
kapitola 12
(from What is customer evangelism?)
(from 10 Steps to a Hugely Successful Web 2.0 Company)
kapitola 13
kapitola 14
kapitola 15
kapitola 16
gettingreal [at] 37signals [dot] com
Děkujeme za pozornost a hodně štěstí!
37signals zdroje
Překlad
Děkujeme všem překladatelům: Daniel Srb, Jan Korbel.
Část knihy není ještě do češtiny přeložena napište 37signals Jestli chcete s překladem pomoci. Celá kniha je k dispozici v angličtině.
