HTML5… waarom zou ik?

Column
8 juli 2010 om 11:57

Het jaar 2000. Het tijdperk van tables, framesets en font-tags. “Oude rotten” die sinds de jaren ’90 zijn opgegroeid met HTML1.0, 2.0, 3.2 en 4.0 wisten eigenlijk niet beter – sterker nog, ze waren zich vaak niet eens bewust van deze door het W3C bedachte standaarden. De meesten leerden HTML dankzij de “view source-methode”. Het ging hen er niet om hoe valide de code was, het ging er juist om dat het wérkte.

Maar er lag een revolutie op de loer. Dankzij initiatieven als het “Browser Upgrade Campaign” van WaSP groeide de populariteit van moderne browsers als Internet Explorer 6.0 en Mozilla. Tegelijkertijd groeide er, dankzij de verbeterde ondersteuning van XHTML en CSS2, een besef bij developers dat het een goed idee is om je te houden aan webstandaarden. Code hoort valide te zijn, en structuur, presentatie en gedrag gescheiden. Weg dus met tables (althans, voor lay-out), font-tags en framesets.

Dit dogma van de heilige drie-eenheid (XHTML, CSS en Javascript) – sprak mijn indertijd jonge en leergierige geest wel aan. Ik had het licht gezien en bestudeerde fanatiek de heilige geschriften van W3C. Ik veranderde langzaam maar zeker in een vrome evangelist die zijn blijde boodschap bij elke programmeur en vastgeroeste front-end developer verkondigde.

Die blijde boodschap werd door de oude rotten over het algemeen niet positief ontvangen. Immers, nieuwerwetse zaken als XHTML, CSS posititioning, accessibility, doctypes, valideren… waarom zou je? Tabellen en framesets werkten nog steeds prima. Het credo luidde “Als het werkt, werkt het”. Ik wist wel beter: deze houding was uit pure gewenning en gemakzucht ontstaan en zou de ontwikkeling van het web doen stagneren! Schande!

Het jaar 2010. Dit is het jaar van de iPad, Chrome, en… HTML5. Met al haar “nieuwerwetse” elementen en verschijnselen zoals canvas, microdata, cache manifests… Allemaal leuk en aardig, maar waarom zou ik me daar in moeten verdiepen? Immers, die oude vertrouwde regels XHTML, CSS en Javascript werken nog prima. En als het werkt, werkt het… toch? Hemeltje lief, ik word oud!

Als het werkt, werkt het. Maar het kan altijd beter! Wat mij betreft is dat aanleiding genoeg om er achter te komen of HTML5 daadwerkelijk een verbetering is op de XHTML die ik, gemakzuchtig als ik ben, al bijna 10 jaar routinematig schrijf. Verander niet in een vastgeroeste oude rot maar verdiep je vandaag nog in dat nieuwerwetse gedoe!

Over de auteur

Carsten Altena
Carsten Altena is een grafisch ontwerper met een affiniteit voor clean, lean, user-centered en toegankelijk webdesign. Naast grafisch ontwerp heeft hij ook veel ervaring als front-end developer, en was hij een van de eersten in Nederland die webstandaarden zoals XHTML en CSS omarmden. http://www.carstenaltena.nl/creeert/
  • http://www.pimderks.com Pim Derks

    Leuke posting, hoewel ik in eerste instantie dacht dat je het nut van HTML5 niet in zag. Afgelopen weekend het boekje HTML5 for Designers van A Book Apart doorgenomen en dat onderstreept m.i. perfect waarom HTML5 zoveel gaat veranderen als er eenmaal goede browsersupport is (lees: als de massa met IE9 werkt). HTML krijgt (nog meer) semantische waarde, veel functionaliteiten hebben geen plugins meer nodig, ARIA-attributen voor toegankelijkheid etc. Ik kan iig niet wachten tot HTML5 de defacto standaard is!

  • http://twitter.com/edgarleijs @edgarleijs

    Het werkt toch? Ja, een valkuil om nieuwe technieken en talen aan je voorbij te laten gaan. Voor je het weet behoor je tot een verse generatie dinosaurussen, die wars is van (r)evolutie. Kijk maar uit want je wordt gewoon gesaneerd uit het systeem!

    XHTML1.1 + CSS2.1 heeft mij geleerd me braaf te gedragen, </de deur netjes achter je dicht doen>, </geen hoofdletters gebruiken>, </semantiek> etc…
    Met deze goede gewoontes is het makkelijk omschakelen naar HTML5 zeker omdat deze zich uitermate vriendelijk gedraagt. Minder code, minder JS, minder excessief Flash gebruik, meer semantiek, grotere toegankelijkheid.

    Ja, je bent gek als je niet overstapt!

    <img src="http://www.edgarleijs.nl/dehondhtml5.png&quot; alt="Ik zeg: Doen!"/>

  • http://twitter.com/ozboz Oscar

    Leuk artikel. Beetje erg negatief over 'oude rotten' maar dat heeft wellicht te maken met de oude rotten in je omgeving waarin je werkte. Zelf ben ik een hele oude rot en denk dat mijn eerste sites uit 93/94 stammen.

    Volgens mij heeft het met interesse te maken. Wanneer je daadwerkelijk bezig bent met je vak wil je ook ontwikkelingen volgen. In de dagen voor Google was dat vooral erg zoeken maar tegenwoordig is het helemaal makkelijk om even wat op te zoeken en te zien of het soms beter kan.

    xHTML heeft bijvoorbeeld weinig toegevoegd ivt HTML 4.01, het grote voordeel is dat je netter leert programmeren wil je door de validator komen. HTML 5 is toch weer een ander verhaal en een grotere stap. Ik heb laatst voor op de iPhone/iPad als soort van hobby projectje een webapp gemaakt in HTML5 en het is leuk om de mogelijkheden te zien, met name op CSS gebied.

    Probleem is alleen dat de toepasbaarheid heel beperkt is wanneer er geen gebruik gemaakt wordt van een browser die de mogelijkheden (grotendeels) ondersteunt. Altijd leuk om een beetje mee te klooien maar voor een site met een breed publiek niet heel erg handig.

    Altijd goed om bij de tijd te blijven (of in ieder geval een poging te doen), maar helemaal losgaan in nieuwe technieken puur 'omdat het kan' is net zo slecht als blijven hangen in tabellen en framesets 'omdat ik het ken'.

    Ze zijn in 2004 al een beetje begonnen met HTML5, in 2012 candidate recommendation.. en in 2022 zou het volledig ondersteunt moeten worden door tenminste twee browsers. Dan is iedereen van nu ook wel weer een oude rot.

    Mijn punt, het is leuk. Ook leuk om te zien wat de nieuwe mogelijkheden zijn/worden. Maar er moet wel realistisch naar gekeken worden. Als je dubbel zoveel tijd bezig bent om een site in HTML5 te ontwikkelen voor de gelukkige browser bezitter maar je bent vervolgens veel extra uren kwijt de site voor andere browsers compatible te maken dan is dat niet snel in het voordeel van de klant.

    Experimenteren met HTML5 is super, en het is bijvoorbeeld leuk om een poging te doen van je huidige site een iPhone afgeleide in HTML5 te maken als leuke manier om er wat bekender mee te worden. Toepasbaarheid is verder maar matig.

    • http://twitter.com/edgarleijs @edgarleijs

      Goede quote: "Altijd goed om bij de tijd te blijven (of in ieder geval een poging te doen), maar helemaal losgaan in nieuwe technieken puur 'omdat het kan' is net zo slecht als blijven hangen in tabellen en framesets 'omdat ik het ken'.

  • http://interactivestudios.blogspot.com Paul S

    Overstappen zeker. De nieuwe doctype en semantische opmaak tags kun je (dankzij een beetje javascript) nu al gebruiken, ook in IE. Maar alle voordelen en nieuwe technologien die daar nog bij komen zijn helemaal de moeite waard. Zoekmachine technisch is HTML5 ook beter voor je website (toevallig vanochtend nog een blog post over geschreven).

    Ik kan zelf niet wachten tot we de nieuwe form elementen, video tag (met CSS styling en javascript bediening) en offline detectie kunnen gaan werken!

    En heb ik eindelijk iedereen op het kantoor aangeleerd dat ze <img /> gebruiken in plaats van <img>, kunnen we weer omswitchen! Al werken zelf closing tags in HTML5 ook gewoon.

  • http://valuedstandards.com David Hund

    In het kort: er is geen enkele reden om niet vanaf vandaag al HTML5 te gaan gebruiken!

    Het probleem in veel van dit soort discussies is de verwarring rondom HTML5 en browser ondersteuning. We weten nu, hopelijk, allemaal wel dat "HTML5 is pas klaar in 2022" onzin is.

    Wat mensen ook moeten beseffen is dat "HTML5" schrijven zo simpel is als je doctype omgooien. Dit geeft je direct al veel voordelen (die tijd _schelen_) zoals het weglaten van het "type" attribuut op script- en link tags, het gebruiken van het a element om andere (ook block level!) elementen, etc.

    Ik zie niet in waarom je bovenstaande niet vandaag al zou doen: elke browser ondersteunt het, het scheelt typewerk, etc. Daarnaast is iedereen volkomen vrij in de _syntax_ die je kiest. Ben je gewend aan de strictere XHTML *syntax* dan blijf je die toch lekker gebruiken?! (Noem het alleen geen XHTML5 😛 )

    Of je daarnaast de nieuwere semantisch-rijke section elementen (als nav, section etc) gebruikt is aan jou. De styling hiervan is, in IE, nog afhankelijk van een JS hack, maar verder werkt dit ook prima.

    Zo kan je ook alvast, zonder problemen, de nieuwere input type's (zoals email, date, url) gaan gebruiken. Er is niets op tegen: in oudere browsers is de fallback een simpele input (text). (Je valideert toch hopelijk op de server!?)

    Dus: deze discussies moeten een beetje weg van de HTML5 alles-of-niks. Dat is te kort door de bocht: een groot deel van HTML5 is prima te gebruiken en geeft je een aantal leuke extraatjes.

  • http://www.09works.nl Martijn

    Leuk artikel en ik ben het zeker eens met je standpunten. Waarom overstappen? Maar als webdeveloper kan het zeker geen kwaad om eens te gaan verdiepen in de nieuwe technieken.

    Het probleem is de browser. Als je ziet dat nog veel mensen met IE7 werken, verwacht ik dat de overstap naar IE9 (die overigens nog moet uitkomen) door velen nog wel even duurt. Erg jammer natuurlijk!

    Zelf heb ik me al wat verdiept in het canvas element. Een geweldig html-element als je mij vraagt. Veel dingen die nu ontwikkeld worden in Flash, kun je vervangen door gebruik te maken van het canvas element. http://www.09works.nl/labs/html5-canvas-klok vind je een kleine demo.

  • Boudie

    Carsten,

    dit is inderdaad een issue waar iedereen tegen aan loopt. Een goede IT-er (bah, lelijk woord) moet de drive hebben om iedere keer iets nieuws te leren om zijn werk wat makkelijker te doen. Uiteindelijk zijn we allemaal lui!

    PS. Er zijn nog heel veel bedrijven die met IE6 (!) werken, omdat er applicaties zijn die anders niet meer werken…. De wereld op zijn kop

  • http://www.carstenaltena.nl/creeert/ Carsten Altena

    Dank jullie allemaal voor de leuke reacties op mijn column! Zoals Pim Derks al Oscar al hebben gezegd: je kan vandaag al tot op zekere hoogte HTML5 toepassen zonder je echt zorgen te maken over ondersteuning van oude browsers. Al moet je wel weten wat je doet natuurlijk…

  • http://www.pimderks.com Pim Derks

    Pas op het werk een site gemaakt met HTML5 en de hele bende. Werkte zelfs nog redelijk in IE6 met een bende Javascript-fixes erachter. Tot we gingen printen, toen ging het mis. Gelukkig was daar ook al een fix voor, dus ook dat was in een paar minuten opgelost.

    De nieuwe elementen zou ik sowieso aan iedereen aanraden om te gebruiken in combinatie met nieuwe attributen als placeholder, role e.d. Tenzij je natuurlijk voor een overheidssite o.i.d. aan het ontwikkelen bent waar de boel ook zonder javascript moet functioneren en oudere browsers nog redelijk van belang zijn. Projecten met een beetje een moderne doelgroep en eigen projecten zou ik er echter geen seconde meer over twijfelen.

    Met een plugin als Modernizr kun je dan gemakkelijk fallbacks in elkaar draaien voor oude meuk. De nieuwe elementen geven mij persoonlijk gigantisch veel extra hooks om mijn CSS aan te hangen, waardoor ik stukken minder classes e.d. nodig heb om op te stylen. En dat je dan ook nog allemaal gave nieuwe functionaliteiten krijgt als video/audio die je volledig kunt stylen, geo-api en dergelijke maakt het natuurlijk helemaal tof. Ik ben ontzettend benieuwd wat voor invloed dit gaat hebben op het gebruik van Flash en Silverlight… Natuurlijk zullen dergelijke applicaties nodig blijven – maar als je ziet wat er nu al mogelijk is met HTML5 + CSS3 + Javascript dan vraag ik me heel erg af waar je in godsnaam nog een plugin voor nodig hebt over een jaartje of 5 😀

  • http://twitter.com/_boye @_boye

    Wat betreft mijn visie op deze kwestie sluit ik me volledig aan bij de reactie van David.

    Al moet ik wel zeggen dat het gebruik van die JS shim om nieuwe HTML5 elementen te laten werken in IE niet echt strookt met de progressive enhancement filosofie. Vandaar dat ik nog redelijk voorzichtig ben het gebruik van deze elementen als het gaat om client sites.

  • http://www.klash.nl Virgil Spruit

    Wat een slap artikel zeg. Ben blij dat er nog wat zinnings in de reacties staan.

    Veel developers zijn nog steeds niet af van IE6, laat staan IE7/IE8 die krom liggen met HTML5. Zoals eerder gezegd kan je wat leuke functionaliteiten gebruiken door middel van graceful degradation. Verder kan je nog geen applicaties die volledig op HTML5 rusten kunnen uitrollen. Op veel elementen moet je nog fallbacks maken.

    Plus de planning voor een definitieve versie staat op 2012. Misschien is dat wel echt het jaar dat de mayas voorspelt hebben dat wij eindelijk verlost zijn van IE6.

    • http://www.klash.nl Virgil Spruit

      2022 zelfs..

  • http://www.santhos.nl Thomas Eilander

    Ik herken me wel in dit verhaal. Bij mij is het precies zo begonnen als in de eerste alinea. Maar goed, HTML5. Ik moet zeggen dat ik me er nog niet echt in heb verdiept. Op het moment dat het door alle browsers volledig ondersteunt wordt ga ik dat eens rustig doen. Zelfde geldt voor CSS3. En dan verwacht ik niet dat het revolutionaire veranderingen zullen zijn.

  • Mike De Greef

    Leuk artikel en zeker goede reacties. Mijn besluit is dat ik nog wat zal wachten om over te schakelen naar HTML 5 voor mijn website's maar wel sommige zaken eens gaan uittesten om te zien wat het allemaal kan.
    CSS3 ditto.

    • http://www.carstenaltena.nl/creeert Carsten Altena

      Dank je. HTML5 kun je nu al toepassen voor "gewone websites", al kun je nog niet "all the way" gaan.

  • http://www.wonderolie.nl Jeroen Oliemans

    Ik denk niet dat het slim is om te wachten, het opbouwen van een pagina in html 5 biedt semantisch gezien een meer planmatige aanpak dan nu het geval is. Je kunt namelijk je pagina veel beter opdelen in elementen die eventueel weer herbruikbaar zijn voor andere pagina's. Ook de structuur van de pagina outline is interessanter te maken. Kortom de gedachtegang is wel anders. En daarnaast is het ook erg leuk te experimenteren ook met de nieuwe API's.

    • http://www.carstenaltena.nl/creeert Carsten Altena

      Helemaal mee eens, Jeroen. Precies de boodschap die ik over wil dragen: experimenteer er mee, en daar waar mogelijk, gebruik het in de praktijk.