The Future is HTML5

Just recently, a list I belong to had a discussion on Windows 8 applications. At one point, the thread grew a bit philosophical and the possibility (or fact?) that HTML5 was the future was presented. This spurred quite a bit of discussion.

If asked, I would state that HTML5 is the future, but disagree with the statement “HTML5 is THE future”. As a developer, especially were I strictly a UI developer, I think it would be stupid to not learn HTML5 now and stay somewhat ahead of the curve. Why stupid? Multiple reasons:

  1. HTML5 is the next rich web technology
  2. With tools like PhoneGap, HTML5 is a decent mobile UI technology
  3. With Microsoft using HTML5 for Windows 8, it is a UI technology that takes you to the most popular desktop
  4. So, yes, HTML5 is the future. But this future is not necessarily an exclusive future. In fact, if it is, then the advanced developers of the world, especially the teachers, trainers and speakers, have done a piss poor job of mentoring up the next wave of development professionals.

    Silverlight and WPF

    When you have a discussion with Microsoft developers about HTML5, comparisons with Silverlight are inevitable. And, with so much overlap, I think Silverlight is dead, at least in its current incarnation. Unless Microsoft is willing to go head to head with HTML5 and make Silverlight a standout (a move they have not made to date), why would someone choose XAML over the markup in HTML5 when HTML5 is so much more portable? Rhetorical, as I realize those who have already invested heavily in learning Silverlight will hang on.

    But, Silverlight could live on as a mini .NET library that the browser can access. In my opinion, this is the strength of Silverlight, even if it is not as sexy as XAML. For this reason, I think Silverlight is on a decline, as far as UI goes, although there is still a potential for life. Perhaps marrying the Silverlight underpinnings with HTML5 will keep Microsoft on the “smart client” side.

    On to WPF. With Silverlight representing most of what WPF can do (it at least hits the 80/20 mark), I don’t see much of a future for WPF. If HTML5 had not already invaded the desktop, I might see a greater need to keep WPF around, but if the desktop UI, the mobile UI and the web UI can be expressed with one technology, why do we need WPF.

    .NET and the rest of the “world”

    Unless JavaScript can become a viable middle tier language, .NET languages are safe, which means it is safe to continue to learn C# or VB. Java is also safe. Both of these are “doubly safe”, at least for the near future, as so much time has been invested in creating applications and training developers. In the long run, it will depend on whether we continue to push SOLID principles, etc., for quality software.

    If we focus on .NET alone, the web form paradigm is in danger if Microsoft does not introduce more HTML5 goodness for web forms. ASP.NET MVC has already embraced HTML5. I see WinForms holding on by a thread, at least until you can create a formed application as easily in HTML5 (Microsoft did a poor job with WPF in Visual Studio, so many did not take the plunge). Once we have tooling, even WinForms will have a difficult time staying afloat.

    Long term, I see .NET, as a framework, safe, provided Microsoft properly positions it and JavaScript is not lifted as an Enterprise paradigm for all “tiers” (in quotes due to my assertion the application is the business logic and UI is a veneer on top – more in other blog posts). There is too much functionality to rewrite and JavaScript, at least in the near term, is a weak language for Enterprise application development beyond the UI. I think Microsoft has to figure out how to make .NET viable on the UI side (HTML5 specs give some options), so the next crop of developers don’t see markup, CSS and JavaScript as the only way to develop.

    Final Words and Advice

    As a developer, I think you need to learn HTML5. If you are a UI developer, this is doubly true, as HTML5 is for the UI. If JavaScript moves into the middle “layer”, all the better for newbies that start their learning with HTML5 as a UI technology, although the idea of JavaScript being the only language makes me cringe as badly as having vanilla as the only ice cream choice or apple as the only pie. Regardless of feelings, HTML5 is going to be around as a web UI technology. With Adobe’s help (PhoneGap), it will comprise a decent chunk of mobile UI development. With Microsoft’s help (Windows 8), it will comprise a decent chunk of Windows UI development.

    Peace and Grace,

    Twitter: @gbworld


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: