Det här sättet att skapa program påminner väldigt mycket om hur det i dag går att bygga extremt avancerade och kraftfulla program som körs från webben. Ramverket som håller all kontakt med hårdvaran är webbläsaren, och skriptspråken är javascript, HTML och CSS.
Director blev snabbt populärt, och när cd:n började bli vanlig som distributionsmetod fanns det plötsligt extremt mycket utrymme som kunde användas för ljud och video. En stor marknad uppstod för spel som var fyllda med multimedia, men som inte krävde hög prestanda av datorn. Barnspel var i regel byggda med Director.
I den här vevan började webben ta fart som distributionsmetod av information, men den klarade inte av speciellt stora informationsmängder. Nog för att Macromedia, som ägde Director på den tiden, byggde ett insticksprogram för webbläsare som klarade att spela upp shockwave-filer, men begränsningarna var så stora att det behövdes en alternativ metod att bygga multimedia för webben på.
Ett enklare, mindre resurskrävande och framför allt mindre utrymmeskrävande multimediaformat var det man såg behövdes, speciellt eftersom tröskeln till att börja utveckla med Director var ganska hög, och inte tilltalade formgivare, filmare och musiker speciellt mycket. Reklambyråerna tyckte helt enkelt att det var för krångligt och jobbigt att lära sig Lingo (skriptspråket i Director) och att det tog för lång tid att få fram något som gick att använda.
Flash å andra sidan byggdes just för att tilltala formgivare genom ett klicka-och-drag-gränssnitt, och det lanserades som ett sätt att kunna ha samma totala kontroll på utseende som man har på trycksaker. Något formgivare och originalare på reklambyråerna köpte direkt. Webben på den tiden var ett mischmasch av tabellayout och inkompatibilitet mellan webbläsare.
Det visade sig ganska snabbt att Flash inte alls var den universella lösningen för webben. Vill man ha en webbplats som är levande och uppdateras kontinuerligt är det omständligt att ha byggt den i Flash.
Tillgängligheten blir dålig, vilket bland annat medför att inte alla kan använda sajten. Förutom att stora delar av de funktioner som fungerar i resten av operativsystemet inte nödvändigtvis fungerar i en Flash-film. Saker som skrollhjul på musen och klipp-och-klistra kräver extra stöd från utvecklaren.
Det som verkligen fick Flash att ta fart var Youtubes lansering 2006 och de snabba internetuppkopplingarna som dök upp i samma veva. Att Youtube valde Flash som teknik för att leverera video var ett val som förvånade många som trott att video på webben var en kamp mellan Real, Windows media och Quicktime. I och med Youtubes val raderades de aktörerna mer eller mindre ut helt på bara ett par år.
Adobes smarta drag att lägga till stöd för MPEG-4 AVC (h.264) gjorde att kvaliteten på filmerna ökade dramatiskt, och att även professionella och semiprofessionella filmare utöver avancerade entusiaster började välja Flash och AVC som publiceringsmetod på nätet. Flash dog som multimediamotor och återuppstod som ett videoleveransformat.
Webkit, Iphone, Flash och Apple
När Apple bröt loss Webkit till ett eget projekt från KHTML var det nog många ögonbryn som höjdes. Ryggmärgsreflexen var nog att tro att huvudanledningen var att bygga en egen webbläsare för att konkurrera med Internet Explorer. Så här några år efteråt är det tydligt att det Apple var ute efter var att föra webben framåt på ett sätt som inte bara gagnade dem själva, utan även alla användare.
I och med att Mozilla 2003 ställdes på egna ben av AOL med en kassa på två miljoner dollar, och med Apples engagemang och start av Webkit och lansering av Safari året innan hade en grund för en stabil, finansierad utveckling av två separata renderingsmotorer lagts. Med Mozillas lansering av Firefox hösten 2004, och den snabbt stigande populariteten för webbläsaren började det finnas både vilja och utrymme för att vidareutveckla webben.
Det var tydligt att fokus för Mozilla var att få en stabil, snabb och utbyggbar webbläsare som framför allt riktade sig mot erfarna användare. Möjligheten till insticksprogram gjorde den populär bland teknikvana unga män. De i sin tur såg till att installera läsaren på alla datorer de kom i kontakt med, och den fick därmed en snabb spridning.

Apple å sin sida behövde Webkit för att ersätta den eftersatta HTML-tolken som användes till bland annat systemets hjälptexter. Med Mac OS X 10.4 och introduktionen av Dashboard började man även lägga grunden för en vidareutveckling av webbstandarderna genom att låta utvecklare bygga enklare skrivbordsprogram med hjälp av HTML, CSS och javascript. För att få möjlighet till animationer introducerades <canvas> som var ett helt nytt märkord där man styr hur grafiken ska se ut med javascript. Det här, skulle det visa sig, var grunden till HTML5.
Apples lansering av Iphone med den uttalade planen att enda sättet att köra program på den var genom webbläsaren som webapps slog tydligt fast riktningen mot att utveckla teknikerna för webben ytterligare.
Webbläsaren som en port till hårdvaran
Tydligast blir det här när man tittar närmare på hur teknikerna utvecklas och kompletterar varandra. För animering finns CSS transforms (webkit.org) där animeringen blir hårdvaruaccelererad och därmed betydligt mjukare på lågpresterande hårdvara jämfört med när man animerar med javascript. Även 3d-animering är möjlig via 3D Transforms i CSS och via Webgl som är en skriptbar variant av Opengl för att generera hårdvaruaccelererad 3d-grafik i realtid styrd via javascript. Principen för att visa grafiken är densamma som för 2d-grafik genererad i <canvas> och kräver inte speciellt stora kunskaper för att kunna användas.
Den allra största fördelen med att flytta animering från javascript till webbläsaren är att det ökar prestanda på animationen. Mjukheten ökar och det går att lägga grafikgenereringen direkt på grafikprocessorn och därmed avlasta CPU:n. Det blir bättre helt enkelt.

Dessutom blir det lättare att dra nytta av möjligheterna till effekter genom att tröskeln för att kunna programmera för dem mer eller mindre försvinner. Att ha animeringsmöjligheter av objekt direkt i CSS öppnar för drösvis av webbutvecklare som inte i första hand är programmerare utan snarare jobbar med gränssnittsdesign.
Med Webgl och javascript kan man till exempel skapa webbaserade spel som kan utnyttja hårdvaran i princip lika effektivt som spel programmerade i C/C++/Objective-C, och som dessutom fungerar oavsett operativsystem.
Video är den springande punkten för Flash
I och med att Flashs popularitet tog fart först när video blev den stora grejen på nätet, så kan vi räkna med att när Flash inte längre behövs för uppspelning av video så kommer också populariteten att minska.
Nackdelarna med att använda Flash just för video är ganska överhängande jämfört med hur alternativet ser ut. Dels krävs en egenhändigt byggd spelare som har grundläggande funktioner för uppspelning, stopp och paus. Vill man fläska på lite så ska det gå att spola (eller vad man ska kalla det), visa i fullskärm och justera volymen.
Det har den senaste tiden dykt upp några fria spelare som Flowplayer (flowplayer.org) som gör allt lite enklare.
För material publicerat på Youtube och Vimeo kan man alltid använda deras egen inbäddningskod för att dra nytta av deras spelare, och med Oembed (oembed.com) blir det ännu enklare att bädda in media från dem och liknande sajter. Bland annat har Wordpress från version 2.9 stöd för Oembed.
Video i HTML5 blir populärt
I och med Apples tydliga ställningstagande till fördel för MPEG-4 AVC och h.264 och det mycket goda stödet för den tekniken i Quicktime och därmed också i Qtkit i Mac OS X och motsvarande i Iphone OS, har standarden för format och codec mer eller mindre satts. Både Youtube och Vimeo har lanserat HTML5-versioner av sina sajter, och båda har valt MPEG-4 AVC som format. Inte speciellt konstigt i och med att båda sajterna länge levererat exakt samma video men med en Flash-spelare.
I dagsläget har Webkitbaserade läsare stöd för MPEG-4 AVC i <video> och Firefox har stöd för Ogg. När så stora aktörer som Apple och Google valt att lägga in stöd för, och leverera h.264 så kan man räkna med att det är det som kommer att gälla som en grundläggande de facto-standard.

Först nu har <video> stöd för fullskärm, och det fungerar i Firefox 3.6 och de nattliga byggena av Webkit. Safari, Chrome och alla andra webbläsare som använder Webkit kommer inom kort också att få fullskärmsstöd.
Grabbarna på Jilion i Schweiz (jilion.com) har tagit fram en exempelsajt för hur man bygger en spelare i HTML5 och javascript som klarar fullskärm om man använder Webkit. Om man alt-klickar på fullskärmssymbolen så spelas videon även utanför webbläsarfönstret.
När blir det verklighet?
Det kommer att gå ganska fort nu. Fler och fler sajter kommer att byggas i HTML5 och där det är möjligt kommer hårdvaruaccelerering att utnyttjas. Vi kommer att få se stöd för CSS transitions i bibliotek som Jquery där det inbyggda stödet i webbläsaren utnyttjas om det finns, och om inte görs animeringen i stället på det gamla sättet.
Videouppspelning kommer att föredra HTML5 före Flash för att göra innehållet tillgängligt för Iphone, Ipod touch och Ipad, men ändå behålla viss kompatibilitet med Internet Explorer.
Att få det att fungera i alla plattformar är faktiskt enklare än du tror. Se guiden på nästa sida.
















