Grundläggande idéer

Kompatibilitet

Visst är det trevligt med datorer - när de fungerar!

Synd bara att man måste råka ut för såna förtretligheter som disketter som funkar i datorn på jobbet men inte i datorn hemma, dokument som funkar i Word i datorn hemma men inte i Word i datorn på jobbet, program som funkar på dator X men inte på dator Y, och så vidare...

När man nu utvecklar allt bättre och bättre metoder att kommunicera mellan datorer, vore det inte trevligt att kunna kommunicera med så många andra typer av datorer som möjligt? Nog vore det tråkigt om man skulle vara tvungen att ha "Internet för Windows", "Internet för Mac", "Internet för UNIX", och så vidare...

Det kanske inte skulle räcka ens med en så grov indelning? Man kanske skulle bli tvungen att dela upp det i ännu fler, mindre delar, som "Internet för Windows 3.x", "Internet för Windows 95", "Internet för Windows NT", "Internet för Windows 98", och så motsvarande för alla tänkbara versioner av alla andra grupper av operativsystem...

Men skulle det fungera ens med en så grov indelning? Vad händer när nya versionen av Word kommer, måste man göra ytterligare en indeling då? Så här kan man inte hålla på, särskilt inte om man vill koppla ihop så många datorer som möjligt i ett enda jättestort supernätverk (och det vill man!).

En lösning är att alla skaffar sig precis likadana datorer. Visst låter det bra! Inte? Men vore det inte underbart om alla hade Windows 95? Då skulle ju alla kunna kommunicera med varandra! Va? Windows 98? Nej, nu hade vi ju bestämt att alla skulle ha Windows 95, då kan du inte bara komma och säga att vi ska slänga det vi har (och äntligen har lyckats lära oss att hantera på ett någorlunda effektiv sätt) och köpa nytt! Och om nåt år, ska du då komma och säga att alla ska börja om igen, för tredje gången, och skaffa sig Linux i stället? Och vem ska bestämma vad det är alla andra ska ha? Regeringen? (Vilken regering?) Bill Gates? Bill Clinton? Bill Clintons katt Socks?

En annan lösning är att hitta på nåt sätt att kommunicera som alla datorer kan förstå. Eller kanske snarare, hitta på ett sätt att kommunicera, och sen programmera alla olika typer av datorer att förstå det sättet. På det sättet skulle du kunna använda vilken konstig burk som helst, bara den skickar ut de rätta signalerna till omvärlden.

Men om man kan använda vilken "burk" som helst, varför ska man då begränsa sig till att använda datorer, i den form vi är vana att se dem på våra kontor? Varför inte ha "dator i TV:n"? Som en korsning mellan en video och en telefon ungefär, en grunka som visar bilder på TV-rutan och som kan kommunicera med omvärlden. Varför inte ha "dator i nallen"? Att visa bilder kanske är lite för mycket begärt av en mobiltelefon, i alla fall än, men text borde väl gå bra. "Dator i armbandsklockan" (som James Bond...)? "Dator i brödrosten" (frukost-surfa...)?

Handikapp

Det som egentligen är intressant är väl ändå att nå de människor som använder datorerna, oavsett vad de råkar ha investerat i för hårdvara och mjukvara. Dessutom kan man se det som att olika människor är utrustade med olika "hårdvara".

En del datorer kan bara visa text. Bland annat en del äldre datorer, men även en del av de allra nyaste datorerna (nallen, klockan, ...). Att använda en sån dator är på sätt och vis som att vara blind (blinda kan läsa text i datorer, antingen genom att datorn genererar syntetiskt tal eller genom att de har speciella "skärmar" som visar texten i blindskrift). Även en person med läs- och skrivsvårigheter kan vara hjälpt av en dator som genererar syntetiskt tal, oavsett hur bra eller dåligt han ser.

På samma sätt kan användaren av en dator som visar mindre än 16 miljoner färger betraktas som färgblind. Vid 256 färger blir en del bilder lite fula, men de flesta ser helt OK ut. Vid 16 färger blir en hel del bilder ganska fula, men är fortfarande fullt användbara. Med en gråskaleskärm försvinner all färg och en del bilder blir totalt oanvändbara. Med en svartvit skärm (som visar antingen svart eller vitt, inga gråskalor) måste nästan alla bilder specialbehandlas för att alls synas.

Man kan fortsätta att dra paralleller mellan datorer som inte är försedda med förmåga att ge ifrån sig ljud och dövhet, eller mellan datorer som är lite långsamma med människor som av olika anledningar är lite långsamma, eller mellan datorer med små skärmar och personer som ser världen som om de ständigt hade en kikare framför ögonen (jag vet inte vad det heter men jag minns att jag har läst/sett/hört en beskrivning av det nån gång för längesedan). Slutsatsen är i alla fall att vår superkommunikationsmetod bör ta med i beräkningen redan från början att ganska många som ska använda den har antingen ett verkligt fysiskt handikapp, eller att deras datorer är sådana att de upplever situationer som påminner om olika handikapp. Man bör också tänka på att de som verkligen är handikappade inte har möjlighet att "uppgradera". Är man blind kan man inte se en bild, oavsett hur stor färgupplösning man har! (Jag vet inte den exakta statistiken, men sådana saker som färgblindhet och dyslexi är mycket vanliga.)

(Man kan även säga att olika människor är utrustade med olika "mjukvara", dels att somliga är rent ut sagt korkade, men också att olika människor lever i olika kulturer och talar olika språk. Såna saker är betydligt mer komplicerade att påverka än rent fysiska aspekter som blindhet eller dövhet. Ofta upplevs de inte heller som problem.)

Elegant sönderfall ("Graceful Degradation")

Däremot finns det ingen anledning att begränsa sig. Tvärtom borde man kunna förmedla vilken typ av data som helst, men att det ändå ska verka vettigt för alla, även de som inte har förmåga att uppskatta nån viss speciell del av informatonen. Detta kan låta som en bisarr självmotsägelse, men varför inte? Man kan åtminstone tala om vad det är som händer (eller snarare, vad som inte händer), eller kanske bättre, erbjuda ett annat alternativ.

Men om jag ska hålla på och ta fram alternativ information som passar precis alla, inklusive alla de vars situation jag inte vet någonting om, det måste ju bli väldigt krångligt, inte sant? Jo, visst, och därför vore det bra om vår kommunkiationsmetod kunde erbjuda ett format som passar alla - utan att det för den skull ser tråkigt och "enkelriktat" ut för alla de som satsat på det allra senaste och häftigaste i datorväg.

Ett sätt att lösa saken är att när datorn träffar på något den inte känner igen så bara ignorerar den det. Då kan man hitta på finurliga konstruktioner som kan hantera ett, eller kanske rentav flera, alternativ och som visar fram det mest "avancerade" som den enskilda datorn (och dess mänskliga användare) klarar av att hantera. Det kräver dock att den enskilde författaren är medveten om hur saker fungerar och ser till att lägga in vettiga alternativ.

Det behöver inte vara fråga om några fantastiskt avancerade alternativ. En enkel textnotering kan vara tillräcklig. Jag säger inte att man kan ersätta en berömd tavla med ett par ord, men man kan i alla fall säga nåt i stil med att "Här är en bild av tavlan Mona-Lisa av Leonardo Da Vinci". Då vet den som är blind (genom sitt val av hårdvara och mjukvara eller fysiskt blind) i alla fall vad det är som försiggår, det vill säga presentationen är vettig.

Den som har gjort valet (eller som inte har något val) att till exempel bara läsa text är väl medveten om vilka begränsningar det medför. Att i det läget göra en presentation som säger "Du kan inte se det här alltså får du inte se det här! Kom tillbaka när du har skaffat dig ett par fungerande ögon!" kan bara uppfattas som oförskämt. I stället skulle man helt enkelt kunna förklara vad presentationen består av och låta den enskilde läsaren bestämma om han kan ta del av informationen eller inte.

Eller ännu bättre, erbjuda ett alternativ, till exempel några ord i stället för en bild, som är utformat på ett sådant sätt att läsaren aldrig behöver uppleva att han missar något. Ett exempel är att man sätter företagets namn i klartext som alternativ till dess logo, i stället för att säga "Här sitter företagets logo" (och kanske inte ens säga vilke företag det handlar om). Ett annat exempel är att man som alternativ till en "interaktiv" presentation kan ge en animerad sekvens, som har en statisk bild som alternativ, som i sin tur har några ord av vanlig, enkel text som alternativ.

Författarens ansvar och skyldigheter, läsarens möjligheter

Som läsare i vårt superkommunikationssystem borde man alltså kunna ställa ganska stora krav på tillgänglighet och läslighet hos den information som finns. Den ska framstå som vettig i vitt skilda situationer och dess innehåll ska vara begripligt oavsett läsarens situation. Läsaren kan vara både blind och döv och använda en tio år gammal dator men borde trots det ha lika stor möjlighet att kommunicera som en person som har fem väl fungerande sinnen och den allra nyaste, dyraste multimediadatorn. Det gör att varje enskild författare har ett stort ansvar för att leva upp till läsarens krav.

Det är författarens skyldighet att skapa dokument som fungerar, även för den som är både blind och döv. Det kräver ett nytt sätt att tänka. Författaren måste lära sig att släppa taget om detaljerna i presentationen av sina alster, och våga utnyttja det nya mediets styrka - att förmedla information även i situationer som är vitt skilda från hans egen, utan att han för den skull är begränsad till att enbart använda sig av text. För att systemet ska vara riktigt användbart borde det finnas möjlighet att förmedla precis vilken form av data som helst.

Visst, en blind person kan inte njuta av färgrikedomen och de rena linjerna i en bild, men det betyder inte att han automatiskt är ointresserad av att veta att bilden finns och vad den föreställer. Det betyder inte heller att han inte kan vara intresserad av att ladda hem bilden till sin egen dator. Att medvetet göra det onödigt svårt för honom att ta del av materialet kan väl snarare ses som direkt oförskämt. En "datormässigt blind" person, som använder en skärm som bara kan visa text, kan mycket väl ha en skrivare kopplad till sin dator där han kan skriva ut bilder, även om han inte har möjlighet att se dem direkt på skärmen. Det gäller att försöka låta bli att ha fördomar om vad andra människor kan och inte kan och vad de vill och inte vill göra.

Struktur och layout

Det viktigaste i kommunikationen är att informationen når fram, inte exakt hur den presenteras. Man kan tänka sig ett viktigt meddelande. Det spelar egentligen inte så stor roll om det skrivs med blyerts på baksidan av en redan använd papperslapp, eller om det läses in på din telefonsvarare, eller om någon ger dig meddelandet muntligen, eller om du får det i form av e-post, eller om det skickas till dig tryckt på tjockt blankt papper med den mest sofistikerade tryckteknik man kan tänka sig och illustrerat med små instansade bilder med guldtryck. Huvudsaken är att meddelandet når fram.

På samma sätt måste vi resonera när vi utvecklar vår superkommunikationsmetod. Vi prioriterar innehållet och försöker göra en vettig tolkning av den föreslagna presentationen, men om det inte lyckas så finns det ingen anledning att gråta över den saken. För att underlätta förståelsen kan det vara vettigt att markera i datat som överförs mellan datorerna att det är fråga om ett viktigt meddelande. Det underlättar dessutom för den mottagardator som vill göra en snygg och enhetlig presentation av viktiga meddelanden. "Aha! Ett viktigt meddelande! Såna presenterar vi i svart text mot en gul bakgrund och sätter en röd ram runt." eller "Aha! Ett viktigt meddelande! Såna läser vi upp med allvarlig röst." eller "Aha! Ett viktigt meddelande! Såna påvisar vi genom att skicka ut en stark svettlukt från datorns doft-port." (det sista var DoggyDOOS 7.942, alla vet ju att Windog 4.65 inte har fullt stöd för svettmoduler och därför markerar viktiga meddelanden med kattlukt).

Det där sista, om svettlukt, var inte helt skämtsamt menat. Vad betyder till exempel "Den här texten ska visas med extra stor font."? Vad betyder det för för nån som är blind? Hur ska den tolkas i ett sammanhang där man bara har tillgång till en enda fontstorlek? Hur luktar "extra stor font"?

