Babbage i Ada: Startup koji nikad nije shippao
Dva viktorijanska geeka su smislili računalo sto godina prije struje, i to niko nije shippao
# da, poglavlje ima pjesmu. ne, nitko ne zna zašto.
London, negdje oko 1833. Zamisli salon — mramorni kamin, svijeće u mjedenim čašicama, gospoda u crnim frakovima naslonjena na naslonjače i dame u haljinama koje šušte glasnije od razgovora. Netko svira klavir u kutu. A u sredini prostorije, opkoljen znojnim znanstvenicima i dosađenim vojvodama, stoji stroj od bakra i čelika koji — okrećeš li ručicu — računa. Ne recitira, ne zabavlja, ne pjeva. Računa. I to je, u toj sobi, u tom trenutku, najveća atrakcija u Londonu — otprilike kao da danas na zabavi netko izvadi telefon koji sam rješava poreznu prijavu, samo bez struje, bez ekrana i bez ičega što bismo danas prepoznali kao „pametno”. Sve su to zupčanici i poluge, viktorijanski sat na steroidima.
Britansko Carstvo je na vrhuncu svoje samouvjerenosti. Para pokreće brodove i tvornice, pruge se pružaju kroz krajolik kao nove vene, a mjed i željezo su ono što je danas, ne znam, umjetna inteligencija — riječ koju izgovoriš na zabavi da zvučiš kao da razumiješ budućnost. Samo postoji jedan problem. Cijelo to carstvo, sva ta trgovina, navigacija i osvajanje, ovise o brojevima. A brojevi su, iskreno, katastrofa.
Logaritamske tablice — one debele knjige pune redova brojki, bitne za navigaciju, inženjerstvo i osiguravajuća društva — računali su ljudi rukom. (Logaritam je, pojednostavljeno, način da se teško množenje i dijeljenje velikih brojeva pretvori u lakše zbrajanje i oduzimanje; prije kalkulatora to je bio jedini način da brod izračuna gdje se, dovraga, nalazi na oceanu.) Računali su ih ljudi s perom, svijećom i umornim očima, satima, danima, ponavljajući isto zbrajanje dok im se pogled ne zamuti. I onda bi pogriješili. Jedna pogrešna cifra na stranici 214, i brod koji je vjerovao toj tablici završio bi na grebenu umjesto u luci. Ne metaforički. Stvarno. Ljudi su umirali zbog krivo prepisane brojke.
U tom svijetu riječ „znanstvenik” tek je egzotična, novoskovana kovanica — većina ljudi koji se bave ovakvim stvarima nisu profesori na plaći, nego gospoda s dovoljno nasljedstva da im prava karijera nikad ne zatreba. Baviš se prirodnom filozofijom (tako se onda zvalo ono što danas zovemo „znanost”) kao što se baviš lovom na lisice: iz strasti, s vremenom koje drugi jednostavno nemaju. Matematika je, u salonima, pola znanost, pola društvena predstava — nešto čime zabavljaš gošće između čaja i večere, poput mađioničarskog trika, samo s jednadžbama umjesto kartama.
U tu sobu, u tu atmosferu mjedi, svile i tihog prezira prema običnom radu rukama, ulaze dvoje ljudi koji ne pripadaju posve nikome. On, Charles Babbage, razdražljivi je genijalac koji je carstvu htio dati stroj da ga greške u računanju više ne koštaju brodova i novca. Ona, Ada Lovelace, kći je skandaloznog pjesnika Lorda Byrona — onog s pjesmama, ljubavnicama i reputacijom koja je u to doba bila otprilike ono što bi danas bila rock-zvijezda na naslovnicama tabloida — odgojena da joj matematika bude lijek protiv naslijeđene, kako se onda vjerovalo, ludosti. Umjesto lijeka, pronašla je viziju koju ni sam izumitelj nije posve vidio. Zajedno će zamisliti nešto što se, čisto tehnički, neće moći sagraditi još sto pedeset godina. Ali to nikoga u ovoj priči neće spriječiti da pokuša.
Zamisli da ti život ovisi o tablici brojeva koju je neki jadnik prepisivao rukom, uz svijeću, s mamurlukom, negdje 1780-nešto. Zvuči smiješno dok ne shvatiš da su baš takve tablice — logaritamske, nautičke, astronomske — bile jedino što je stajalo između broda i hridi. Kapetan na otvorenom moru nije imao GPS. Imao je sekstant — mali ručni instrument kojim mjeriš kut između horizonta i neke zvijezde ili Sunca, i iz tog kuta, uz malo računanja, izvučeš gdje se točno nalaziš na tom golemom plavom ničemu — te knjigu brojeva koju je sastavio čovjek, olovkom, uz veliku šansu da je negdje u redu 4.732 zabrljao predznak. Ne mala šansa, uzgred — u jednom pregledu britanskih navigacijskih tablica iz tog doba nađeno je preko tisuću grešaka. Tisuću. To ti nije tipfeler u imenu grada, to je razlog zašto brod umjesto u luku plovi na greben.
Charles Babbage je to gledao i, iskreno, pomalo je prolupao od bijesa. Ne figurativno — stvarno je, prema legendi koja kola i danas, jednom prilikom bijesno bacio primjerak pogrešne tablice preko stola i izvalio rečenicu koja mu je, opravdano, ostala urezana u nadgrobni spomenik povijesti: „I wish to God these calculations had been executed by steam.” („Volio bih, Bože, da su ovi računi izvedeni na paru.”) Ne, nije mislio da će mu netko zapaliti kotao pod stolom — para mu je ovdje samo zgodna metafora za ono što danas zovemo automatizacijom, jer stroj koji je zatim krenuo graditi nije imao veze s parom niti s bilo kakvim motorom; okretao se rukom, ručicom, kao stari brusni kamen, samo puno skuplji i puno bahatiji.
Pa je krenuo graditi Difference Engine (Stroj razlika) — stroj koji bi mehanički, okretanjem zupčanika, računao polinomske funkcije metodom konačnih razlika i sam ispisivao rezultat, bez ruke koja prepisuje i pri tome pogriješi. Zvuči kompliciranije nego što je: polinomska funkcija je samo matematičko pravilo po kojem iz jednog broja predvidljivo dobiješ sljedeći — kao tablica kvadrata ili logaritama, gdje svaki novi red nastaje po istom fiksnom receptu. Metoda konačnih razlika je trik kako se ta pravila mogu izračunati čistim zbrajanjem i oduzimanjem, korak po korak, bez potrebe za pametovanjem — što znači da to, u principu, može raditi i tupi komad mehanike, ako ga složiš dovoljno precizno. Ideja je bila genijalna i, što je rjeđe, praktično izvediva: matematika iza toga postojala je desetljećima, trebalo je samo — samo! — sagraditi stroj s tisućama preciznih mjedenih dijelova, u doba kad je precizna mjedena obrada bila luksuz, a ne standard.
Britanska vlada je to kupila. Doslovno — 1823. odobrili su Babbageu financiranje, u ono doba fantastičnu svotu koja je s vremenom narasla na oko 17.000 libri, što je, preračunato u kupovnu moć, otprilike cijena dva ratna broda. Za jedan računski stroj. Vlada koja plaća znanstveniku da izgradi kalkulator zvuči kao startup priča iz 2021., ne iz viktorijanskog Londona — investitor s dubokim džepom, vizionar s golemom idejom i potpuni izostanak ikoga u prostoriji tko bi pitao „a kad ćemo to vidjeti da radi?”
Do 1832. postojao je samo mali funkcionalni prototip — dio stroja, dovoljan da pokaže da ideja radi, ali daleko od cjeline koja bi ikoga spasila od nasukavanja na greben. Do 1842., nakon skoro dvadeset godina i količine novca koja bi danas kupila cijelu ulicu u centru Londona, vlada je izračunala nešto puno jednostavnije od Babbageovih polinoma: da je dosta. Povukli su financiranje. Difference Engine, u svom punom, zamišljenom obliku, nikad nije sagrađen za njegova života.
I tu bi priča o još jednom briljantnom čudaku koji je propao mogla stati — samo da Babbage, umjesto da nauči lekciju i smiri se, nije već tada u glavi projektirao nešto neusporedivo veće i luđe. Dok mu je vlada gasila prvi projekt, on je u mislima crtao drugi, koji nije trebao samo računati tablice. Trebao je računati bilo što.

