When I first looked into learning HTML5, this was the first site I found useful for playing around easily with the actual HTML5 syntax. My attitude is not shared by everyone. There is another site called W3Fools.com that asserts that the W3Schools site is not only unaffiliated with any real authority such as W3C, but also that the site provides damaging, wrong information. I have no idea if the first claim is actually correct, and for my purposes it did not matter at all. When I reviewed their claims, the data that is cited as incorrect is in the details, deep down. Examples include simplifications and errors about which features are supported by specific browsers.

I agree with the advice to be wary of any informational site, but while I might get some abuse for saying it, the “Try it yourself” feature is too useful to not play with. The best advice is to always get a second source for any information, and to know the source. If you find a blogger or presenter that has provided good information in the past, chances are they will be good in the future.

HTML5 support in Internet Explorer 10
Starting with Internet Explorer 9, Microsoft started to support HTML5 features. With IE10, it has gone into embrace mode. Now that we understand that HTML5 is the key to many companies’ cross-platform strategy, Microsoft only really has two choices: Embrace the wave and make the best of it, or introduce something more capable and compelling and thereby divert the wave.

The latter option is a tall order, though I expect Microsoft thinks its strategy is a bit of a hybrid between the two. If Metro-style apps are a big success, then that is probably true, but with the support for HTML5 in IE10, Microsoft shows it has it covered and won’t be left behind by the other platforms. There is a site provided by Microsoft that lets you see exactly how HTML5 is supported by IE10. I have tried it out and it has the advantage of letting you modify the markup and see how it renders very easily. This is similar to the feature I liked from W3Schools.com.
#!
Metro-style apps with HTML5
To better gauge experiences beyond my own, I turned to Dan Wahlin and asked him why a company should use HTML5 for Metro development. He said that many of his customers are asking that same question—and for good reasons. He went on to explain, “The No. 1 reason in my opinion to go the HTML5/JavaScript route is to leverage existing skills. If a company already has a team of developers skilled in HTML and JavaScript, then going that route makes sense. If the team already knows XAML, well then it may make more sense to go that direction. It all depends on the skill sets involved, along with other factors such as whether or not the app may be built to run on other platforms.”

When you use Visual Studio 11 beta to build an HTML5 application, you actually pick JavaScript as the language, as opposed to Visual C#, Visual Basic or Visual C++. HTML5 is the markup, but JavaScript is the language that accesses the WinRT runtime to make things happen in much the same way that an ASP.NET application on .NET has always served up HTML4, but the language under the covers could be C#, VB.NET or any of a dozen others made available over the years.

While discussing the various options, Palermo commented, “Developers who are already strongly entrenched in the .NET languages such as C# or Visual Basic will likely pursue Windows 8 application development in the same language. For the developer interested in embracing the popularity of HTML5, creating Windows 8 applications with JavaScript, CSS and the new features supported in HTML5 will be a fantastic way to maintain experience in these technologies.” This is where I found myself when I realized how important HTML5 was going to be over the coming years on the cross-platform issue. What better way to learn about an update to a familiar technology than couched in a familiar development environment?

As always, the built-in templates give you a jump-start and take care of the basics, and in some cases a good deal more. In Figure 1, you will see the choices of templates available for JavaScript applications using Visual Studio 11 beta. Notice that there are many more options under C# than with the other languages.

HTML5
Fig. 1

The Grid Application template is a Metro-style staple that allows you to quickly build an application that lets you browse things whether those things are books, songs, tasks or anything else you can make work in a grid context.

Figure 2 shows a sample of an application created with this template with only a single edit to the generated HTML. To make that change, I opened the HTML page and edited the text of the page title from the default (the project name) to what I wanted it to display.

HTML5
Fig. 2