"Extra stor font" är ett rent visuellt fenomen som bara kan upplevas i en miljö där man har tillgång till fonter av olika storlekar och ett fungerande synsinne. "Extra stor font" förmedlar i sig ingen information om vad texten egentligen är. Om man i stället säger "Den här texten är en rubrik." så vet de olika program som ska presentera materialet hur de ska agera. I en del fall kan det innebära "extra stor font". I en del fall kan det innebära "röd font", eller "centrerad text", eller "kort paus följt av texten läst med lite extra eftertryck", eller "Husses röst"...

Men om man som författare verkligen vill ha "extra stor font" då? För det första så måste författaren inse att vissa aldrig kommer att få uppleva den presentationen, hur mycket han än vill det. Vissa kanske rent av inte vill uppleva den situationen, eftersom de tycker att "röd, centrerad font" förmedlar budskapet mycket tydligare. Det bästa författaren kan göra är att föreslå att texten visas med "extra stor font", och förstå att budskapet i hans text inte försvinner bara för att någon kanske väljer att läsa det i en något annorlunda tolkning.

Det gäller alltså att i vår superkommunikationsmetod skilja mellan struktur ("Det här är en rubrik") och layout ("Det här är text visad med extra stor font"). Struktur handlar om vad saker är, layout handlar om hur saker ser ut. Av de två är det strukturen som är viktigast, layouten är bara "smink". Därmed inte sagt att man måste begränsa sig till fula, tråkiga och enkelriktade presentationer. Tvärtom, man borde kunna föreslå alldeles fantastiskt snygga saker, men man måste inse att en "naken", "osminkad" presentation är vad en del mottagare kommer att uppleva, och att det är en av metodens största fördelar.

I praktiken

Den väg man valt att gå i verklighetens internet är väl kanske inte den absolut bästa, och många av de program som de flesta verkliga människor använder är tyvärr direkt urusla. Möjligheterna finns dock, och förstår man vad man sysslar med, och varför man ska göra på ett visst sätt och inte på ett annat, så går det för det mesta att göra riktigt bra presentationer. Förmågan att förmedla precis vilken form av data som helst finns, och man måste inte använda sig av det format som jag hittills bara kallat "kommunikationsmetod". Det finns andra alternativ för de som har speciella krav.

Några förklaringar

Internet ("nätet")

Består av datorer som är hopkopplade med varandra och kan kommunicera med varandra. Datorerna är inte av någon speciell typ utan det finns många olika sorters datorer uppkopplade på nätet.

[Sammankopplade datorer]

På nätet kan man sen göra en mängd olika saker. Till de vanligaste hör e-post, diskussionsgrupper och webben, men det går också att till exempel spela spel på nätet.

E-post (e-mail)

Meddelanden som du skickar till en person (det går även att skicka till mer än en person). E-postadresser brukar se ut ungefär så här: namn@nånting.se

Diskussionsgrupper (Usenet, newsgroups)

Påminner lite om e-post, men meddelandena kan läsas av i princip vem som helst, var som helst. Diskussionsgrupper har inte "adresser" som man skickar till utan "namn". Dessa namn beskriver vad gruppen handlar om, till exempel handlar gruppen alt.animals.felines som namnet antyder om katter ("feline" betyder "katt"). För att läsa vad som sägs i en grupp och för att skicka meddelanden till en grupp kopplar man upp sig mot en server. Vilken server man ska koppla upp sig till beror på vad man har för internetleverantör.

Innan man ger sig in i diskussionerna är det några saker man bör veta.

WWW ("World Wide Web", "webben")

Består av grupperingar av data. Vem som helst som är uppkopplad på nätet kan ta del av informationen. Ordet "web" betyder "nät" (som i "spindelnät") och kommer sig av att en viss typ av dokument, hypertextdokument, kan "länka" till andra dokument, och andra typer av data, var som helst på webben. På webben använder man sig av en typ av adress som kallas "URL" ("Uniform Resource Locator").

[Sammanlänkade hypertextdokument]

Det är på webben man hittar hemsidorna.

HTML ("HyperText Markup Language")

