The Broken Web 4 - HTML5 Edition

The Broken Web 4 - HTML5 Edition
   As you probably know there is a new kid in the Web town and it is called HTML5. The web mafia claims that HTML5 will free us from nasty plugins like Flash, Silverlight and Java and even from the desktop applications because it is so cool and has so many features and no developer will be able to resist it… oh… and it works on the iPad! These days every second tech blog is writing about HTML5, there are HTML5 talks on every tech conference and respectable tech-related website with countless readers like this one cannot miss the opportunity to comment on the matter.

   So here is what I learned from all these articles I read and all these conference sessions I attended.

   

Standard


   As it seems HTML5 is not a standard today and not even a candidate. It is a draft. W3C recommends against using it today. Actually if you are using it today you are making work on the standard harder because they cannot change features without breaking what you wrote. It is expected to become candidate recommendation in 2012 and a recommendation in 2022. Good luck with that. Oh and by the way they had this debate and decided that instead of failing hard when there is invalid markup they should standardize errors and error handling behavior so everyone can keep writing invalid HTML. Cool! I am so happy that I will still be able to write invalid HTML in 2022.

   

Multimedia


   HTML5 has this wonderful video tag that will allow websites to embed video without the need for a plugin. It is so cool that all the 96% of web users who have Flash installed will momentarily uninstall it. Some of the 4% web users who do not have Flash will be able to watch videos on their iOS devices. On the other hand there are more than 10% users of IE6 today. So if we learn from history ten years old browsers will always be like 10% of the browsers so in ten years there will be more browsers that do not support HTML5 videos than devices without Flash. The moral of the story is if you want to get to the largest audience for the next ten years use Flash. Oh and by the way JavaFX and Silverlight will still be better options in terms of deployment for at least several more years.

   But wait there are even more good news. HTML5 does not standardize on a single video format. Right now there are three options but I guess Ogg will drop out in favor of WebM soon so I will only discuss the other two. First there is the H264 codec which is good, has hardware support and is widely used but is proprietary. While it is free for users content providers have to pay if they encode commercial content with it. Firefox and some other useless browsers will not implement it because it is not open, free or whatever they call their religious bullshit. On the other hand WebM was soon made open and free by Google. However there are patent threats with WebM and big players like Apple and Microsoft are not likely to support it out of the box because they can get sued so you will have to install it separately… like Flash. Basically you have to add two different files in the video tag as a fallback mechanism for browsers that do not support one of the formats and you should add Flash as a fallback option for older browsers. According to HTML5 supporters that is somehow much better than using just Flash because adding additional markup and testing all the combinations is so cool. What is more encoding video is one of the most computationally expensive operations and this is why people use it as a benchmark when testing the newest processors. Of course we want to double that work! I guess Intel are big supporters of HTML5 video because they will sell many more processors if it becomes popular.

   Do not turn off your computer yet because we are far from over. HTML5 video has very basic and mostly incompatible streaming capabilities. There is also the issue with jumping to a specific moment in the video without loading everything before that moment. Some commercial content providers want to protect the content of the video via DRM which cannot be done with the new tag. It is also much harder to embed in other websites and it is harder to overlay ads on top of it. You do not believe me? You will probably believe YouTube.

   Obviously the video tag is totally useless. Same goes for the audio tag.

   