Analytical Engine: vaporware stoljeća
Kad je Babbage konačno prihvatio da Difference Engine neće dobiti ni pare više od britanske vlade, napravio je ono što danas radi svaki osnivač startupa kojem je prvi proizvod propao još u fazi beta-testiranja: smislio je novi, deset puta ambiciozniji. Zvao se Analytical Engine, i ovo odmah zapamti — to više nije bio kalkulator. Difference Engine je znao računati jednu vrstu tablica, i to je bilo to. Analytical Engine je trebao računati bilo što. Opća namjena. Programabilnost. Riječi koje danas nabacuješ u svaki startup pitch bez razmišljanja, Babbage je smislio već 1837. godine, dok je kraljica Viktorija tek sjedala na tron.
Podjela je genijalna i vrijedi ju zapamtiti, jer ćeš je gledati kroz cijelu ovu knjigu, samo u drugim kostimima. Stroj je imao „mill” — mlin, dio koji vrti brojeve i obavlja računanje — i „store”, spremište gdje podaci čekaju dok na njih ne dođe red. Zvuči poznato? Mlin je procesor. Spremište je memorija. Babbage je, od mjedi i zupčanika, izmislio arhitekturu koju danas ima svaki mobitel u tvom džepu, stotinjak godina prije nego što je postojala elektronika da je ozbiljno pokrene. A program — ono što je stroju govorilo što da radi i kojim redom — dolazio je na bušenim karticama, ideji ukradenoj s tkalačkih strojova Josepha Jacquarda, koji su tako tkali uzorke na tkanini: rupa na kartici znači „digni nit”, nema rupe znači „ostavi je”, i eto ti uzorka. Babbage nije izmislio programiranje iz ničega. Ukrao ga je iz tekstilne industrije. Najbolje ideje uvijek dolaze odnekud drugdje, samo to rijetko piše na naslovnici.
A onda dolazi drugi klasik: svađa s inženjerom. Joseph Clement bio je majstor precizne izrade — čovjek koji je stvarno znao napraviti dijelove dovoljno fino da zupčanici ne škripe kao seoska kola. Bez njega Babbage je bio samo čovjek s crtežima. Problem je bio što je Clement radio sporo, naplaćivao skupo i inzistirao da alati i nacrti napravljeni za projekt ostanu njegovi, a ne Babbageovi. Kad je 1833. spor konačno eskalirao i novac za taj krug rada presušio, Clement je otpustio radnike i zadržao alat. Babbage je, u praktičnom smislu, ostao bez tima, bez opreme i bez prototipa — sve to godinama prije nego što je vlada i formalno, 1842., digla ruke od Difference Enginea. Mala digresija: u jednoj agenciji za koju sam radio morao sam potpisati ugovor po kojem svaki moj sljedeći osobni projekt, onaj u slobodno vrijeme, postaje vlasništvo firme. Nitko me nije pitao želim li to ili ne — a Clement bi, siguran sam, kimnuo s razumijevanjem.
Novac je, kao i uvijek, bio pozadinska glazba cijele drame. Britanska vlada je u Difference Engine ulila iznos koji bi danas, preračunat, kupio nekoliko lovačkih dvoraca — i za to dobila hrpu nedovršenih zupčanika u sanduku. Kad je Babbage došao tražiti novac za Analytical Engine, dobio je ono što svaki osnivač koji je već jednom zabrljao dobije od investitora: ljubaznu, ali čvrstu tišinu. Nije pomoglo ni što se u međuvremenu promijenila vlada — novi ljudi u parlamentu nisu se osjećali obavezni braniti tuđe stare obećanja, pa je projekt lako kliznuo na dno liste prioriteta. Politika mu nije oprostila neuspjeh prvog kruga financiranja, koliko god drugi krug bio, tehnički, mnogo pametnija ideja.
Analytical Engine nikad nije sagrađen. Ne djelomično, ne u nekoj skromnoj verziji, ne kao dokaz koncepta koji bi bar potvrdio da princip radi — ništa. Postoje nacrti, tisuće stranica bilježnica, dijelovi mehanizama koji su stajali po Babbageovoj radionici kao skeleti nedovršene katedrale. Umro je 1871., star, siromašniji nego što je zaslužio, uvjeren da je svijet premalo pametan da shvati što mu je pokušao dati. Bio je u pravu i u krivu istovremeno — svijet stvarno nije bio spreman, ali ni on sam sebi nije pomogao time što nikad, baš nikad, nije rekao „dosta, ovo je verzija jedan, shippamo ovo”.
Ono što je ostalo iza njega nije bio proizvod. Bila je arhitektura — takozvani „mlin” i „spremište”, ili, u današnjem rječniku, nešto što bismo prepoznali kao procesor i memoriju: jedan dio stroja koji računa, i drugi koji pamti podatke i rezultate, potpuno odvojeni jedan od drugog. Ideja da stroj ne mora unaprijed znati što će računati, nego samo mora znati čitati instrukcije koje mu se daju — to je, u suštini, koncept programa kakav i danas koristimo. Ta zamisao preživjela je stoljeće bez ijednog prototipa koji stvarno radi, čekajući nekoga tko će imati struju, elektroniku i, iskreno, malo manje ambicije po projektu i malo više discipline oko rokova.

Ada, kći lorda Byrona
Prebacimo se na trenutak s Babbagea i njegovog stroja koji nikad nije bio gotov, na osobu koja je taj stroj razumjela bolje od svih — uključujući, po nekim tumačenjima, i samog Babbagea. Ada Lovelace, rođena Ada Byron, u prosincu 1815. Otac joj je bio lord Byron — da, taj Byron, pjesnik, skandal, ljubavnik pola Europe, čovjek toliko nesposoban za mirni obiteljski život da je majka Ade, Annabella Milbanke, pobjegla s njom kad je djevojčici bio tek mjesec dana. Nikad se više nisu vidjeli. Byron je umro kad je Adi bilo osam godina.
I evo prvog poteza koji je odredio cijeli ostatak priče: Annabella je, u strahu da će kći odrasla naslijediti oca — onu istu „ludost”, onu opasnu pjesničku maštu koja je razorila brak — odlučila dijete napuniti nečim suprotnim. Matematikom. Logikom. Disciplinom brojeva koja ne dopušta metaforama da odlutaju kamo ne trebaju. Ada je od malena imala privatne učitelje, strogi raspored i majku koja je matematiku doživljavala kao cjepivo protiv poezije. Ironično je, naravno, što je Ada na kraju spojila oboje — i to joj je bila najveća snaga, ne mana. Gledala je Analitički stroj i vidjela nešto što Babbage, sav zatrpan mjedom i frustracijom oko Josepha Clementa, onog inženjera s kojim se posvadio, možda nije ni tražio: da stroj koji broji nije nužno stroj koji SAMO broji. Usput, ono prezime po kojem je danas svi znamo nema veze s Byronom: 1835. se udala za Williama Kinga, koji je nekoliko godina kasnije postao grof od Lovelacea, pa je Ada Byron preko noći postala grofica od Lovelacea — Countess of Lovelace. Do tada je bila samo Ada Byron, kći skandaloznog pjesnika; poslije je zauvijek Ada Lovelace.
Upoznali su se 1833. — Ada je imala tek sedamnaest godina — kad je na jednoj od Babbageovih salonskih demonstracija vidjela Diferencijalni stroj, onaj prvi, djelomično sagrađeni prototip. Dok su ostali gosti gledali mjed i zupčanike kao kuriozitet, kao skupu igračku za zabavu bogatih, Ada je gledala princip iza njih. Godinama je nastavila dopisivanje s Babbageom, a kad je 1842. talijanski inženjer Luigi Menabrea objavio članak o Analitičkom stroju na francuskom, Ada je preuzela prijevod na engleski. I tu je stvar krenula u nešto puno veće od običnog prijevoda.
Uz prijevod je dodala i vlastite bilješke — sedam ukupno, označene slovima od A do G — i te bilješke su na kraju ispale duže od samog izvornog članka. Bilješka G je ta koja se pamti. U njoj je Ada napisala nešto što danas zovemo algoritmom: detaljan, korak-po-korak postupak kojim bi Analitički stroj izračunao Bernoullijeve brojeve, niz vrijednosti koji se koristi u teoriji brojeva i čije bi ručno računanje, olovkom i papirom, matematičaru oduzelo sate mučnog rada. Nije samo opisala što stroj radi. Opisala je redoslijed operacija, petlje, uvjete — logiku koja se izvršava korak po korak, potpuno neovisno o tome je li riječ o brojevima ili nečem posve drugom.
Njezina najpoznatija rečenica — ona koju danas informatičari citiraju kao da je prorokovala Spotify sto godina prije Spotifyja — glasi da bi Analitički stroj mogao „tkati algebarske uzorke, baš kao što Jacquardov tkalački stan tka cvjetove i lišće”. Referenca nije nasumična: onaj isti Jacquardov stan koji je inspirirao Babbageove kartice bio je i izravan predložak za kartice koje je Babbage planirao koristiti za unos programa u svoj stroj. Ada je tu vidjela paralelu koju drugi nisu: kartice ne moraju kodirati samo brojeve. Mogu kodirati bilo koji simbol, bilo koje pravilo, bilo koju vrstu apstrakcije koju čovjek smisli upisati u njih. Stroj koji broji postaje stroj koji obrađuje — golema razlika između kalkulatora i računala, izgovorena 1843., stotinjak godina prije nego što je itko takav stroj uspio doista upaliti.

Prva programerka? (mit i stvarnost)
Dobro, sad dolazimo do dijela gdje se ljudi na internetu posvađaju do krvi — ozbiljno, ima cijelih forumskih ratova posvećenih ovom jednom pitanju. Je li Ada Lovelace bila prva programerka u povijesti, ili je to lijepa priča koju smo si ispričali jer nam je trebala heroina? Odgovor je, kao i obično kad je pitanje postavljeno kao „da ili ne”: „ovisi koga pitaš, i što točno misliš pod riječju programer”.
Da se podsjetimo, Ada je uz Menabreain članak dodala bilješke A do G, a Note G je ta zbog koje se svi svađaju: detaljan, korak-po-korak postupak za izračun na Analitičkom stroju koji nije bio samo zbrajanje, nego prava procedura — ulazi, izlazi, petlje koje se ponavljaju dok se ne zadovolji neki uvjet. Ono što bismo danas nacrtali kao dijagram toka — onu shemu s kockicama i strelicama koju je svaki informatičar u nekom trenutku školovanja morao crtati na ploči, a koja u biti samo prikazuje redoslijed koraka i odluka u programu.
Sad, tu kreće spor. Babbage je s Adom bio u gotovo dnevnoj korespondenciji dok je pisala bilješke, a sačuvana pisma pokazuju da je on ispravljao njezine greške, predlagao formulacije, čak i priznao da je jednom pogriješio pa je ona ispravila njega. Neki povjesničari iz toga zaključuju: dobro, onda je Babbage stvarni autor algoritma, a Ada je bila — nazovimo to fer — vrlo pametna urednica i prevoditeljica koja je stroju dala PR kampanju koju je zaslužio. Drugi kažu: čekaj malo, svaki programer danas prolazi kroz nešto što se zove „code review” — kolega mu pregleda kod, upozori ga na greške, predloži izmjene prije nego što se taj kod uopće spoji s ostatkom programa (to se zove „pull request”) — i nitko zbog toga ne kaže da autor koda nije autor. Rad na nečemu uz povratne informacije mentora nije isto što i da je taj mentor to napisao.
Jer evo što je neupitno, dokumentirano, crno na bijelo, i nitko to ne osporava: dok je Babbage cijeli život gledao na svoj stroj kao na moćniji kalkulator — bržu, bolju verziju onoga što su radile logaritamske tablice — Ada je u Note G napisala rečenicu koja je, gledano unatrag, stoljeće ispred svog vremena. Rekla je da stroj ne mora raditi samo s brojevima. Da ako postoje pravila odnosa između bilo kojih simbola, stroj bi mogao manipulirati i njima — recimo, glasovima i harmonijskim odnosima u glazbi, pa bi mogao „komponirati elaborirane i znanstvene glazbene komade bilo koje složenosti ili opsega”. To nije opis kalkulatora. To je opis računala u modernom smislu — uređaja koji ne računa brojeve, nego procesira simbole po pravilima, što god ti simboli predstavljali. Babbage je sagradio hardver. Ada je vidjela softver, godinama prije nego je ta riječ uopće postojala.
I baš u toj istoj bilješci stoji njezina druga velika izjava, to je onaj isti Lovelaceov prigovor koji smo spomenuli: da Analitički stroj „nema pretenzija da stvara ništa”. Zvuči skromno, gotovo kao ograda koju stavljaš da se ne obećaš previše, ali je to jedna od najranijih formulacija granice između izračuna i stvarne inteligencije — pitanje koje će, dva stoljeća kasnije, postati sredinom svake rasprave o umjetnoj inteligenciji koju vodimo danas.
Dakle, presuda? Nema jasnog pobjednika, i to je u redu. Ada nije „izmislila programiranje” u smislu da je sjela sama, iz ničega, skockala algoritam bez ičije pomoći — to je romantizirana verzija koja pretvara stvaran, kolaborativan intelektualni rad u usamljeni genijalni blic. Ali Ada je jedina osoba na planetu, uključujući samog Babbagea, koja je 1843. razumjela da je stroj koji su gradili nešto veće od velikog kalkulatora. To joj nitko ne može oduzeti, i za to joj ne treba lažni pijedestal.

