Skapar folkets dator

Det är några dagar innan jul. Jag är ute och handlar på ett välkänt exklusivt varuhus i Greater Boston-området. Jag tar nio saker till kassan. Kassörskan för sin trollstav över varje paket för att läsa streckkoden, och slagskrivaren skramlar iväg när den skriver ut en beskrivning och pris för varje vara. Jag gör mig redo att ta fram mitt kreditkort när kvinnan vänder sig till kassan bredvid henne och, fasansfulla, börjar knappa in exakt samma information manuellt och läser av siffrorna på varje paket i tur och ordning.





Hon är på paket nummer sex när jag harklar mig på ett iögonfallande sätt och med en tidsstudiespecialists indignation frågar henne varför i hela friden hon duplicerar streckkodsläsarens arbete. Hon vinkar mig till tystnad med auktoriteten hos en som är van vid att göra det. Snälla, jag måste avsluta det här, säger hon artigt. Jag säger åt henne att ta sig tid, trots att mina muskler drar ihop sig och min hjärna ägnar sig åt livliga dagdrömmar om straffhandlingar.

Hon avslutar det sista paketet, ignorerar min spetsiga suck, sträcker sig efter en penna och … börjar om från början! Den här gången skriver hon i handen på butikens kopia av kvittot en rad med siffror för varje paket. Jag är så chockad över denna trefaldiga travesti att jag glömmer min ilska och frågar henne i sann förundran vad hon gör. Ännu en gång vinkar hon mig till tystnad så att hon kan koncentrera sig, men tvingar sedan: Jag måste ange varje artikelnummer för hand, säger hon. Varför? frågar jag med en märkbar darrning i rösten. Eftersom min chef sa åt mig att göra det, svarar hon och undertrycker knappt lusten att avsluta sin mening med det universella suffixet dum. Jag kunde inte släppa det här. Jag ringde efter chefen. Han tittade på mig medvetet och sa med en suck, Datorer, du vet.

Jag sa till honom att det här såg lite allvarligare ut än så, och han fortsatte med att förklara i långsamma, medvetna fraser att den centrala maskinen inte fungerade, så en dubblett måste matas in för hand.



Då, varför ange det överhuvudtaget i datorn? Jag vågade förhoppningsvis.

Eftersom det är vår standardprocedur, och när den centrala maskinen kommer tillbaka, bör vi kunna justera våra register för lagerförändringar. Hmm.

Varför i hela friden knappar hon då både in siffrorna och skriver in dem med streckkodsläsaren? Jag kontrade.



Åh. Det är chefens instruktion. Han är bekymrad över våra datorproblem och vill kunna verifiera och krysskolla alla avdelningsposter.

Jag gick tyst ut, chockad.

Efter att jag kommit över min chock över det absurda slöseri med tid som denna butiks procedurer orsakade för kassörskan och mig började jag förundras över hur det stora löftet att datorer skulle förbättra mänsklig produktivitet lättare diskuteras än implementeras. Ämnet om huruvida datorer höjer mänsklig produktivitet har faktiskt genererat en hel del kontroverser. Teknikbelackare kommer att peka på sådana möten och säga, se, datorer hjälper oss inte. Och det är sant att informationsteknologi skadar produktiviteten i vissa fall; det tar längre tid att vada genom dessa oändliga automatiska telefonsvarsmenyer än att prata med en mänsklig operatör. Om tekniken inte används på ett klokt sätt kan det göra oss mindre produktiva istället för mer.



Men datorer kan också vara otroligt hjälpsamma. Om de används på rätt sätt hjälper de att ringa upp priser snabbare, spåra lager och hantera prisförändringar. Produktiviteten kommer att stiga i informationsåldern av samma anledning som den gjorde under industriåldern: användningen av nya verktyg för att avlasta mänskligt arbete.

Vissa människor avfärdar produktivitetsproblem och hävdar att datorer möjliggör saker som vi inte skulle kunna göra annars. Visst är det sant, som World Wide Web, specialeffekter i filmer och kreditkort har visat oss. Men att ignorera datorns grundläggande förmåga att hjälpa människor att utföra sitt hjärnarbete är i bästa fall perverst och i värsta fall oansvarigt. Produktivitet är den måttstock med vilken socioekonomiska revolutioner mäts. Det var fallet med plogar, motorer, elektricitet och bilar. Om det ska bli en verklig informationsrevolution måste datorer upprepa mönstret med informations- och informationsarbete.

När vi försöker förutse hur datorer kan användas under det tjugoförsta århundradet bombarderas vi med oöverträffad förvirring och hype - en snabbare webb/internet, nätverksdatorer, intranät, cyberrymden, 1 000 videokanaler, gratis information, distansarbete och mycket mer . Enligt min uppfattning kan denna framtida värld enkelt och tydligt beskrivas som en informationsmarknadsplats, där människor och deras sammankopplade datorer är engagerade i köp, försäljning och fritt utbyte av information och informationsarbete.