Canvas


   The canvas tag in HTML5 allows developers to paint lines and dots and rectangles and even paths on the screen. This is such an innovation. Nobody has ever been able to paint stuff on a screen. HTML5 is a revolution in how we develop software! Soon everyone will be developing games in HTML5. Someone ported Wolfenstein 3D with canvas and JS and it was slower on the modern Mac laptop I saw it running on than on the 286 I once played it on in 1993. This is such a great progress. I have been dreaming for so long to play 18 years old games with lag.

   Closely related to the canvas element is WebGL. WebGL is not specification developed by W3C but by the Khronos Group – the organization that develops OpenGL. As such it is debatable if it is part of HTML5. WebGL allows you to paint hardware accelerated 3D stuff in the canvas element with a subset of OpenGL. Some guys working for Google managed to port Quake 2 in JS and HTML5 using WebGL. Sometimes it runs with "up to 60 fps". I was so impressed that I made some calculations. Quake 2 was released in December 1997 so the port comes about twelve years later. According to Moore's law computers get two times faster every two years. This means that for twelve years they got about 64 times faster. I am so impressed that the web is so advanced these days that people can create games that are 64 times slower! I am so excited. Oh by the way there is another version of the law that says computers get two times faster every eighteen months. If we use it our new HTML5 games will be even 256 times slower! I am just shaking with excitement about our HTML5 accelerated future. Game developers should be excited too. Instead of using Flash, Silverlight and Java that are basically the same in every browser they can feel the joy that web developers feel today and support so many different browsers!

   To be honest Canvas is not entirely useless like the multimedia elements. It can be used for charts and other business data once it gets widespread deployment.

   

Form Input Elements


   In the book "1984" there is this thing called the Two Minutes Hate where people gather to hate Emmanuel Goldstein. I am sure all browser makers have similar sessions where they hate web developers. I imagine pictures of web developers are projected on a screen and the browser team hates them with passion.

   As it turns out HTML5 has some pretty cool features like the new form input elements. You can have an input of type date and the browser will draw a calendar for the user to select a date. The calendar may be native to the OS or to the device. There are types for validating input with regex, email, telephone number, color picker, etc. It provides cool and natural interface for the user without the need for complex JavaScript attached to the input. What is more these elements fail gracefully because if they are not supported the user will see a simple textbox where he can write text representation of the expected input. Developers can then validate the input on the server and everything will still work as intended. The experience for the user with the obsolete browser will be worse but the form will still be 100% usable. These features can change the way I work. Things I do every day will become so much easier. These features are useful for almost every web app. This is how the web should evolve!

   However you already know there is a catch, right? The catch is that right now no major* desktop browser supports these features and as far as I know they are not in the beta versions that are going to be released. To sum it up they put tremendous effort in creating useless multimedia players, a complex drawing API, they even made these garbage features hardware accelerated but they did not include the thing that is actually useful, fails gracefully and is about a hundred times easier to implement. They invented it just to annoy us. I told you these guys hate us. They hate us personally, by name and they do it with a passion! I hate them too!

Update:
As it turns out the latest version of Chrome has some rudimentary support for the new input types.

* Unless you consider Opera a major browser. Opera is the best browser that nobody uses and as such it exists for the sole purpose to annoy developers.

   Related articles:
   The Broken Web
   The Broken Web 2
   The Broken Web 3
Tags:   english tech 
Last edited by:   Stilgar
on   11:35 01.11.2010
Posted by:   Stilgar
10:51 01.11.2010

Comments:

First Previous 1 Next Last 

Posted by   JOKe (Unregistered)   on   11:20 01.11.2010

sha pisha na shlqkavica shtoto me kefi :
Dnes mi popadna tova : http://www.itwriting.com/blog/3391-microsofts-silverlight-dream-is-over.html
a i ne samo Appletite sa si umrqla kauza oshte ot 90te godini kakto e iasno.
Vsyshnost HTML5 nikoga ne e bilo za dai da pishem na raka.
HTML5 e za dai da pishem neshta che da ne pishem na raka.

kakvo imam predvid

1vo za video :
video taga si e shit s 2 codeca ta i flash ta i neznam si kakvo NO KAKVA E ALTERNATIVATA v momenta ?

kakto znaete ima 4% hora kato Stilgar deto ne si kachvat ili si blockirat flash. FlashBlock e nai svalqniq plugin az go imam nasqkade shtoto flash qde mnogo CPU i me draznqt baneri. Ta otdelno na telefona si nemoga da vidq nikav trailer na saita na kino arena ili na cinema city (daje programata nemoga da vidq da gi eba che menuto e flash) tai che kakva e alternativata ako iskam da pokazvam video content na 100% ooo da ima klienti deto kazvat tova iskam da moje VSEKI da go vidi az sam imal takyv sluchai i kakvo se pravi ? ami kakvoto praviha gametrailers do skoro.. Flash Link, Quicktime link, Windows Media Player link, Real Player Link. Ili syzdavash qk player koito checkva pod red i fallbackva ako go nqma.
Tova e i s HTML5 Realno developerite kato NAS nqma da pishat 200000 reda HTML ami developer X koito shte pecheli X pari pri X klonqshto kam 0 no vse pak neshto shte e napisal nqkakav gotin player koito da fallbackva sam. Naprimer nai qkiq spored men e Sublime Video. moje da se vidi spisaka ot tuk http://blog.insicdesigns.com/2010/06/best-html5-media-player-implementations/

za Sublime video http://sublimevideo.net/ moga da kaja che RABOTI navsqkade. Na vseki browser i na vseki telefon DORI v momenta.( ne 2020 )

Za audio taga neshtata sa ABSOLIUTNO sashtite.

za Canvas. Misho koi te kara da risuvash to4ki po ekrana ne se izlagai ideqta e totalno druga ideqta e da se syzdavat Authoring tools koito da generirat toq HTML5 Canvas shit vmesto da se syzdavat 23122323 Authoring toola koito generirat JavaFX flash Silverlight MaikaMu OpenLaszlo WTFShit i etc i da imash 31232 plugina kato quicktime i etc :) Ta s drugi dumi proizvoditelite prosto shte napravqt generator za Canvas vmesto generator za Silverlight ili Flash. Flash veche pokazaha podoben tool koito sharenah nqkade v facebook obshto zeto generira HTML5 canvas ot fla vmesto swf koeto se playva s flash player. Imashe sluh oshte predi godina che Apple pravqt HTML5 Authoring tool no ne go release-vat tai kato chakat dobyr browser support ( koito po moe mnenie samo na Canvas taga shte vidim do 2 godini shtoto da si go priznaem men ne me ebe za formite i validaciqta i video taga tiq raboti i sq se pravqt men me ebe za canvas kakto i google i mnogo drugi. Daje microsoft switchvat ot silverlight kam html5 i neshto drugo http://www.itwriting.com/blog/3391-microsofts-silverlight-dream-is-over.html daje te se otkazvat ot ideqta da izmestqt adobe shtoto prosto e po lesno da gi kupqt ako nishto ne stane s html5.

Sq za opera opera e palna shega i do sqn e sam vidial edin sait deto az da sam pravil i opera da go otvarq kakto trqbva.

Posted by   Stilgar   on   11:48 01.11.2010

Ami alternativata na HTML5 videoto (i drugite bokluci) e da si napraviat apps za telefonite koeto te PRAVIAT i shte produljavat da praviat shtoto e po-iako!

V taia statia pishe "the Silverlight CROSS-PLATFORM dream is over". Na SL po princip nishto niama da mu stane daje s tolkova pari naliati v telefona i SL kato edinstvena platforma za razrabotka na nego podoziram che shte investirat dosta v taia tehnologia, a koito si e mislil che navsiakude shte ima SL (ili Falsh) naistina shte triabva da se subudi. Nishto nikoga niama da e cross-platform osven ako ne e mega grozno i nefunkcionalno. Budeshteto e v platform specific neshtata kato apps za konkretni telefoni naprimer i tochno zatova Jobs goni Falsha ot negovata platforma. Toi prosto ne iska apps koito sa plateni s parite na negovite klienti da se poiaviavat na drugite platformi.

Posted by   JOKe (Unregistered)   on   12:21 01.11.2010

mne stiv goni flash shtoto ne e negov
toi goni vsichko deto e ne e negovo :)

Posted by   Ravenheart   on   01:20 02.11.2010

.NET Micro Framework :)

Posted by   JOKe (Unregistered)   on   15:37 02.11.2010

.Not кво ?

точка

Posted by   тъч (Unregistered)   on   22:34 08.12.2010

Уф, що се дрогирате взаимно с тоя ФУД. Вижте Grade A браузърите на JQuery и това е HTML5.

First Previous 1 Next Last 


Post as:



Post a comment: