Answer by Jeremy Chone:
Here is a short list of what any good HTML5 frontend application developers should know:
- Understand that HTML5 is HTML and that the same application model is applicable. So, no new magical development paradigm was brought with HTML5 (outside of Canvas/WebGL, which is totally new), just browsers are more robust, much faster, and more capable.
- Understand the power of HTML and CSS for good component layout. Twitter/Bootstrap is a great (and probably the best) example of this. Simple HTML structure with simple CSS classes, and you can get some great reusable UI elements.
- Understand the benefits and the “Why” of the Web Workers. In short, it’s a way to do multi-threaded work in a single threaded environment. Before HTML5, the only way was with Ajax, and therefore including a server in the picture, now it can just be all local.
- Understand the Canvas vs SVG. This one is a tricky one, as there are lot of “social-engineering” baggage behind the technical aspects. On the technical side, SVG is a DOM approach to vector graphic (and consequently retained mode) whereas Canvas is a programmatic and immediate mode approach. The catch is that sometime it seems that Canvas gets a little bit more “love” from the browser vendor developers as SVG always had a love and hate relationship with HTML from its beginning.
- DOM Centric MVC. Ok, this is more an opinion than a fact, but given my expertise, HTML5 application developer (not web page developers) needs to have a good understanding of what is MVC, and realize that they do not need “do-it-all” meta frameworks do do MVC in HTML. In fact, with little DOM extension, it is relatively easy do do MVC the DOM way.
- onload vs jQuery $(documen).ready: which one trigger first? This is a great low level question to ask to anybody that claim they know jQuery. In short, onload trigger after, and $(documen).ready trigger before and is a normalization brought by jQuery.