HTML är själva "klistret" som håller ihop informationen websidorna (det brukar ibland kallas "hyperglue", eller "hyperlim"). Dess syfte är att förklara strukturen hos text och att på olika sätt länka till andra typer av data.

Rent praktiskt går det till så att man skriver texten i en text-fil, sen sätter man dit speciella "HTML-taggar" som talar om vad texten är. För att visa att en viss text är en rubrik omger man texten i fråga med <h1> och </h1>.

[Ett HTML-dokument, i en texteditor]

Sen kan en webläsare (ett program som bland annat tolkar HTML-dokument) läsa filen och göra en vettig tolkning av dokumentets struktur, till exempel genom att visa rubriker i "extra stor font".

[Ett HTML-dokument, i en webläsare]

CSS ("Cascading Style Sheets", formatmallar)

CSS är namnet på en typ av formatmallar. Det är i dessa man kan föreslå en layout till ett HTML-dokument. Saker man kan göra med CSS är bland annat att sätta färg på ett dokument, ändra fonter, lägga in marginaler, centrera, lägga in bakgrundsbilder, mm.

[Ett HTML-dokument, med CSS]

Det finns flera sätt att lägga in CSS i ett HTML-dokument, men det smidigaste sättet är att "länka" till det. Då kopplas de olika sakerna man gör i formatmallen till de olika HTML-taggarna. Det blir som att säga "Alla rubriker ska visas centrerade i röd font", och så blir alla rubriker sådana. Alternativet är att på varje enskild rubrik specificera hur den ska se ut.

Trots att formatmallar inte är någon ny idé så är det inte förrän ganska nyligen som webläsare har börjat stödja dem. Det gör inte så mycket eftersom det ingår i deras design att de inte ska vara nödvändiga för att man ska förstå innehållet i ett dokument. De ska rent av gå att stänga av, så att en läsare som är utled på att läsa ett dokument med vit text mot en knallröd bakgrund (huvudvärksframkallande!), eller som är färgblind och har problem att se någon speciell färgkombination som en författare satt på ett dokument, ska kunna stänga av CSS och se dokumentet med de färger han själv föredrar. Ett dokument ska vara lika läsligt utan CSS, om än inte lika "snyggt"...

Sen är det väl heller inget som hindrar att man gör audiella formatmallar för blinda (en speciell persons röst skulle kunna vara som en "font", till exempel Astrid Lindgrens röst för en saga, om det gick att få en dator att härma röster...), eller luktformatmallar för hundar...

Webläsare

De krav man ställer på en webläsare är att de ska göra sitt bästa för att åstadkomma en vettig tolkning av alla HTML-dokument, oavsett version. De ska alltså kunna göra en vettig tolkning av dokument som skrivits även i en version av HTML som ännu inte finns (genom att ignorera taggar den inte känner igen). På samma sätt ska de dokument som skrivs idag kunna tolkas på ett vettigt sätt av webläsare som inte finns än (det bästa sättet att försäkra sig om det är att skriva korrekta dokument).

De ska dessutom vara ganska feltoleranta och inte krascha totalt för minsta lilla skrivfel. Det innebär också att det inte räcker för en författare att kolla sina dokument in en enda webläsare, eller ett par stycken, för att veta om ett dokument är korrekt eller inte. Till det behövs både att man testar i så många olika situationer som möjligt, och att man använder sig av speciella program som har till uppgift att peka ut alla fel.

Kommentar

Det finns många människor som känner sig direkt förolämpade vid tanken på att det är innehållet och strukturen som är det viktiga och att layouten är oväsentligt smink. Jag har sett människor som högljutt beklagat sig och skrikit ut att "Vi har minsann yttrandefrihet i det här landet!" när de fått se sina websidor i en något annorlunda tolkning än just precis den de själva upplever i sina egna datorer.

Mitt svar på det är att yttrandefriheten handlar om innehållet, budskapet, inte detaljerna i presentationen. En text som handlar om katter handlar om katter, oavsett om den presenteras i mörkgrön Helvetica mot en himmelsblå bakgrund där små animerade vita kattungar med vingar flyger omkring och jamar, accompanjerad av musiken till senaste Whiskasreklamen eller om den presenteras i svart text av ospecificerad font mot en enkel grå bakgrund.