I was finally persuaded to take a course on HTML5/CSS3 at Noble Desktop with a friend of mine who was attending. First off, let me tell you, this is a GREAT school. The instructor really knew her stuff. She taught the material clearly and at a nice pace and she was also able to answer any odd question you threw her way. She also had personal anecdotes about browser compatibility and nuances of working in a company that prohibits upgrading to latest browser versions. I was so happy to know she had been in the trenches and was not just an academic.
It was a two day course focusing on building a webpage using HTML5 elements such as video, and audio as well as new CSS3 modules such as transitions, multiple backgrounds, borders, shadows, etc. All this was really fun and fulfilled my “immediate gratification” quotient. But what I found most enjoyable and impressive is how much they focused on cross browser compatibility and gradual degradation. I guess this comes with the trade..to be a really good CSS coder, you have to know cross browser compatibility WELL. And thus, that was the part of front-end coding that I was not looking forward to. However, HTML5/CSS3 and many open source libraries make it sooooo easy. Have you heard of Modernizr? It is a feature detection library for CSS3. So instead of asking the client browser what VERSION it is, the code can simply ask the client browser which FEATURES it supports. Then you can write logic to implement the ‘x’ feature if supported and provide a work-around, or perhaps even nothing, if its not supported. CSS and its community has come a long way since the last time I took a look at it. This class made me want to go build my own website soup to nuts….front end to back end. So fun not to be a know-nothing for the time being.