DE2 i all sin glans.

Det vi upplever idag av utveckling inom IT är bara en efterdyning av något mycket större - något som inträffade för snart 170 år sedan tillbaka i tiden.

En man fick en idé som för alltid satte sina spår i vår civilisation. Han genomförde på egen hand ett teknologiskt språng som är oändligt mycket större än något vi upplever nuförtiden. 1822 vevade engelsmannen Charles Babbage (1791- 1871) igång sin första differensmaskin, en mekanisk dator, och påbörjade den teknikgren vi idag kallar för automatisk databehandling.

Mekaniska beräkningar
Storbritannien var vid denna tid en stormakt, eftersom man hade världsherraväldet på haven. Brittiska flottan var världens starkaste och mest vittberesta, men man led av ett problem: exaktheten i navigeringen. Navigering skedde med sextant och egentligen var det inget fel på sextanten, eller den nyuppfunna kronometern, utan problemet låg i de astronomiska tabellverk som krävdes för positionsberäkningen.

Tabellverken skapades på så sätt att en ”computer”, alltså en person som var snabb på att räkna med papper och penna, räknade ut tabellvärdena och skrev ned dem på papper. Papperen togs till ett sätteri där de sattes med blytyper och trycktes på papper. Det fanns mycket som kunde gå fel på vägen. Computern kunde räkna fel, sättaren kunde plocka in siffertyperna i fel ordning och korrekturläsaren kunde införa korrekturfel.

Uppfinnare och tabellofil
Charles Babbage var uppfinnare och tabellofil, han hade samtidens största bibliotek med tabeller, över 300 stycken, och en dag 1821 diskuterade han problemet med felaktigheterna med sin vän, astronomen William Herschel och framkastade en önskning: ”I wish by God it could have been made by steam!”

Babbage var en utmärkt konstruktör och påbörjade omedelbart ritarbetet på en mekanisk beräkningsmaskin, som han kom att kalla Difference Engine 1 (DE1). Han påbörjade arbetet med de 25 000 delarna till den 15 ton tunga apparaten, fick den oerhört stora summan 17 500 pund (många miljoner i dagens penningvärde) av regeringen i flera omgångar och anställde en verkmästare, Joseph Clement, som skulle hjälpa honom att göra maskinen klar.

Clement var samtidens bäste mekaniker och han visste att han var bäst och tog betalt därefter. Kanske lite för bra, för Babbage vägrade efter många års fruktsamt samarbete att betala, varpå Clement gick i strejk. Tråkigt nog lyckades han aldrig fullständigt övertyga regeringen om nyttan med maskinen och DE1 sågades totalt år 1833.

Skapade tumgängan
Ungefär samtidigt blev Babbage allvarlig ovän med Clement, som inte kunde prestera några rediga fakturor, och sade upp honom samma år. Clement var också ett unikum. Han skapade en standardiserad skruvgänga, som en underleverantör vid namn Withworth många år senare fick accepterad: tumgängan.

Babbage var inte ledsen för det. Man antar att han egentligen ville ha DE1 sågad, eftersom han redan hade börjat på sin största uppfinning, The Analytical Engine (AE). Tanken på en programmerbar maskin hade uppstått, en maskin som skulle ha en ”kvarn” (eng. ”mill”), det vi idag kallar för en aritmetisklogisk enhet, avskild från lagringsenheten.

En stor skillnad från DE1 och en princip vi idag kallar för Von Neumann-arkitekturen. Maskinen skulle vara programmerbar med hålkort, en idé Babbage lånat av fransmannen Joseph- Marie Jacquard, som automatiserade mönstervävstolen (se N&K 2/2002) och var verksam vid samma tid. Både program och data skulle kunna matas in via hålkort (”variable cards”, variabla data, ”number cards”, konstanter och ”operation cards”, instruktioner) och maskinen skulle kunna ta beslut av typen IF...THEN och exekvera slingor.

Producera egna hålkort
Utmatningen skulle ske på papper (skrivare) eller på kopparplåt för tryckning (sättmaskin). Maskinen skulle också kunna producera sina egna hålkort med tabeller (kortstans) som den senare kunde ha som referens, till exempel sinustabeller. I princip allt man kan begära av en modern dator.

Programmeringen var ett kapitel för sig, något man kunde diskutera utan att ha en verklig maskin att köra på. Babbage var vän med den store diktaren Lord Byrons intelligenta dotter Lady Augusta Ada Lovelace (1815-1852) och de förde en intensiv brevväxling rörande programmeringen av Analytical Engine (AE). Eftervärlden anser därför att Augusta Ada var världens första programmerare och högnivåspråket Ada är uppkallat efter henne.

Det tycks dock ha varit en romantiserad bild. Meningarna om Adas betydelse för utvecklingen och programmeringen av AE går isär. Vissa bedömer hennes insatser som briljanta, medan andra, som lusläst hennes korrespondens, har mindre uppskattande omdömen. Babbage ensam konstruerade AE och Ada verkar till exempel inte ha förstått det viktiga med att använda variabler istället för konstanter.

Ada var däremot den enda som publicerade något större verk om Babbages uppfinningar (”Sketch of the Analytical Engine”, 1843, resultatet av ett föredrag Babbage höll i Turin några år tidigare). Ada förutsade också att en dylik maskin skulle kunna användas till att komponera komplex musik och skapa grafik.

Det bidde en kvarn i alla fall
Babbages verkstad tillverkade valda delar av AE, nämligen kvarnen och mikroprogramenheten, men Babbage gjorde aldrig något försök att bygga AE färdig, eftersom han hade börjat bli en gammal man med tankesvårigheter. AE skulle bland annat ha 1 000 axlar med 50 kugghjul vardera som minne (50 siffrors noggrannhet), till en kostnad som ingen kunde uppskatta. AE var betydligt smidigare i sitt utförande än DE1, och dessutom snabbare och komponentsnålare.

Efter några år med AE fick Babbage idén till Differential Engine 2 (DE2), en differensmaskin med samma funktion som DE1, men mycket elegantare konstruerad än ettan, mycket mindre och med bara cirka 8 000 delar. DE-maskinerna var inte programmerbara i vår bemärkelse, de var snarare hårdkodade med programmet lagt i PROM. Startvärden fick sättas in av en mekaniker.

DE2 ritades färdig, men Babbage lyckades aldrig få regeringen att ge honom tillräckligt med pengar för att bygga den. För att ”get rid of Mr.Babbage and his machine” använde sig regeringen av en expertutredare, den kunglige astronomen George Biddell Airy, som såg till att Babbage inte fick några mer pengar. Airy insåg aldrig fördelen med en räknande maskin - han tyckte att man räknade lika bra för hand.

Vem var Babbage?
Babbage har beskyllts för att vara en dålig tekniker, för att ha krävt en noggrannhet som inte kunde uppnås, och för att ha åstadkommit rena felkonstruktioner. Så var det dock inte. En ren byråkratsak, startad av en bakåtsträvande icke-tekniker, lade utvecklingen i graven. Babbage fick aldrig se sin DE2 i fullbordan. Han var en ypperlig konstruktör, uppfinnare och nytänkare, men han fick aldrig veta om maskinen fungerade eller ej.

Det är dock sant att Babbage var hetsig och gjorde sig till ovän med många, bland annat regeringen, och på så sätt berövade sig själv all sin framgång. Babbage dog 79 år gammal. Hans son, Henry Prevost Babbage (1924-1918) fortsatte att bygga på sin faders uppfinningar men nådde aldrig några resultat.

Också Sverige höll sig väl framme i differensmaskinkampen. Georg och Edvard Scheutz, far och son, byggde sin första maskin i Stockholm 1834, samtidigt med Babbage. De lyckades, till skillnad från Babbage, sälja tre maskiner till England och USA. Scheutzarnas maskiner var mycket mindre (och billigare) än Babbages, men led av trög carrymekanism och studsande kugghjul och hade inga av Babbages säkerhetsfunktioner. De klarade bara 5-6 värdesiffror. Otillförlitligheten gjorde att de aldrig verkar ha använts i någon större utsträckning. Babbage hjälpte Scheutzarna med deras marknadsföring. Men det är en annan historia.

DE2 fungerar
Att DE2 fungerade vet vi numera. Till 200-årsminnet av Babbages födelse (1991) byggde Science Museum i London upp DE2 enligt Babbages ritningar. Man lade sig vinn om att arbeta enligt de toleranser som Babbage angivit och man skaffade till och med den brons som han haft till sitt förfogande. Dock digitaliserades ritningarna och man använde sig av CAD och numeriska maskiner för massproduktionen.

Den beräknande delen påbörjades 1990 och var klar 1991 och skrivardelen påbörjades 1999 och var färdig 2001. Vi har varit på Science Museum och talat med herrarna bakom genomförandet; Doron Swade, chef för samlingarna och ”Babbageolog”, och Reg Crick och Richard Horton som alltjämt arbetar med underhållet. Maskinen är nu helt färdigställd och kan användas enligt Babbages intentioner.

Mönstergill konstruktion
Den fungerar klanderfritt, väger 5 ton och består av cirka 8 000 delar. En beräkningscykel tar 6 sekunder, med skrivaren inkopplad 7 sekunder. Den framställer färdigtryckta tabellverk med 30 värdesiffror med färdig layout i en, två eller tre spalter. Den kan trycka på två arkstorlekar med ställbara marginaler och radavstånd. Som kontroll skrivs alla värden också ut på en slagremsa.

Maskinen är så robust att den antingen producerar korrekta värden eller låser sig (kraschar). Det går inte att böja någon detalj och få felaktiga värden. Överallt finns låsknivar som går in och låser kugghjulen för att de inte ska kunna glida eller studsa och ge felaktiga värden. Det går inte att vrida ett hjul för hand och med vilja föra felaktiga värden.

Samtalet kommer in på driftsäkerheten och konstruktörerna berättar att man hade inkörningsproblem i början (låter modernt...). Det tog cirka 10 sekunder att utföra en cykel och en massa metallspån nöttes av överallt, man har haft några trasiga carriagemekanismer, men numera går den som en klocka. Den har använts sedan 1991 utan några större fel och bör alltså ha kunnat användas i industriell skala, just så som Babbage hade tänkt sig.


Vevandet är en konst, men inte svårt att lära sig.

Dags att prova
Det är nu dags för det stora ögonblicket, när undertecknad ska göra en recension av systemet. Användargränssnittet är det enklast tänkbara. Man fattar veven och vevar på utan att tveka, och så skriver maskinen ut riktiga resultat. Det känns ungefär som att veva en köttkvarn.

Vevandet är lite av en konst och det kan ta några minuter att lära sig veva en riktig arbetscykel, men det är inte ansträngande på något sätt. Vevar man för fort går skrivaren illa och vevar man för sakta svajar vissa delar och maskinen låser sig. Utbildningstiden understiger 10 minuter. Vad Babbage gjorde var att reducera det akademiska räknearbetet till något enkelt som kunde skötas av billig arbetskraft och ge ett bättre resultat. Märkvärdigt likt den moderna datorn...

När en sida är färdigskriven drar end-of-page-vajern från skrivaren i en koppling vid veven så att denna frigörs och beräkningen stannar på precis rätt ställe i cykeln, så att man kan gå och lägga i ett nytt papper, återställa skrivaren till top-of-page och fortsätta att veva utan att ha förlorat någon beräkningscykel. När sidan är färdig matas den ut, kan lyftas rätt upp och en ny kan läggas i. Användarvänlighet!

Layoutinställningarna görs på skrivaren med en uppsättning av lustigt formade kugghjul och man kan här välja marginaler, kolumner, teckenstorlek och radavstånd. För test finns dock en remsskrivare som matar ut alla värden på en slagremsa.


Layout-inställningarna gjordes för hand med kugghjul av olika form.

En annan värld
Låt oss fundera på vad som kunde ha hänt om Babbage hade lyckats med att få sina AE och DE2 klara. Vi hade då varit 170 år längre fram i datortekniken och världen hade inte sett ut som den gör nu. Det är inte klart om Babbage var ett geni omgiven av bakåtsträvare eller om samtiden inte var tillräckligt vidsynt, men hans maskin var den mest komplicerade som dittills hade tillverkats och är värd all beundran
än idag.

Av Jörgen Städje, som är data- och nätverksexpert och driver företaget Qomputor Education Datasystems AB. Han nås på jorgen@qedata.se.

Läs mer:

 
  • Läs Ada Lovelaces översättning från italienskan av ”Sketch of the Analytical Engine” av L. F.Menabrea och hennes egna, berömda ”Notes by the translator” på slutet, på www.fourmilab.ch/babbage/sketch.html
 
  • ”The Cogwheel Brain” av Doron Swade, ISBN 0-349-11239-8, utgiven 2000 på Abacus Publications. Standardverket om Babbage, skriven av de som byggde upp maskinen. En lättläst och teknisk djupdykning i Babbages tid.