Archive for the ‘Metro’ category

Windows 8 Apps, should I write in XAML or HTML5??

March 12th, 2012

I have been recently doing some research into Javascript and, coming from a .net background, I must admit is a bit daunting due to just my lack of knowledge really.  I have been pondering what road I should stay focused on continuing forward to work on apps to be targeted for future versions of Windows, in particular, Windows 8.

I guess this article should be called, “Is it worth it to learn HTML5 or just stick to what I know in the .Net world?”  I think the answer is pretty simple, I should absolutely continue on and learn all I can about writing apps in HTML5.  I honestly think in the future that “Metro” apps that are written in XAML will only have a very limited market, obviously, cause they are targeted for Windows machines only.  On the other hand, I could write a HTML5 app and it will work virtually work anywhere, that makes too much sense if you ask me.  I also have some years invested in writing WPF/XAML apps so if I am tasked in writing an app in C#/WPF, it won’t be a big deal, I already have those skills, sure I may have to learn a few new libraries, but no big deal.

Javascript has came a long way since I last looked at it several years ago, there are full blown libraries like Backbone.js, that allow you to do MVC programming.  There are literally thousands of libraries to do just about anything you want, with full source to change it however you want.  I don’t want to come across at a Microsoft hater in this post, just posing a question that seems to make too much sense to me.

I am not talking about writing a Javascript app using the WinJS library, which, once again, would tie you to a windows app, I am talking about a full-blown HTML5 app written outside of Visual Studio, so you are sure to not be depending on any kind of Microsoft library.  This whole paradigm is nothing new, I think I am just now getting around to embracing it because its pretty easy to see where things are going, and I think Microsoft is getting behind in this area.  Even still, it never hurts to learn a whole new programming language, and while Javascript is not new to me, I have never taken the time to really learn it and now that there are so many libraries available and it has gotten very powerful, I think its time I gave it a harder look, what are your thoughts?