Wednesday, July 06, 2011

HTML5 is not Flash (But Does it Matter?)

I really dig video games. It is the reason why I love working with technology. I don’t play games like I used to, but I try and keep up by reading the latest news on the web and by watching Review on the Run. The other day, my video game hobby crossed paths with my professional life with a review on Reviews on the Run where two of the reviewers, Jose Sanchez and Ben Silverman, did a review on a web game that I reference in my recent HTML5 presentations: The World’s Biggest Pacman.

I was really excited to watch my worlds collide, but there was something that surprised me. Check it out and see if you can catch it (HINT: Ben says it at around 0:26)

(Check out the video here)

If you didn’t catch the line, Ben says that they “are talking about a Flash game” which made my developer heart skip a beat. World’s Biggest Pac Man isn’t a Flash game, but one of the best HTML5 games out there so far. After hearing that, I thought I should write a blog post about the differences between HTML5 and Flash. I mean, someone needs to start informing the world about how the web is changing right?

…Or then again, does it really matter?

Ben and Jose are video game reviewers, meaning they are end users when it comes to video games. Do they really care whether a game is built with Flash, HTML5, or even C++? To take that even further, does it really matter to anyone other than the developer?

The answer? No, it doesn’t. Not even a bit.

When it comes to games or apps it’s about the experience that the technology provides, not the technology itself. This point is going to become more relevant moving forward in software development too. With technologies like Microsoft Surface, Kinect, and the recent influx of different touch enabled devices that are coming out, people aren’t going to care about whether they are using WPF, HTML5, or Java, as long as it provides an experience that they enjoy.

This post originally posted at http://david.wes.st

Wednesday, June 01, 2011

Web Development Wall Coming Down in Windows 8

berlin-wall-falling-1

Today, Microsoft announced some of the details about Windows 8 and how it is going to change web development forever. The announcement included a number of cool points about the upcoming OS but as someone in love with HTML5, these two points stood out to me:

  • Web-connected and Web-powered apps built using HTML5 and JavaScript that have access to the full power of the PC.
  • Fully touch-optimized browsing, with all the power of hardware-accelerated Internet Explorer 10.

Okay, wow. That made my developer senses all tingly and stuff. But it appears that was just the tip of the iceberg. This part completed melted my brain:

“Today, we also talked a bit about how developers will build apps for the new system. Windows 8 apps use the power of HTML5, tapping into the native capabilities of Windows using standard JavaScript and HTML to deliver new kinds of experiences. These new Windows 8 apps are full-screen and touch-optimized, and they easily integrate with the capabilities of the new Windows user interface. There’s much more to the platform, capabilities and tools than we showed today.”

Think about that for a second: HTML5 and JavaScript will have full access to the PC hardware for native Windows 8 applications. Web developers will no longer be “just web developers”. We can take our HTML5 and JavaScript web development skills and bring them to the desktop world.

Web developers will become “Everything Developers”. The distinction between desktop applications and web applications will blur even more and ultimately become one large group we can call “Windows 8 applications”.

My imagination is running wild with the the possibilities coming for HTML5 thanks to Microsoft. Windows 8 and IE10. Microsoft, you have made me a very happy HTML5 developer.

Catch you on the (desktop) side.

window8_heart_html5

This post originally posted at http://david.wes.st

Sunday, April 03, 2011

Huzzah! MVP in Internet Explorer

Beware world, for it has changed.

As of April 1, 2011 I am officially part of the Microsoft MVP club. To be more specific, I am an MVP under the arm of Internet Explorer focus and I am already really enjoying it!

There is plenty more to come from me, and some new opportunities have already come up. So make sure you stay tuned to hear about the latest and greatest about Microsoft and HTML5.

I just thought I would take a moment to announce it on my blog. Take care Internet. :)

This post also appears at http://david.wes.st/

Thursday, March 31, 2011

HTML5: A New Gaming Platform?

8bitnesI’m a gamer.

When I started out, I had the classic Nintendo and thought it was awesome. That eventually evolved into a Super Nintendo, and with that I would say I became a gamer.

Back then, the web wasn’t much of anything yet. The Internet wasn’t a household item, never mind high-speed Internet. When it came to gaming. The PC did it’s best when it came to games, but web really didn’t have much going on. Even when Flash games became a thing, there really wasn’t much to talk about except for the ads that polluted the website with the game.

But that was then, and this is now.

Web-Based Gaming 2.0 – Facebook

Yes. Facebook changed gaming.

facebookSocial media changed the web as a whole. Web-based gaming, on the other hand, was changed by Facebook. With Facebook games, every game became social and something of a massive multiplayer online game on its own. But, the best of them were still Flash-based. Not that there is anything wrong with Flash, but when it comes to plugins, it seems as though people prefer to avoid them if at all possible. I know I do.

Web-Based Gaming 3.0 – HTML 5

HTML5_Badge_256With the emergence of HTML5, there have been a slew of new game developers popping up everywhere releasing games that work with the canvas tag. And you know what? They are pretty awesome.

With features like web storage, web sockets, mobile device support, and online-offline detection, HTML5 is bringing a set of standards for new wave of web based games. HTML5 in combination with social media might prove to create a very powerful game development platform?

Sceptical?

Fair enough, but you really shouldn’t be.

Here is something that might show you that HTML5 is changing things. Disney has made the bet that HTML5 will give them the ability to go independent from the app stores. So, maybe you don’t believe it, but being able release games without the need for the app stores is pretty huge.

Simplified, it’s 20% more profit as the app stores will stop taking their cut, but it also means you control everything about your game. Everything. And that is worth a lot.

Opportunity

So, maybe you missed out on Rocket Pack, but that doesn’t mean you can’t get in the game now.

I mentioned this before, but Microsoft is doing the DevUnplugged contest that will give you the chance to build your own HTML5 based Hellboy game.

If you win, you get money and fame. No biggie.

Seriously though, if you are thinking about HTML5 game development, take a look around and you’ll see some cool stuff. I’ll post more about it in the next while as am a bit of a sucker for game development.

This post also appears at http://david.wes.st

Thursday, March 17, 2011

5 Ways to Celebrate the Release of Internet Explorer 9

Internet_Explorer_9The day has finally come: Microsoft has released a web browser that is awesome.

On Monday night, Microsoft officially introduced the world to the latest edition to its product family: Internet Explorer 9. That makes March 14, 2011 (also known as PI day) the official birthday of Microsoft’s rebirth in the world of web browsing. Just like any big event, you take some time to celebrate.

Here are a few things that you can do to celebrate the return of Internet Explorer.

1. Download It

If you’re not a big partier, that’s fine.

The one thing you can do (and definitely should) is download it and give it a shot. Sure, IE may have disappointed you in the past, but believe me when I say they really put the effort in this time. The absolute least you can do is give it a shot to see how it stands up against your favourite browser.

2. Get yourself an HTML5 Shirt

html5-new-logo-w3c-t-shirt-0One of the coolest, if not best parts of IE9 being released is that it officially introduces HTML5 as a fully supported platform from Microsoft. IE9 supports a lot of what is already defined in the HTML5 technical spec, which really demonstrates Microsoft’s support of the new standard.

Since HTML5 is cool on the web, it means that it is cool to wear it too. Head over to html5shirt.com and get yourself, or your staff, or your whole family, an HTML5 shirt to show the real world that you are ready for the future of the web.

3. HTML5-ify Something

Okay, so maybe a shirt isn’t enough for you. Maybe you need start using HTML5 for real.

If you have a blog, or a website, or anything out there on the web, celebrate IE9 adding some HTML5 to your site. Whether that is updating old code, adding something new, or just changing your WordPress theme, definitely take a look at what HTML5 can do for you.

4. Help Kill Old IE and Upgrade your Organization

See this? This is sad.

Upgrading web browsers in an large enterprise or organization is not a trivial task. A lot of companies will use the excuse of not having the resources to upgrade legacy web applications they were built for a specific version of IE and it doesn’t render correctly in legacy browsers.

Well, it’s time to stop the excuses.

IE9 allows you to define what version of Internet Explorer you would like it to emulate. It takes minimal effort for the developer, and will get rid of the excuses. Show your IT manager or software development team this link and show them how easy it is to make old code render right in the latest and greatest from the IE team.

5. Submit an Entry for DevUnplugged

So, you’ve made it to number five eh? Well then, you must be pretty hardcore to make it this far down the list. Fine, let’s take it to the next level and build an HTML5 game.

That’s right. A game. Like a video game.

HTML5 introduces some amazing new features that can let you build working video games using HTML5, CSS3, and JavaScript. Plus, Microsoft is celebrating the launch of IE9 with a contest where you can submit an HTML5 game (or audio application) and have a chance to win a whack of cash and other prizes.

Head here for the full scoop and rules for the DevUnplugged.

This post also appears at http://david.wes.st

Sunday, March 13, 2011

IE9 and the Mystery of the Broken Video Tag

I was very excited when Microsoft released the Internet Explorer 9 Release Candidate. As far as I was concerned, this was another nail in the coffin for IE6 and step in the right direction for us .NET web developers as our base camp was finally starting to support the latest and greatest future-web standards.

Unfortunately, my celebration was short lived as I soon hit a snag while loading up an HTML5 site I was building in Visual Studio 2010.

The Mystery

video fail

After updating Internet Explorer, I ran my HTML5 site that had the oh-so-lovely HTML5 video tag showing a video. Even though this worked in IE9 Beta, it appeared that IE9 RC could not load the same file. I figured that it was the video codec. Maybe IE9 RC no longer supported the video codec I used to encode my video. Here's the code I used:

<video width="854" height="480" id="myOtherVideo" autoplay="" controls="">
    <source src="/DemoSite1/Media/big_buck_bunny.mp4"/>
    <div>
        <p>Your browser does not support HTML5 Video.</p>
    </div>
</video>

As you can see from the code, I had the "fail-safe" code inside the video tag. The idea there being that if the video tag, or the video files themselves, are not supported by the browser my video should fail gracefully.

What was even more strange was the fact that it worked in all the other HTML5 browsers that supported video.

The Investigation

Whoa! DJ stop the music. How can any of that make sense? Would the IE team really take such huge strides forward only to forget to include a feature that was already in the beta? I don't think so.

I did plenty of searching on the web and asking around on the web, but could not seem to find anyone else having the same problem. Eventually I came across this post talking about declaring the MIME type in the .htaccess file.

That got me thinking: does my web server support the video MIME type? I was using VS2010, so how do I know what kind of MIME types are supported by default?

Still, my page hosted in Cassini (the web development server in VS2010) works on the other browsers. Why wouldn't it work with IE9 RC? To answer that, it was time to open up the upgraded toolbox known as the Developer's Tools in IE9 and use the new Network Tab.network-tab

The Conclusion

If you take a closer look at the results displayed from the Network tab, you can see that IE9 RC has interpreted the video file as text/html rather than video/mp4.

To make this work, I decided to use IIS to debug my HTML5 web application by setting the web project's properties. Then, I added the MIME types that I want to support (i.e. video/mp4, video/ogg, video/webm). Et voila! The Mystery of the Broken Video Tag is solved.

video success

After Thoughts

After solving the mystery, I still had the question about why my site worked in Chrome, Safari, and Firefox 3.6. After asking around, the best answer that I received was from my colleague Tyler Doerksen. He said that IE9 likely depends on the server telling it what kind of file it is downloading rather than trying to read the metadata about the data it is trying to download before doing anything.

I have no facts to back this up, but it makes sense to me. In a browser war where milliseconds can make your browser fall back a few places in the race for supremacy, maybe the IE team opted to depend on the server knowing what kind of content it is serving up. Makes sense to me.

In any case, that is just an educated guess. If you have any comments, feel free to post on them below.

This post also appears at http://david.wes.st

Tuesday, March 08, 2011

Wessty: Live with HTML 5 (2011 Speaker Tour)

Wessty 2011 Tour

That’s right: Wessty is on tour.

Okay, the banner and the tour is a little over the top, but I am really excited about my upcoming speaking engagements to spread the word about HTML 5!

I have already kicked off the tour with the Winnipeg Code Camp last weekend with the world premiere of HTML 5 for .NET Pro presentation, and the turn out fantastic. It was the last presentation of the day, but we still had some great questions about the new standard and got to see how HTML 5 can fit into .NET web applications today.

In any case, above you can see the confirmed presentations that I will be doing so far in 2011, but there are a few more events that I have heard about that I hope to add to that list. Ultimately, expect that list to be updated over the course of the year as the year is young and there are plenty of conferences coming up!

Presentation Resources

As the tour continues, I will be posting the slides and the source code for the demonstrations up here on my site. They will be free of charge and give you the chance to review the demos and hopefully take advantage of some of the cool things you see in the presentations.

Become part of the Tour

If you are considering hosting an event where you think that HTML 5 could use a voice, drop me a line and let me know. I am always looking for opportunities to grow the tour to talk not just about HTML 5, but a variety of topics that relate to user interface and user experience development.

This post also appears at http://david.wes.st

Wednesday, February 16, 2011

Cooking with Wessty: WordPress and HTML 5

wordpress_and_html5_banner

WordPress is easily one, if not the most, popular blogging platforms on the web. With the release of WordPress 3.x, the potential for what you can do with this open source software is limitless.

This technique intends to show you how to get your WordPress wielding the power of the future web, that being HTML 5.