Nisu shippali, a promijenili su sve
Ada Lovelace umire 1852., trideset i šest godina stara, od raka maternice, u agoniji koju su joj liječnici pokušavali ublažiti laudanumom — tinkturom opijuma, dakle ozbiljnim opijatom koji se u 19. stoljeću davao kao lijek za bol jer nešto bolje jednostavno nije postojalo — dok nije bila više napola u komi nego u ovom svijetu. Trideset i šest. Toliko imaš vremena da odradiš faksić, možda karijeru, možda dvoje-troje djece, i onda odjednom nema te. Ona je u tih trideset šest godina uspjela: postati opsesivna kockarka koja je gubila novac na konjskim utrkama i posuđivala od majke da pokrije dugove, upasti u barem jednu ozbiljnu bračnu krizu, flertati (koliko znamo, samo flertati) s nekoliko muškaraca koji nisu bili njezin muž, i napisati jedan tekst koji će se sto godina kasnije citirati kao osnivački dokument informatike. Nije loš omjer za jedan kratki život u viktorijanskom Londonu, gdje su žene smjele imati mišljenje jedino o vezenju.
Trebalo je čekati do 1950-ih da netko — talijanski inženjer Luigi Menabrea, čiji je opis Babbageova stroja Ada prevela i opremila vlastitim opaskama, pa Alan Turing, koji ga je citirao, pa informatičari koji su tražili korijene svoje struke — ponovno otvori te stranice i shvati da tu, u bilješci koju je Ada označila slovom G, stoji nešto što liči na algoritam napisan prije nego što je postojao stroj koji bi ga izvršio. Ada je postala „prva programerka” u trenutku kad je to nekome zatrebalo kao priča — pri čemu nemoj zaboraviti sve ono iz prošlog poglavlja o spornosti te titule. Ali priznajem da titula, sporna ili ne, ima svoju logiku: netko je morao prvi zamisliti da je stroj više od kalkulatora, i to je bila ona.
Da se podsjetimo, 1991., točno dvjesto godina od Babbageova rođenja, u Znanstvenom muzeju u Londonu su ga stvarno sagradili i upalili — pet tona mjedi i željeza, osam tisuća dijelova, godine rada, po Babbageovim originalnim nacrtima. Stroj kojeg je njegov tvorac osmislio, a nikad nije vidio da radi, proradio je savršeno stoljeće i pol kasnije, jer je od početka bio dobro zamišljen — samo ga nitko od suvremenika nije mogao platiti ni sagraditi na vrijeme.