Úvod do profese
Přináším překlad článku od Roberta C. Martina (též známý jako Uncle Bob), autora knihy Clean Code a spoluautora Manifestu agilního vývoje. Byl tak laskav, že mi odpověděl na moji žádost a dal svolení k překladu článku Prelude to a Profession, ve kterém vysvětluje a obhajuje programátorskou přísahu.
27. listopadu 2015
Ve svém předchozím příspěvku, programátorská přísaha, jsem představil koncept etické přísahy pro programátory. V tomto článku bych chtěl poskytnout odůvodnění této přísahy. Proč si myslím, že je myšlenka přísahy důležitá?
Mnoho programátorů bude na myšlenku přísahy pravděpodobně reagovat negativně. Před několika lety bych byl rovněž silně proti. Přísaha znamená zříci se svobody. Přísaha znamená nedostatek důvěry. Přísaha znamená, že programátoři musí mít hranice. My, tradičně nezávislí, nemáme myšlenku takových omezení rádi. Chceme být necháni dělat si to, co považujeme v našich očích za správné.
Navíc není mezi programátory žádný opravdový konsensus. Neshodneme se na jazycích, na editorech, na disciplíně, na testování, na dokumentaci, na procesu a na mnohém dalším. Jak může taková neukázněná a nezávislá banda vůbec najít dostatečný společný základ na definování přísahy?
Nicméně sociální a politická situace se nedávno dramaticky změnila. Věřím, že nyní jsme na prahu krize důvěry. Kdybychom si dovolili pokračovat nekontrolovaně, tak by to hluboce a negativně změnilo naše průmyslové odvětví. K zachování naší svobody, nezávislosti, naší autority a samoorganizace, je potřeba určitého slibu, který musíme společnosti dát jako jeden muž.
Společnost ví, kdo jsme
V 50. a 60. letech o nás společnost věděla velmi málo, neměli jsme vliv na běžný život. V té době lidé věděli, že počítače existují. A pak tu byli lidé nazývaní počítačoví programátoři, ale to byli takoví akademici v laboratořích, nic co by vás mělo znepokojovat. Byli jsme součástí té mystické věci nazývané „pokrok“, o kterém každý věděl, že se děje.
V 70. a 80. letech každý nejspíš znal někoho, kdo znal počítačového programátora. Bylo nás stovky tisíc, možná miliony. Na vysokých školách existovaly obory Computer Science. Rodiče o nás věděli dost, aby povzbuzovali svoje děti do programování. Ale stejně jsme ještě byli bezvýznamní pro běžný život.
Pamatuji si z těch dob jednu reklamu. Manželé během nákupu potkali sousedku. Manžel byl vědátor. Brýle, pocket protector, kalkulačka… Používal kalkulačku k přepočítávání ceny na kilo. Sousedka si povídala s manželkou jako žena se ženou a vysvětlovala, že cena není vše, bla, bla, bla. Programátor byl naivní ve smyslu „skutečného světa“. Nemohl obstát před sousedčiným selským rozumem.
V 90 letech se počítače objevovaly ve spotřebičích. Programátoři byli všude. Každý znal jednoho nebo dva. Programátoři byli součástí střední třídy. Vskutku byli dobře známí, aby se stali ničemy.
Film Jurský park zavedl prototyp programátorského darebáka: Denis Nedry.
Občas byli programátoři i hrdiny. Sandra Bullock hrála pokornou hrdinku ve filmu Síť.
Pak přišel Matrix.
Pak splaskla bublina kolem DotCom. Steve Jobs a Bill Gates byla obecně známá jména. Každý znal programátora, který vydělal miliony. Každý znal programátora, který prodělal kalhoty. Ale co je mnohem důležitější, každý věděl, že počítačoví programátoři hráli ústřední roli v cyklech finančních boomů/krizí.
Programátoři se stali významní. Společnost nás začala uznávat jako nutnost.
Musím zmiňovat debakl heathcare.gov? To bylo softwarové selhání, které se mále zvrhlo ve významnou změnu politiky. Programátoři se stali známí pro vládu. Na okamžik opravu uvažovali o tom, že zřídí úřad, který bude podléhat přímo prezidentovi, na regulaci a monitorování software.
Nedávno jsem ve Stockholmu navštívil Mojang, tvůrce Minecraftu. Večer po přednáškách jsme šli na pivo. Seděli jsme v příjemné zahrádce za nízkým plotem.
Uprostřed naší konverzace na nás zíral mladý americký kluk, běžel k plotu, ukazoval na Jense Bergenstena a ptal se: „Vy jste Jeb?“ Jens a několik dalších programátorů dalo chlapci autogram a chvilku s ním poklábosili. Odešel s rozzářenýma očima.
Dnes jsou programátoři pro děti, které touží být jako oni, hrdinové. Stali jsme se pro ně vzorem.
Ale vrcholu bylo dosáhnuto teprve před několika týdny, kdy výkonný ředitel Volkswagen America obvinil některé programátory z napsání kódu, který dovolil určitým automobilům podvádět emisní standardy EPA.
Společnost ví, že můžeme být lumpové, hrdinové, vzory i obětní beránci. Společnost ví, že hrajeme důležitou roli. Společnost ví, že naše chyba může způsobit katastrofu.
Krize závislosti
Přesto všechno společnost stále ještě plně nerozumí tomu, jak moc jsou na nás závislí. Ani my programátoři tomu nerozumíme. Ale zvažte: Lidé v naší společnosti interagují se software každou vteřinu každého dne. Jsou stovky miliónů řádek kódu, který běží ve zdech vašeho domu, spotřebičích, automobilech, hodinkách, telefonech, požárních čidlech, zabezpečovacích zařízeních, ovládání garážových vrat a dokonce ve vypínačích světel.
Ve společnosti se nic se neuděje, aniž by to nebylo zprostředkováno software. Žádná uskutečněná obchodní transakce. Žádný přijatý zákon. Žádná provedená operace. Žádný vyvinutý lék. Žádný odbavený let. Žádné nastartované auto. Žádné zazvonění budíku. Žádné koupené potraviny. Žádný odehraný fotbalový zápas. Žádné zazvonění telefonu. Žádná rozsvícená světle. Bez software nic nefunguje.
Závislost na software je naprostá. Naše společnost potřebuje software, aby fungovala i na té nejmenší úrovni. Upřímně a doslovně, bez software všichni umřeme.
Profese
Tak tady jsme. Vládneme světu. Píšeme pravidla, která zaručují, že svět funguje. Jiní lidé si myslí, že píší pravidla, ale předávají tyto pravidla nám a my je teprve přepisujeme, aby stroje fungovali. My vládneme světu.
S ohromnou mocí by rovněž měla přijít velká zodpovědnost. Společnost nás opravdu bude volat k zodpovědnosti, pokud naše činy povedou ke katastrofě.
Přesto nás k sobě profesně nic nesvazuje. Nesdílíme žádnou etiku. Nesdílíme žádnou disciplínu. Nesdílíme žádné standardy. Naši zaměstnavatelé na nás nahlíží jako na dělníky. Jsem nástrojem jiných, kteří nám přikazují. Nemáme žádnou profesi.
Tohle nemůže pokračovat. Pokud se sami nezformujeme jako profese, tak nás k tomu společnost přinutí a definuje to za nás. A to nebude dobré ani pro společnost ani pro nás. Musíme být první.
Michael O. Church nedávno napsal silný článek popisující, jak by taková profese měla vypadat a proč je to důležité. Naléhám na vás, abyste zvážili jeho slova.
Tvrdí, že profese je založena na sdílených standardech dovedností a etiky. Což později vedlo k tomu, že jsem navrhl Programátorskou přísahu.
Diskuse o přísaze už začala a já ji vítám. Jako průmyslové odvětví bychom měli důkladně debatovat o naši etice. Jestli můj ubohý pokus o přísahu pomůže pobídnout k takové komunikaci, tak to splnilo účel.
Ovšem pamatujte, že přísaha je jen první krok k definování etiky a etika je jen první krok k definování profese. Je ještě hodně práce, kterou je potřeba vykonat.