Welcome to my blog. Catch up on the latest news, indepth tutorials, read my thoughts and see what a day in the life of my company is like.
Do you have a nice story to submit to this blog? Feel free to report it to me.
Thoughts about HTML5 and Flash
My dive into the future of the web.
I was reading lately "Dive into HTML5" from Mark Pilgrim to update my web skills and try to understand what's so beautiful about this new markup language and why people keeps thinking it may replace Flash. So my diving has started and I'm feeling like I don't like all this dirty water.
The general feeling I have is that we went back in the nineties when Flash started to become popular and having an animated site was just science fiction. We see today popular flash-like websites made with jQuery, but they result in having more CPU intensive animations, more complicated development and issues on older browsers when compared to todays Flash. Honestly I'm really not impressed by silly parallax scrolling sites, fading buttons and some animated gif.
Embryonic stage of HTML5
Nonetheless, I was disappointed to read that after two years of the release of HTML5 there are still unclear tags and specs. Just to mention an example, people doesn't understand when to use the section tag just because there are already other more appropriate tags to use, such as article, aside or the old fashioned div. There is still confusion around and messy specs.
The HTML5 Video Joke
When I found we have to use four different codecs for the same video to be cross-browser compatible it was just shocked as I cannot accept that a standard which is advertised as the future of the web hasn't yet such a specification! Encoding a video is a long process and it costs a lot of money to mantain such servers. Imagine a big company like YouTube that has to invest into 4 more times the money to deliver the same videos! That's just insane.
Flash videos supports H.264 encoded videos which run just fine on every device, even on the iPhone with a proper fallback. A standard, by its definition should be a rule... not a list of stupid expections. Think about it before you're going to develop an HTML5 Video player.
Play it again, Sam
Playing consistent audio accross all browsers in HTML5 is impossible. Some modern browsers (hello IE?) don't even support the audio tag. The Les Paul Guitar Doogle was made in HTML5 but the audio, guess what, was still made with Flash! Because there is still no audio codec that runs properly on all browsers, just like the video codec joke. If a huge company like Google hides flash inside such a thing there should be a reason!
If you're among those lobotomized macacos hanging from the lips of that dirty person called Steve Jobs, refrain from reading this. The truth about Flash being banned from iOS Browsers is easy to explain. You can actually publish flash stuff on iOS, even fluid awesome apps and games! Yeah, wake up we have hardware accelerated AIR Compiler now and it runs everywhere, compiles everywhere, not only on Macs like Cocoa. Though, there is a price to pay. You're forced to publish it on AppStore. There is no way to publish it outside of it.
Even if you don't want to use Flash and try to publish HTML5 Canvas Games they run like a spastic old farting man on your iPhone or iPad just because Apple Devs have locked Safaris performance. In poor words it runs properly only if you pass through the AppStore. That tells you how bad this company is, they're after your money and don't care nothing about open source, future of the web or even if your phone battery doesn't last one day. If you want to join the party you have to pay the protection money to Apple.
Imagine if Flash Web Games could been played on the iPhone, imagine how much happy people there would be around playing CityVille on Facebook without having to pay anything! They actually do it already on Android Phones. The bullshit told by your good old Steve isn't just the truth, face it and start thinking... different! :D
The potential of both HTML5 and Flash
Flash has so much more to offer than simple fade effects and I showed it into my components where I used three-dimensional frameworks, advanced physics, external apis like youtube and flickr, deeplinking for SEO and most of all a consistent experience among all browsers. Those paralax scrolling sites made with jQuery are cute ok, but technically speaking they're jumpy and raw. HTML5 is still weak, though I might expect big things to happen but it's just too early to claim it as the Flash killer... really it's too far from it even if you create awesome animations with the shortly released Adobe Edge Animation Tool.
If you're smart enough you will use both solutions and gain certainly much more experience. Best if you combine them together.
The truth about Flash
Flash has evolved the latest decade, it can run with a very low CPU consumption if properly coded. It is far smoother and easier to use than any other existing tool. Even the animations of popular HTML5 games like Pirates Love Daises have been crafted with the Flash IDE just because it's easier to use.
HTML5 is now what it was Flash ten years ago. You cannot compare them, there is still a huge difference and Flash won't be the same it keeps evolving and improving just like any other technology.