---

Ingredients

  • WordPress 3.x
  • Your favourite HTML 5 compliant browser (e.g. Internet Explorer 9)

Directions

  1. Setup WordPress on your server or host.
    • Note: You can setup a WordPress.com account, but you will require an paid add-on to really take advantage of this technique.Login to the administration panel.
  2. Login to the administration section of your blog, using your web browser. 
    • step2
  3. On the left side of the page, click the Appearance heading. Then, click on Themes.
    • step3
  4. At the top of the page, select the Install Themes tab.
    • step4
  5. In the search box, type the “toolbox” and click search.
    • step5
  6. In the search results, you should see an theme called Toolbox. Click the Install link in the Toolbox item.
    • step6
  7. A dialog window should appear with a sample picture of what the theme looks like. Click on the Install Now button in the bottom right corner.
    • step7

Et voila! Once the installation is done, you are done and ready to bring your blog into the future of the web. Try previewing your blog in HTML 5 by clicking the preview link.

  • step8 

Now, you are probably thinking “Man…HTML 5 looks like junk”. To that, I respond: “HTML was never why your site looked good in the first place. It was the CSS.”

Now you have an un-stylized theme that uses HTML 5 elements throughout your WordPress site. If you want to learn how to apply CSS to your WordPress blog, you should check out the WordPress codex that pretty much covers everything there is to cover about WordPress development.

Now, remember how we noted earlier that your free WordPress.com account wouldn’t take advantage of this technique? That is because, as of the time of this writing, you needed to pay a fee to use custom CSS.

Remember now, this only gives you the foundation to create your own HTML 5 WordPress site. There are some HTML 5 themes out there that already look good, and were built using this as the foundation and added some CSS 3 to really spice it up.

Looking forward to seeing more HTML 5 WordPress sites! Enjoy developing the future of the web.

Resources

This post also appears at http://david.wes.st

Cooking with Wessty: HTML 5 and Visual Studio

vs_and_html5_banner

The hardest part about using a new technology, such as HTML 5, is getting to what features are available and the syntax. One way to learn how to use new technologies is to adapt your current development to help you use the technology in comfort of your own development environment. For .NET Web Developers, that environment is usually Visual Studio 2010.

This technique intends on showing you how to get HTML 5 Intellisense working in your current version of Visual Studio 2008 or 2010, making it easier for you to start using HTML 5 features in your current .NET web development projects.

Quick Note

According to the Visual Web Developer team at Microsoft, the Visual Studio 2010 SP1 beta has support for both HTML 5 and CSS 3. If you are willing to try out the bleeding edge update from Microsoft, then you won’t need this technique.

---

Ingredients

  • Visual Studio 2008 or 2010
  • Your favourite HTML 5 compliant browser (e.g. Internet Explorer 9)
  • Administrator privileges, or the ability to install Visual Studio Extensions in your development environment.

Directions

  1. Download the HTML 5 Intellisense for Visual Studio 2008 and 2010 extension from the Visual Studio Extension Gallery.
  2. Install it.
  3. Open Visual Studio.
  4. Open up a web file, such as an HTML or ASPX file.
  5. he HTML Source Editing toolbar should have appeared.
    1. step5
  6. (Optional) If it did not appear, you can activate it through the main menu by selecting View, then Toolbars, and then select HTML Source Editing if it does not have a checkbox beside it. (NOTE: If there is a checkbox, then the toolbar is enabled)
    1. step6
  7. In the HTML Source Editing toolbar, open up the validation schema drop box, and select HTML 5.
    1. step7

Et voila! You now have HTML 5 intellisense enabled to help you get started in adding HTML 5 awesomeness to your web sites and web applications.

    • complete

Optional – Setting HTML 5 Validation Options

At this point, you may want to select how Visual Studio shows validation errors. You can do that in the Options Menu. To get to the Options Menu…

  1. In the main menu select Tools, then Options.
    1. optional_1
  2. In the Options window, select and expand Text Editor, then HTML, followed by selecting Validation.
    1. optional_2

Resources

This post also appears at http://david.wes.st

Saturday, January 01, 2011

Cooking with Expression: HTML 5 Video for All

Happy new year everyone!

I hope you enjoy the first new episode of 2011.

---

In today’s episode we will be cooking up some HTML 5 video. This recipe will let you deliver videos to your users using browsers that support HTML 5, and even handle those who have not made the jump to the latest and greatest browsers.

Feel free to leave comments on the page. Feedback is always welcome.

Cooking with Expression - HTML 5 Video for All from David Wesst on Vimeo.