Många frågor omger informationsmarknaden: tekniken för dess underliggande informationsinfrastruktur; dess användningar inom handel, hälsa, lärande, strävan efter nöje och regering; och konsekvenserna av dessa nya aktiviteter för våra personliga liv, vårt samhälle och vår historia. Här kommer vi att fokusera på en liten men avgörande aspekt av denna rika ensemble och se till att morgondagens informationsmarknad kommer att hjälpa oss i vår eviga strävan att få fler resultat för mindre arbete.

Missbrukas och missbrukas

Låt oss börja med att undersöka en rad fel-sätt på vilka datorer missbrukas idag på grund av antingen tekniska eller mänskliga brister. Det första steget mot att förbättra vår produktivitet är att rätta till dessa fel. Därefter kommer vi att utforska hur man börjar automatisera mänskligt arbete genom dator-till-dator-utbyten. Det sista och kanske viktigaste steget blir att göra datorer verkligen enklare att använda.

Tillsatsfelet: Den löjliga dubbelarbetet som jag stötte på på varuhuset händer ofta och i många olika sammanhang. Vi kommer att kalla detta misslyckande för det additiva felet, för i dessa fall gör människor allt de brukade göra innan datorer plus det extra arbete som krävs för att hålla datorer nöjda eller för att få människor att framstå som moderna. I någons bok är detta en tanklös produktivitetsminskning. Den ska stoppas kall i vilken miljö den än höjer sitt fula huvud. Och medan vi håller på, låt oss inse att detta specifika problem inte orsakas av teknik utan av vårt eget missbruk av teknik.

Spärrfelet: En tid efter mitt möte med kassörskan måste samma gremlins som tycks springa före mig för att skapa utmanande situationer säkert ha besökt flygbolagstjänstemannen som jag mötte på Bostons Logan Airport. När jag räckte honom min biljett till New York och bad honom att ersätta den med en till Washington, D.C., sa han: Visst, sir, och böjde sig för sin terminal, som för en gud. Som en erfaren observatör av denna ritual började jag spela in hans interaktioner. Utbrott av tangenttryckningar följdes av eftertänksamma blickar, ibland på gränsen till bestörtning, eftersom han med handen på hakan stirrade orörlig på skärmen och försökte bestämma vad han skulle skriva härnäst. Hela 146 tangenttryckningar senare, grupperade i 12 överfall avgränsade av Enter-tangenten, och efter totalt 14 minuter fick jag min nya biljett.

Det som gör den här historien intressant ur ett produktivitetsperspektiv är att vilken datavetenskaplig kandidat som helst kan designa ett system som gör det här jobbet på 14 sekunder. Du stoppar helt enkelt in din gamla biljett i spelautomaten, där allt dess innehåll läses av automaten. Du skriver eller säger sedan ändringskommandot och den nya destinationen, och du får den reviderade biljetten utskriven och stoppad tillbaka i handen. Eftersom 14 minuter är 60 gånger längre än 14 sekunder, skulle den mänskliga produktivitetsförbättringen med en sådan box vara 60 till 1, eller 6 000 procent!

Något är fruktansvärt fel här. Folk springer för att köpa en ny dator eftersom den är 20 procent snabbare än den de har, och vi pratar här om en 6 000 procents förbättring. Så varför stämplar inte flygbolagen för att bygga denna box? För det första, om de gjorde detta för var och en av de möjliga förfrågningarna, skulle de behöva bygga några tusen olika lådor för varje terminal. Okej då, varför programmerar de inte om sina centrala datorer för att göra detta snabbare? För det skulle kosta en miljard dollar. Varför? Eftersom flygbolagen har lagt till så många mjukvaruuppgraderingar och ändringar i sina system att de efter 20 år har byggt upp en spagettiliknande röra som inte ens de kan reda ut. I själva verket kan de inte förbättra sitt system utan att börja om från början.

Vi kommer att kalla detta för datoranvändningens spärrfel eftersom det är som ett spärrande däckdomkraft: varje gång en ny mjukvarumodifiering läggs till ökar systemets komplexitet, men det kommer aldrig ner om inte en hastig händelse, som en total omdesign, tar plats. Detta problem är mer en följd av otillräcklig teknik än av osund mänsklig praxis. Om vi ​​hade en mjukvaruteknik som kunde låta oss uppdatera våra system på ett elegant sätt för att passa våra föränderliga behov och samtidigt bibehålla deras effektivitet, då skulle vi inte vara i den här situationen.

Det överdrivna inlärningsfelet: En tiondel av min bokhylla är upptagen av ordbehandlingsmanualer. Lägg till manualerna för kalkylblad, presentationer och databaser så fyller de lätt en halv hylla. Eftersom jag använder grafik och programmerar lite behöver jag lite fler manualer. Detta ger den totala längden på mina datorguideböcker till en EB-one (tryckt) Encyclopaedia Britannica. Vi kommer helt enkelt att kalla detta det överdrivna inlärningsfelet - förväntningen att människor kommer att lära sig och behålla en mängd kunskap som är mycket större än fördelarna de skulle få av att använda den kunskapen. Föreställ dig att kräva att folk smälter en 850-sidig manual för att kunna använda en penna. Vi skrattar åt tanken, men vi accepterar den lätt när det gäller ett ordbehandlingsprogram. Jag tvivlar inte på att första hälften av det tjugoförsta århundradet kommer att ägnas åt att bli av med feta manualer och göra datorer mycket enklare och mer naturliga att använda.

Funktionsöverbelastningsfelet: Uppsvälld är kanske ett mer korrekt adjektiv för att beskriva de funktionsspäckade program som kom ut på marknaden i slutet av 1990-talet. Säljarna gör det delvis för att täcka sina insatser och för att kunna ta ut högre genomsnittspriser. Köpare är fascinerade av den potentiella användningen av sina datorer och värdesätter deras privilegium att beordra sina maskiner att göra tusentals olika saker. Naturligtvis slutar de i praktiken med att de bara gör ett fåtal uppgifter och glömmer vilka funktioner de har köpt eller hur man använder dem. En toppsäljande svit med kontorsprogram kommer på en CD-ROM eller 46 disketter som kräver en halv dag att ladda in i din maskin. Detta är inte produktivt. Och det orsakas av oss, inte tekniska svagheter. Konsumenter och företagsledare bör förklara preventivmedel på överbefolkningen av överdrivna och ofta värdelösa funktioner.

Det falska intelligensfelet: Min bil har en snygg telefon som annonserades som intelligent eftersom när den gör en telefonanslutning stängs den automatiskt av volymen på bilradion för att säkerställa en tyst miljö. Jag tyckte det här inslaget var förtjusande tills jag en eftermiddag hörde en god vän intervjuas på radion. Jag ringde omedelbart en gemensam vän så att hon kunde lyssna med mig via telefon och dela spänningen. Detta var naturligtvis omöjligt, eftersom telefonen stängde av radion och jag kunde inte åsidosätta den. Välkommen till det falska intelligensfelet. Det dyker upp i många situationer där en välmenande programmerare lägger vad han eller hon tror är kraftfull intelligens i ett program för att göra livet lättare för användaren. Tyvärr, när den intelligensen är för liten för uppgiften, som alltid är fallet, kommer funktionen i vägen för dig. Ställd inför ett val mellan den här sortens halvsmarta system och en maskin med massiv men opretentiös dumhet skulle jag satsa på det senare, för då kunde jag åtminstone kontrollera vad den kunde göra.

Som användare som strävar efter att förbättra vår produktivitet måste vi alltid fråga om ett nytt program erbjuder tillräckligt mycket värde genom sin påstådda intelligens för att kompensera den huvudvärk det oavsiktligt kommer att orsaka. Och leverantörer av dessa ambitiösa program bör förse dem med ett Go Stupid-kommando som låter användare inaktivera de intelligenta funktionerna.

Maskinansvarig fel: Klockan är 02:00 och jag har precis kommit hem. Mitt Swissair-flyg från Logan ställdes in på grund av problem med motorn som styr vingklaffarna. Cirka 350 passagerare vars planer omintetgjordes bombarderade varje tillgänglig kontorist på flygplatsen. Jag övergav den djurparken, rusade hem, slog på min dator och försökte ansluta till Easy Sabre gör-det-själv-flygbolagsbokningstjänsten som erbjuds av Prodigy för att söka efter en alternativ biljett för ett morgonflyg från antingen Boston eller New York . Jag var tvungen att ta reda på innan jag gick och la mig om detta var möjligt. Men innan jag hade en chans att ange en enda knapptryckning tog Prodigy kontrollen över min skärm och tangentbord. Det informerade mig om att för att förbättra mitt systems användning av dess onlinetjänster skulle det ta några ögonblick (vilket betyder minst en halvtimme) att ladda ner lite förbättrad programvara.

Det fanns inget jag kunde göra för att hindra Prodigy från att hjälpa mig på sitt eget mordiska sätt. En torftig anonym mjukvara hade full kontroll över denna situation, medan jag, en människa, klämdes mot väggen. Samtidigt visste jag att för varje minut som gick, skulle en annan av dessa hektiska nomader på flygplatsen ta en annan av de snabbt försvinnande platserna på nästa morgons få flyg. Jag skulle gärna ha använt programvara som var flera generationer gammal för att få mitt jobb gjort tidigare. Jag kände att jag drunknade i ytlig surf av en kramp i magen medan badvakten på stranden var omedveten om mina skrik eftersom han använde sin megafon för att informera mig och alla andra simmare om förbättrade säkerhetsprocedurer.

Detta är exakt samma fel som kräver att dyrbara människor spenderar värdefull tid på att utföra instruktioner på maskinnivå som distribueras av hundra dollar automatiserade telefonoperatörer, med deras bekanta. Maskinansvarigs fel måste tillskrivas mänskligt misslyckande när det gäller att tillåta sådan praxis att fortsätta utan invändningar, men programmerare måste också ta en del av skulden. De begår ofta detta fel medvetet eftersom det är enklare, därför billigare, att programmera en dator att förhöra användaren och inte släppa taget förrän alla frågor har besvarats på ett av några fixa sätt än att låta användaren göra någon av flera saker med försäkran om att datorn kommer att uppmärksamma.

Naturligtvis är interaktioner som styrs av maskinen inte alltid oönskade. Ett felaktigt kommando av dig att radera allt inuti din dator bör inte utföras slentrianmässigt. Men 95 procent av de överkontrollerande interaktionerna på världens datorer involverar inte sådana allvarliga situationer. Ju tidigare dessa mjukvarukryckor försvinner och användaren ges kontroll, desto snabbare kommer maskiner att tjäna människor snarare än tvärtom.

Det överdrivna komplexitetsfelet: Jag är på mitt kontor, klockan är snart middag och jag upptäcker med stor panik att jag glömde att hämta de avgörande omkostnader jag behöver för ett nära förestående lunchmöte från min hemdator. Inget svett. Jag ska ringa hem och få dem skickade elektroniskt till mitt kontor. Som tur är är dock den enda som är hemma elektrikern, men han är ett spel. Snälla slå på datorn genom att trycka på knappen ovanpå tangentbordet, säger jag. Han är uppenbarligen en god man, för jag hör det välbekanta ljudet genom telefonen. Under de två minuter det tar för maskinen att starta upp, frågar elektrikern varför maskinen inte tänds direkt, som en glödlampa.

Jag avstår från att berätta för honom att jag delar hans bestörtning. I tre år har jag försökt intressera sponsorer och forskare i ett projekt som skulle ta itu med denna irriterande verksamhet där en människa respektfullt ber om tillstånd från en dators programvara för att slå på eller stänga av maskinen. Istället förklarar jag att maskinen är som ett tomt skal och först måste fylla sig själv med all programvara den behöver för att bli användbar. Okej, säger jag, dra ner Apple-menyn och välj kommandot Ring kontoret, som jag hade definierat för en tid sedan. Han följer det och jag hör mitt hemmodem pipa när det ringer mitt kontorsmodem. Vid den andra ringsignalen hör jag kontorsmodemet bredvid mig svara. Vi är nästan framme, funderar jag förhoppningsvis.

Ser du meddelandet att vi är anslutna? Jag frågar.

Nej, svarar han. Ytterligare en minut går och han läser upp ett varningsmeddelande för mig som har dykt upp på min hemdators skärm. Jag vet vad som hände. Modemen låste sig korrekt och kan skicka signaler till varandra men av någon okänd anledning kan mjukvaran för de två maskinerna inte kommunicera. Jag ber honom hålla i medan jag startar om min maskin. Liksom många människor, och alla datorproffs, vet jag att omstart med ett rent blad ofta löser problem som det här, även om jag inte har någon aning om vad som faktiskt orsakade problemet.

När jag guidar elektrikern genom att starta om min hemdator blir jag arg, eftersom dessa problem skulle minska om min kontorsdator ringde min hemdator snarare än tvärtom. Men min hemmaskin har bara fjärrklientprogramvara, vilket betyder att den kan ringa men inte ta emot samtal. Denna distinktion mellan klienter och servrar är en rest av företagsdatorer och den tidsdelade erans centrala maskiner, som distribuerade massor av data till de dummare terminalerna. Distinktionen måste försvinna så att alla datorer, som jag skulle ha myntkunniga, kan dela ut och acceptera information lika mycket, som de måste om de ska kunna stödja det distribuerade köp, försäljning och fria informationsutbyte som kommer att kräva plats på informationsmarknaden.

När min hemmamaskin har startat upp igen går vi igenom modemdansen en gång till, och den här gången låser mjukvaran. Jag ber elektrikern att välja kommandot Väljare och klicka på Appleshare-ikonen och sedan klicka på bilden av min kontorsmaskin. Nu behöver han mitt lösenord, som jag ger honom omgående. Han rapporterar aktivitet på sin skärm som jag tolkar som framgång. Jag berättar för honom hur han hittar den värdefulla filen jag behöver och skickar den till mig. Om två och en halv minut till kommer overheadbilderna fram säkert i min maskin. Jag tackar elektrikern mycket och skickar bilderna till min skrivare, nu fyllda med tomma OH-film, och jag har dem. Jag kommer till mötet 30 minuter för sent.

Varför kunde jag inte helt enkelt ge min hemdator på en sekund ett enda kommando som Skicka de omkostnader som jag skapade i går kväll till mitt kontor och få dem att anlända tre minuter senare? Kolleger tekniker, snälla säg inte att det kan göras med en annan typ av maskin eller ett annat operativsystem, makron, agenter eller andra sådana verktyg, för jag vet och du vet bättre. Denna enkla handling kan helt enkelt inte utföras enkelt och tillförlitligt med dagens datorer.

Som systemdesigners måste vi påbörja de efterlängtade korrigerande åtgärderna mot det överdrivna komplexitetsfelet genom att förenkla alternativen, begränsa dem och, viktigast av allt, vända på en designsynpunkt som är rotad i decennier gamla vanor. Vi bör skräddarsy datorkommandon och alternativ efter användarens behov, snarare än att skräddarsy dem till befintliga system- och delsystembehov och förväntar oss att användarna lydigt anpassar sig. Vi måste göra för datorsystem vad vi har gjort för bilar - komma bort från att ge människor kontroller för bränsleblandningen, tändningstider och de andra delsystemen, och ge dem en ratt, en gaspedal och en broms för att köra bilen .

Elektroniska bulldozers

En av de största vägspärrarna för att bygga en effektiv informationsmarknad är oförmågan hos sammankopplade datorsystem att enkelt befria oss från mänskligt arbete. Detta beror på att dagens nätverksanslutna datorsystem inte har något sätt att förstå varandra, inte ens på en rudimentär nivå, så de kan utföra rutintransaktioner sinsemellan. Ändå är potentialen för att automatisera informationsarbete enorm - hälften av världens industriella ekonomi består av kontorsarbete, vilket antyder hur stor denna nya socioekonomiska rörelse kan bli. För att avlasta mänskligt hjärnarbete måste vi utveckla verktyg som låter datorer arbeta med varandra mot användbara mänskliga syften. Jag kallar verktygen som gör detta möjligt för automatiseringsverktyg för att skilja dem från automationsverktygen från den industriella revolutionen som avlastade mänskligt muskelarbete.

Idag är vi så glada över e-post och webben att vi kastar oss in med all vår energi för att utforska den nya gränsen. Om vi ​​stannar upp och reflekterar ett ögonblick kommer vi dock att inse att mänsklig produktivitet inte kommer att förbättras om vi fortsätter att använda våra ögon och hjärnor för att navigera genom denna labyrint och förstå meddelanden som skickas från en dator till en annan. Tänk om företagen som tillverkade den industriella revolutionens första ång- och förbränningsmotorer gjorde dem så att de bara kunde arbeta tillsammans om människor stod bredvid dem och fortsatte att arbeta med sina spadar och hästdragna plogar. Vilken absurd begränsning. Ändå är det vad vi gör idag - spenderar en enorm mängd mänskligt hjärnarbete för att få våra datorer att fungera tillsammans. Det är dags att fälla våra högteknologiska spadar och bygga informationsålderns elektroniska bulldozrar. Det är vad automatiseringsverktygen handlar om.

Att uppnå en viss grundläggande grad av förståelse mellan olika datorer för att möjliggöra automatisering är inte så tekniskt svårt som det låter. Men det kräver en mycket svår vara: mänsklig konsensus. Ett enkelt sätt att uppnå automatisering är att använda elektroniska formulär (e-formulär), där varje inlägg har en i förväg överenskommen betydelse som alla deltagande datorer kan utnyttja genom sina program. Anta att jag tar 3 sekunder att tala in i min maskin kommandot Ta mig till Aten nästa helg. Min maskin skulle generera rätt e-formulär för denna uppgift och pingis fram och tillbaka med bokningsdatorns e-formulär innan jag hittade ett acceptabelt datum och klass och bokade flyget. Eftersom det skulle ha tagit mig 10 minuter att göra en onlinebokning själv, kunde jag med rätta skryta om att min produktivitetsökning var 200 till 1 (600 sekunder ner till 3 sekunder), eller 20 000 procent!

Således kan vi föreställa oss att gemensamma intressegrupper på informationsmarknaden kommer att upprätta e-formulär för att specificera rutinmässiga och ofta återkommande transaktioner inom deras specialitet, oavsett om de handlar om att köpa apelsiner i grossistledet eller rutt runt röntgenbilder mellan olika medicinska avdelningar. Om medlemmarna i en sådan grupp kan komma överens om ett e-formulär, särskilt ett som representerar en mödosam transaktion, kommer de att uppnå betydande automatiseringsvinster. Datorprogram eller personer som är intresserade av att göra den typen av affärer skulle kunna slå upp det överenskomna e-formuläret och använda det i sin dator, mot samma vinster men med mycket mindre ansträngning.

En hel del datortrollkarlar, och människor som är motvilliga till standarder, tror att vanliga konventioner som e-formulär liknar esperanto, det olyckliga försöket att skapa ett universellt talat språk bland alla människor. De hävdar att försök till delade datorspråk kommer att drabbas av samma sjukdomar. Istället förespråkar de att det enda sättet som våra datorer kommer att kunna förstå varandra är genom att översätta lokalt förståeliga kommandon och frågor mellan deras olika världar, precis som människor översätter mellan engelska och franska.

Detta argument är felaktigt eftersom delade begrepp krävs även vid översättning mellan olika språk. Oavsett om du kallar ett föremål för stol eller schäslong är det fortfarande grejen med fyra ben som folk sitter på. Det är den delade begreppsbasen, etsad på något sätt i din hjärna, som möjliggör en gemensam förståelse av de två olika orden på engelska och franska. Utan det kan ingen mängd interkonvertering leda till förståelse, helt enkelt för att det, som i fallet med datorer, inte finns något gemensamt på någon sida att förstå.

Om vi ​​kan bilda en konsensus inom och över specialiteter om de mest grundläggande begreppen datorer ska dela, så även om vi slutar med olika språk och dialekter, kommer mjukvaruutvecklare att kunna skriva program och vanliga användare kommer att kunna skriva skript som installerar användbara dator-till-dator-automatiseringsaktiviteter-söka information för vår räkning, se upp för händelser av intresse för oss, utföra transaktioner åt oss och mycket mer.

mjuka lutningssystem

Att automatisera dator-till-dator-transaktioner och åtgärda problem i nuvarande datorsystem är bra steg mot att göra datorer och informationsmarknaden till tjänst för oss. Men att designa system som är enklare att använda är den riktigt stora spaken. Jag tror att denna strävan kommer att konsumera vår uppmärksamhet under en stor del av nästa århundrade.

Under det senaste decenniet har alla som har uttalat frasen användarvänligt i min närvaro löpt risken för fysisk misshandel. Frasen har skamlöst åberopats för att antyda att ett program är lätt och naturligt att använda när detta sällan är sant. Vanligtvis hänvisar användarvänligt till ett program med ett WIMP-gränssnitt, vilket betyder att det förlitar sig på fönster, ikoner, menyer och pekar tillsammans med ett urval av vackra färger och typsnitt som kan varieras för att passa användarnas smak. Denna typ av överdrift är liktydigt med att klä en schimpans i en grön sjukhusklänning och uppriktigt visa den som kirurg. Låt oss försöka penetrera hypen genom att måla upp var vi verkligen är när det gäller användarvänlighet och var den verkliga potentialen för användarvänlighet ligger.

Det är någon gång i slutet av 1980-talet. En vän närmar sig dig, upphetsad över sin förmåga att använda kalkylblad. Du ber honom förklara hur de fungerar. Han visar dig ett stort rutnät. Om du lägger ett gäng siffror i en kolumn, säger han, och sedan under dem lägger du det enkla kommandot som lägger ihop dem, så ser du deras totala summa i den nedre cellen. Om du sedan ändrar ett av siffrorna ändras summan automatiskt. Vännen rusar vidare, kan knappt kontrollera sin överflöd: Och om du vill göra den första siffran 10 procent större lägger du bara in det enkla kommandot i cellen bredvid som multiplicerar den med 1,1. Hans uttryck blir lustfyllt: Vill du öka alla siffror med 10 procent? Dra bara ner musen så här, och de kommer alla att lyda.

Han tar ett djupt andetag, redo att explodera ännu en gång, när du stoppar honom kall. Tack. Gå nu, säger du. Du har lärt mig nog att göra alla mina bokföringssysslor. Så här använder miljontals människor idag sina kalkylprogram som Microsoft Excel och Lotus 1-2-3. De kan knappast mer än en tiondel av kommandona men ändå får de stora produktivitetsvinster.

Du är nöjd med dina nyvunna kunskaper tills du en dag upptäcker att du behöver göra något lite mer ambitiöst, som att upprepa över en hel sida alla mödosamma operationer du har satt upp men med en ny uppsättning initiala siffror. Förvirrad går du tillbaka till din vän, som ler medvetet och säger till dig att du nu måste lära dig om makron. Hans förklaringar är inte längre lika enkla som tidigare, och du kan bara inte få kalkylarket att göra vad du vill. Det är här de flesta av de miljoner som använder kalkylblad ger upp. Men istället kämpar du vidare och bemästrar så småningom makrots mysterier. Det är verkligen ett datorprogram skrivet på ett mystiskt programmeringsspråk som ersätter dig när du beordrar kalkylprogrammet att göra saker du skulle ha gjort manuellt.

Du seglar med under de kommande sex månaderna tills du utvecklar behovet av att göra en ännu mer ambitiös uppgift som innebär att designa ett gränssnitt mellan människa och maskin som kommer att göra ditt program mer användbart. Du går tillbaka till din vän, som berättar att du har blivit för bra för de begränsade funktionerna i denna kalkylprogram, och att du nu måste lära dig hur du använder ett riktigt programmeringsspråk som C++. Omedveten om vad som ligger bakom dessa tre oskyldiga symboler men ovillig att ge upp, trycker du på. Detta kostar dig ditt jobb, eftersom du nu måste ägna heltid åt ett kolossalt nytt lärande. Ändå är du så förtjust i programmering att du inte har något emot det. Faktum är att du gillar idén. Två år senare, efter att ha utnyttjat C++ och några fler programmeringsspråk och operativsystem, börjar du en karriär som en framgångsrik oberoende mjukvaruleverantör och blir så småningom rik.

Detta lyckliga slut kan inte dölja de hinder som du har varit tvungen att övervinna på vägen. Du bestämmer dig för att rita en graf av den ansträngning du lagt ner kontra den förmåga du fått. Resultatet är en linje som börjar till vänster och rör sig till höger. Det finns en lång långsamt stigande del och sedan en enorm kulle där man var tvungen att lära sig mycket nytt för att kunna ta sig vidare till höger. Sedan kommer det långsammare stigande linjer och fler enorma kullar, som en bergskedja där varje nytt berg blir högre. Du önskar att någon skulle hitta på ett tillvägagångssätt med en mjukare lutning, en där du får allt större avkastning när du ökar din inlärningsansträngning, utan de omöjliga klipporna som du var tvungen att bestiga. Jag förutspår att sådana mjuka sluttningar, som jag vill kalla dem, kommer att dyka upp och kommer att markera en viktig vändpunkt i informationsåldern.

De mjuka lutningssystemen kommer att ha några viktiga egenskaper. Först och främst kommer de att ge stegvis mer användbara resultat för stegvis större ansträngning. De kommer att kunna automatisera alla aktiviteter du gör som är repetitiva. De kommer att vara graciösa, i den meningen att ofullständiga handlingar eller fel från din sida kommer att resultera i rimliga försämringar av prestanda snarare än katastrofer. Slutligen kommer de att vara lätta att förstå - inte mer komplicerat än att läsa ett kokboksrecept.

Konceptuellt utmanat

En anledning till att det är svårt för icke-programmerare att tala om för datorer vad de ska göra är att mjukvarusystemen som omger oss är upptagna av strukturen snarare än betydelsen av information. Vi kan programmera dem att göra vad vi vill, men de är omedvetna om innebörden av ens de enklaste saker vi försöker göra. Låt mig illustrera.

Det tar mig 17 sekunder att säga till en programmerare, snälla skriv till mig ett program som jag kan använda för att skriva in kontrollerna jag skriver på min dator, tillsammans med kategorierna för varje utgift - mat, rekreation och så vidare. Och gör detta så att jag kan be om en rapport över de kontroller som jag har skrivit hittills, listade kronologiskt eller per kategori.

Jag har gett det här uppdraget flera gånger till olika personer. Mästarprogrammerare vägrar alltid att spela och säger åt mig att köpa det här programmet eftersom det är kommersiellt tillgängligt. Bra programmerare kommer att säga att de kan uppfylla förfrågan inom ett par timmar - och sluta med att de tar en dag eller två för att utveckla en skakig prototyp. Oerfarna programmerare kommer kaxigt att säga att de kan skriva programmet på några minuter som ett kalkylarksmakro - och i allmänhet inte kan leverera någonting alls. Företaget Intuit, som utvecklade det mycket framgångsrika Quicken-programmet som gör detta jobb och mer, tog två år och många miljoner dollar att utveckla, testa, dokumentera och föra ut på marknaden.

Varför kan jag programmera en människa att förstå ovanstående instruktion på 17 sekunder, medan det tar några tusen till några miljoner gånger längre tid att programmera en dator att förstå samma sak? Svaret ligger säkert i det faktum att människor delar begrepp som kontroll, kategori, rapport och kronologisk, medan datorer inte gör det. Maskinen är så okunnig om dessa begrepp att programmerare måste lägga praktiskt taget all sin programmeringstid på att lära datorn vad de menar. Om jag däremot hade en dator som redan förstod några av dessa begrepp, så skulle jag kanske kunna programmera den för att göra mitt jobb på mycket kort tid. Detta är ett viktigt sätt på vilket datorer kan öka vår produktivitet under det tjugoförsta århundradet: genom att göras för att bättre förstå fler mänskliga begrepp på bättre sätt.

För att datorer verkligen ska vara enklare att använda, måste teknologer flytta sitt fokus bort från 1900-talets upptagenhet med strukturerna för informationsverktyg som databaser, kalkylblad, redigerare, webbläsare och språk. I deras tidiga skede blev datorer allestädes närvarande eftersom detta fokus gjorde att dessa vanliga verktyg kunde användas lika i tusentals applikationer, från redovisning till ingenjörskonst till konst. Ändå är det samma allmänhet som gör dem okunniga om de speciella användningsområden de i slutändan måste tjäna och i slutändan mindre användbara än de borde vara - ungefär som en dilettant jack-of-all-trade.

Vad vi behöver nu, för att öka användbarheten ytterligare, är en ny typ av mjukvarusystem som ett kalkylblad som en revisor enkelt kan programmera och som redan förstår repetitiva uppgifter på högre nivå som att sätta upp kontoplaner, göra en kontantavstämning och testa saldon.

Befriade från generalitetens tyranni kommer dessa specialiserade programmeringsmiljöer att stiga mot att erbjuda mycket mer av den grundläggande informationen och funktionerna för deras specialitet. Tiden har kommit för datateknologer att överge den generalistiska inriktning som tjänade människor väl under de första fyra decennierna av datoreran och flytta sitt fokus från strukturen till betydelsen av information.

Alla är programmerare

Informationsålderns största löfte är den stora och fortfarande orealiserade potentialen i att skräddarsy informationstekniken efter individuella mänskliga behov. Dagens applikationsprogram är som färdiga kläder - en storlek passar alla. Så de flesta är illasittande, och vi måste förvränga oss själva för att förbättra passformen. Ett annat potentiellt resultat av denna praxis för företag är att om varje företag använde samma uppsättning av konserverade program, skulle de följa mer eller mindre samma procedurer, och inget företag skulle sticka ut mot konkurrenterna. Krympförpackad, färdig mjukvara är tillräckligt bra för informationsteknologins tillstånd i slutet av 1900-talet. Men det kommer inte att vara lika bra på morgondagens informationsmarknad.

Stora vinster kommer att uppnås när individer och företag kan böja och utveckla informationsverktyg för att göra exakt vad de vill att de ska göra, snarare än att böja sig för vad verktygen kan göra. Denna strävan efter anpassningsbara informationsverktyg med specialiserad kunskap kommer inte att skilja sig från den nuvarande trenden mot skräddarsydd tillverkning. Det kan mycket väl vara så att vid slutet av det tjugoförsta århundradet kommer en ny form av verkligt tillgänglig programmering att vara provinsen för alla och kommer att ses som skrift, som en gång var de forntida skriftlärdes provins men så småningom blev allmänt tillgänglig.

Det här är inte så absurt som det låter. Vi uppfann skrivandet så att vi kunde kommunicera bättre med varandra. I morgon måste vi kommunicera bättre med våra elektroniska assistenter, så vi utökar vår klubb till att även omfatta dem. Alla kommer då att vara programmerare, inte bara de få privilegierade. Och ingen av dem kommer att vara medveten om det. Faktum är att detta redan händer i liten skala bland de miljontals människor som använder kalkylblad och som skulle bli mycket förvånade över att få veta att de är programmerare.

När jag säger att folk kommer att programmera, pratar jag inte om att skriva den detaljerade koden och instruktionerna som får datorer att köra. Det kommer fortfarande att utgöra huvuddelen av ett program och kommer verkligen att skapas av professionella programmerare, som kommer att forma de många större byggstenarna som vi kommer att använda. Varje individs programmering kommer att stå för en mycket liten del av mjukvarukoden, kanske 1 procent. Men det kommer att vara den avgörande faktorn som ger programmet dess specificitet. Det blir som att bygga en modelljärnväg; du gör inte alla spår eller motorer eller bilar, men du ordnar delarna för att skapa dina egna anpassade järnvägsmönster.

Vi kan öka användbarheten av våra maskiner på den framväxande informationsmarknaden genom att korrigera aktuella mänsklig-maskin-fel, genom att utveckla automatiseringsverktyg och genom att skapa en ny sort mjukvarusystem som förstår specialiserade områden av mänsklig aktivitet – och som kan lätt anpassad av vanliga människor för att möta deras behov. Att följa dessa riktningar borde få oss att fortsätta vår strävan, som jag förväntar mig kommer att pågå långt in i det tjugoförsta århundradet, att utnyttja den nya informationsteknologin för att uppfylla forntida mänskliga syften.

Dölj