37signals logo Getting Real Overview

Buy the book

Buy Getting Real in PDF or paperback.

Job Board

Gig Board

Looking for design, copywriting, or programming help with your project? Check the Gig Board.

Getting Real



Ú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.

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…

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…

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, Microsoft




Startovní čá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ě":



—Dave Thomas, The Pragmatic Programmers

—David Greiner, founder, Campaign Monitor

—Malcolm Gladwell, author (from A Few Thin Slices of Malcolm Gladwell)


[(Disclive) (The Show). ]

—A comment from Signal vs. Noise




Seth Godin, author/entrepreneur (from Be a Better Liar)

—Michael Reining, co-founder, MindValley & Blinklist


—Khoi Vinh, Subtraction.com

—Ian MacKaye, member of Fugazi and co-owner of Dischord Records
(from Salon.com People | Ian MacKaye)


kapitola 3



—Andrew Hunt, The Pragmatic Programmers


—Marc Hedlund, entrepreneur-in-residence at O'Reilly Media

—Steve McConnell, Chief Software Engineer at Construx Software Builders Inc.
(from Less is More: Jumpstarting Productivity with Small Teams)


—Jef Raskin, author (from "Why Software Is the Way It Is")


—Khoi Vinh, Subtraction.com

—Edward Knittel, Director of Sales and Marketing, KennelSource


kapitola 4

—Dave Thomas, The Pragmatic Programmers

Guy Kawasaki, author (from Make Mantra)


—Patrick Lafleur, Creation Objet Inc. (from Signal vs. Noise)




—David Greiner, founder, Campaign Monitor


—Dare Obasanjo, Microsoft (from Scaling Up and Startups)




kapitola 5





—-Derek Sivers, president and programmer, CD Baby and HostBaby
(from Say NO by default)










—Steve Jobs, CEO, Apple (from The Seed of Apple's Innovation)


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


Seth Godin, author/entrepreneur




—Havoc Pennington, tech lead, Red Hat (from Free software and good user interfaces)


—Derek Sivers, president and programmer, CD Baby and HostBaby


—Dave Thomas, The Pragmatic Programmers

—Derek Sivers, president and programmer, CD Baby and HostBaby


—Gina Trapani, web developer and editor of Lifehacker, the productivity and software guide

—Merlin Mann, creator and editor of 43folders.com

—Andre Torrez, programmer and VP of Engineering at Federated Media Publishing


kapitola 7



—Joel Spolsky, software developer, Fog Creek Software
(from Where do These People Get Their (Unoriginal) Ideas?)


—Lisa Haneberg, author (from Don't Let Meetings Rule!)




kapitola 8

—Fred Brooks

—Joel Spolsky, software developer, Fog Creek Software (from Hitting the High Notes)


—Suzanne Falter-Barns, author/creativity expert
(from How To Find And Keep The Perfect VA)


—Jarkko Laine, software developer
(from Reduce the risk, hire from open source)




—Eric Stephens, BuildV1.com


—Dustin J. Mitchell, developer (from Signal vs. Noise)

—Michael A. Covington, Professor of Computer Science at The University of Georgia
(from How to Write More Clearly, Think More Clearly, and Learn Complex Material More Easily)


kapitola 9

—Josh Williams, founder, Blinksale






John Gruber, author and web developer (from Interview with John Gruber)




—Mark Hurst, founder of Creative Good and creator of Goovite.com
(from The Page Paradigm)




—Edward Knittel, Director of Sales and Marketing, KennelSource


kapitola 10


—Brad Appleton, software engineer
(from There is No CODE that is more flexible than NO Code!)


—Charles Jolley, Managing Director at Nisus Software (from Signal vs. Noise)


—Martin Fowler, Chief Scientist, ThoughtWorks (from Is Design Dead?)

Nicholas Negroponte, Professor of Media Technology at MIT
(from And, the rest of the (AIGA Conference) story)




—Todd Dominey, founder, Dominey Design
(from Trying on Backpack)


kapitola 11 -->

—Linus Torvalds, creator of Linux (from: Linux: Linus On Specifications)

—Mark Gallagher, corporate intranet developer (from Signal vs. Noise)


—Gina Trapani, web developer and editor of Lifehacker, the productivity and software guide




—Tom Smith, designer and developer (from I hate Lorem Ipsum and Lorem Ipsum Users)




kapitola 12

—Ben McConnell and Jackie Huba, authors of Church of the Customer Blog
(from What is customer evangelism?)

—Derek Sivers, president and programmer, CD Baby and HostBaby (from Free Promo Track)








kapitola 13

—Josh Williams, founder, Blinksale








—David Greiner, founder, Campaign Monitor








—David Pogue, columnist, New York Times (from What's in a Product Name?)


kapitola 14

—David Greiner, founder, Campaign Monitor




—Michael Reining, co-founder, MindValley & Blinklist






—Greg Sherwin, Vice President of Application Technology, CNET, and Emily Avila, Principal, Calypso Communications (from A Primer for Crisis PR)


kapitola 15



—Gina Trapani, web developer and editor of Lifehacker, the productivity and software guide


—Mary Hodder, information architect and interaction designer (from The Definition of Beta)

—Jim Coudal, founder, Coudal Partners












kapitola 16

gettingreal [at] 37signals [dot] com

Signal vs. Noise

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ě.