An open letter to the HTML5 community
An open letter to the HTML5 community
by Jens Fischer, Senior Interactive Developer at Fi
HTML5 is the last nail in the coffin of Adobe Flash. At least that’s what more than enough people are trying to convince us of and somehow the Flash community has managed to end up in a position where it actually does have to justify its bare existence. The whole situation seems very much like we’re all caught in the middle of a battle with two opposing fronts fighting it out to the death.
Personally, I come from a Flash development background. But due to the multidisciplinary nature of my job as an Interactive Developer here at Fi, I have primarily been working on big, high profile HTML sites in the past year or so. I very much enjoy doing both, but what puzzles me is that most preachers for either technology seem to forget that both are meant to do different things. Flash can deliver interactive experiences that HTML sites cannot match. At the same time HTML is able to deliver content across platforms in a way that Flash can only dream of and it does so in an increasingly interactive way as well. For me as a developer, there will always be times where one or the other will be the right tool to work with.
Now, when you have that slightly more neutral and objective perspective that I like to think I have, the ongoing “battle” seems a bit childish at times. The thing that frustrates me the most in this case though, is that the HTML5 community seems to be its own worst enemy. All too often important facts are forgotten and mistakes are being made that the Flash community went through before and knows painfully well. And because I want HTML5 to succeed, I am writing this open letter to you now, dear HTML5 community.
Know your strengths
No matter what you are trying to achieve in life, it’s always a crucial step to evaluate yourself properly. Analyze what your strengths are that give you a unique advantage over possible competitors and attack from that angle. In the Flash and HTML5 debate one of the most talked about features among developers is the new canvas element and the new possibilities that come with it. With the help of the canvas element HTML might be able to do certain graphical things “as good” as Flash, but does the term “as good as” really sound like a feat? For HTML most and foremost the most unique strength has always been and always will be platform independent content delivery. It might not be as “sexy” as pushing technological limits through experiments with canvas or using geo-location and what not... But this is the one MAJOR strength of HTML over anything else.
Don’t pretend to be something you’re not

Fi made a painful, but enlightening experience when we were trying to build our social media platform Kontain on top of Flash. While we did get a functional Flash version up at first, it just wasn’t the right tool for the job and we later redid everything from scratch in HTML. Initially we were thinking “interactive experience” when we should have thought “content delivery”. Experiences like those let us mature as a company and remind us today, to not blindly follow a trend just for the sake of it. And while HTML5 is definitely a major milestone in the interactive industry, for the amount of hype it has been getting it offers surprisingly little by itself. In its core it simply defines a few new markup tags like for example “video” and “canvas”. But to experience the “Flash Killer” HTML5 in its full interactive force that we’re all so excited about, you will need CSS and JavaScript. If you compare that package that is commonly referred to as “HTML5” to the MVC design pattern, HTML5 by itself is the model (the pure markup that only contains the data), CSS is the view (that defines the site’s appearance) and JavaScript is the controller (where all the interactivity happens). And this is all too often forgotten.
Know your weaknesses

The amazing interactivity that we’re so excited about, from custom HTML5 video players to innovative canvas experiments, all require JavaScript in it's core. And the problem here is that JavaScript is stuck in the last century and urgently needs an overhaul. Writing JavaScript today feels like writing ActionScript five years ago. Just like Flash’s programming language back then, JavaScript is not a “real” OOP language, it is a “prototypal” programming language. This means that there are no classes that offer the developer features such as static methods, abstract classes, interfaces, method overloading and operator overloading. None of these features can be offered by prototypal objects. As a further result of this every public member of every object can be changed by any other object, which is a huge security issue. JavaScript generally has almost no type security. I remember the days when ActionScript introduced strong typing and “7” was no longer equal to 7.
While the switch to a real OOP language with ActionScript 3 caused quite a bit of upset at first because most developers had to drastically change the way they engineered their applications, it lead to quicker, more stable and “professional” coding in the long run, that achieved better performance and was easier to share and debug as well.
Thankfully we have abstraction layers like jQuery, MooTools, and Dojo to do all the heavy lifting for us, by taking care of the quirks, cross browser malfunctions and other nastiness that JavaScript is prone too.
Learn from mistakes, those of yourself and those of others

Another thing that I remember from many years ago, is a phenomenon that became more and more prominent during a time when Flash turned away from timeline animation to code. It was a time where we saw mouse cursor trails and cheesy flame animations pop up all over the internet. It was awful. I think that even today those times still hurt the reputation of the technology Flash as a whole. While of course the playful “technical tinkering” has to happen in order to push the boundaries of what’s technically possible, I think what is potentially damaging is how we make use of the results. Just because you suddenly can do something, it doesn’t mean that you actually must do it. Instead think about how you can turn the results of the tinkering into something useful. It took the Flash community a long while to get better in that aspect. Today, more and more people think about which problems need solving and then work into that direction, instead of working into a direction first and then seeing what it could be used for.
Create clear goals for yourself

At this point I just would like to make clear again, just in case you’ve forgotten by now, that I actually want HTML5 to succeed. My only problem is the lack of focus on what’s really important.
Take for example the video tag. While this is a great idea on paper, the fact that each browser requires a different video format defeats the general idea of standardization behind this tag. While I realize how we ended up in that situation, I just think that this is a huge problem that requires attention more urgently than using canvas to create mouse trails.
The same thing goes for font embedding. We have this amazing new functionality available, but will probably not be able to use it because of legal issues. I would like to see the HTML5 community focus on those major issues at hand, that will ultimately decide how powerful HTML5 will really be. I see the chance for something amazing, but it’s being wasted by a lack of focus on what’s important.
As a Flash Developer this is a familiar story, which brings me to the conclusion of this article:
If I believe in one thing, then it is that instead of fighting a “battle to the death,” we should all just work together and learn from each other instead.
Related:
Fi is a multi award winning global interactive firm and production studio. With offices in Europe and the US, Fi caters for brand leaders such as Google, FOX, HTC, BBC, MTV, Nintendo, Porsche, Burton and more.
-
martyfm
20 months ago
Well said Jens - The right tools for the right job indeed. Have a great weekend!
-
paul_irish
20 months ago
-
David
20 months ago
Jens I like your approach and title of the entry. I look forward to the live debate in the next 2 weeks. It's also awesome that we have such strong players advocating both technologies @Fi. Looking forward to seeing how this plays out...it's ooonnnn!
-
firdosht
20 months ago
Nice post Jens -
KreativaSt...
20 months ago
Great article, Jens, written from a good point of view.
-
Christoph
20 months ago
Bu Jens, web technology is an extremely boring topic for 99% of the world. Since we don't like to think about our passion to be boring, we add soap-opera style drama. That's where "Flash is 99% bad", "Flash is dead", "Google is over", "Apple is evil", "Antennagate" and all that fun come in. I mean, what would the blogosphere do without this drama? Actually sit down and build cool stuff like the people @paul_irish mentions? That just seems unreasonable.
It's tricky at times to isolate yourself from this drama and stay objective. Especially when it results in biased opinions that affects project decisions and client opinions. So thanks Jens, for this open letter. Let's keep it simple, do our best to improve the technology we have, and build the most awesome things we possibly can.
-
angelorlan...
20 months ago
Well, great post but I think the battle mm....... this is not the first time with flash, DHTML, XHTML, Ajax, Javascript, jQuery, there is a lot of competitors in the past, present and future, and flash is what it is, an amazing tool for create amazing media experience. A lot of clients request from me flash websites, flash applications, flash animations, it wont stop, and if we check theFwa and others galleries, we will see that flash is the same acroos all these years, but there are other technologies that can help us to do the job the right way, excellent, but Flash is flash and nothing will change that, not even mr.jobs.
-
BjornSchul...
20 months ago
Changing kontain from flash to html was a big statement.
Why build RIA's in Flash?
All that is left for Flash now is sites like Audiotool.
Basically anything that can be built in javascript and html should not be built in Flash.
Thats the message.
And it hurts, because I prefer the flex dev model over html5 and
I built dope apps that can't be run on my f*cking iPad.
*edit* apparently now I can, just not through the browser (;
-
Christoph
20 months ago
Quoted from: BjornSchul... - "And it hurts, because I prefer the flex dev model over html5 and
I built dope apps that can't be run on my f*cking iPad."
And that's one of the reasons why this discussion is so heated, right? Every technology has it's advantages. Flash is technically more powerful and has some excellent dev tools, but it brings certain disadvantages. Etc.
The trick is really to keep in mind what you're looking to achieve and who you're building this for. Remove your own personal preferences and see what's best for the end-user and the content experience.
-
Awesomeboy
20 months ago
R.I.P Bart Allen, Flash IV
-
Kristoffer...
20 months ago
A great informative read. Thanks Jens.
-
karlstanton
20 months ago
Great read, thanks, Jens!
-
millermede...
20 months ago
Well said Jens (as usual) learning from the errors of the Flash community and also understanding that each technology has it's own use is really important...
People say that HTML5 is ready to replace Flash just because they don't know what Flash is capable of, just to cite a few things that the HTML community isn't considering: camera & microphone access, sockets, pixel bender, audio processing, video/audio streaming, P2P, flash media server, video with alpha channel, good IDE, better image/video compression (specially for transparent PNG), usually smaller file size, etc...
The most important aspect of HTML is **ACCESSIBILITY** and most people haven't noticed yet that making a website that relies heavily in JavaScript / Canvas / SVG / [any new technology] is going to make it less accessible than a Flash based website, not only because of browser support but also because of the way that the content is displayed/processed/stored... - highly visual content and/or complex structure is less accessible by nature.
PS: I hope to see you anytime soon, I miss you! cheers. -
airdeck
20 months ago
Nice article Jens, well put.
-
Jens Fischer
20 months ago
@Miller and Eric: Welcome to Kontain, guys!!! Does that mean there will be a 2010 version of the gotoAndPlay()-tournament? Let me warn you: Fi has been training foosball and ping-pong quite extensively lately... Regardless, we should hang out some time. =)
-
yatze
20 months ago
Great post Jens. I thought that I am the only one in "the world" seeing that madness and have been sitting quiet ;)
I see you mentioned foosball and I hope we will meet one day ... I do hope!
Cheers :D
-
stanosmith
20 months ago
I love your closing thought. Thanks for the great article!
-
MechanisM
20 months ago
I'm ex-Flash\Flex developer ;)
Now I'm in Love with Django\jQuery\HTML5\CSS3 and HTML5 - Rocks!!
-
angelorlan...
20 months ago
Quoted from: MechanisM - "I'm ex-Flash\Flex developer ;)
Now I'm in Love with Django\jQuery\HTML5\CSS3 and HTML5 - Rocks!!"
You were not, If you were an ex-flash developer, you knew that flash is capable to do things that those technologies can't do, like other post said, sometimes is better flash and sometimes is better HTML, depends on the job.
-
Odolyte
20 months ago
I think you forgot a huge advantage of HTML5 over flash in your letter : it's indexing.
Flash may be very entertaining for interactivity, but for indexing, it's = 0. Google, bing and others are still incapable of indexing the contents within flash and you need to have lot of other skills than flash development if you want your site to be well indexed by Google (if it's in flash).
Most of the time my clients no longuer want flash and prefer CSS+jQuery because the content will be more easely indexed and what they want first is to be find before their competitors.
Plus there are not so much sites that uses flash very smartly. Most of the time designers want to "show off" not be usefull to the webuser...
-
angelorlan...
20 months ago
I repeat it`s not about what I want or what the client wants, not always the client knows about this kind of technology , so we have to show them what is the best for their consumers experience. Flash content can be indexed with a good seo job, is more easy with CSS and HTML, but as I said it`s not about wishes is about choices.
-
mymonxter
20 months ago
Thanks, Hoy dormiré tranquilo :D
-
Odolyte
20 months ago
The problem is : in real world CLIENTS decide. Clients quite often think bucks before anything else (even with explainations and advices). The only thinkg they understand is :
Flash : Nice but expansive + SEO job needed (=more money)
vs.
HTML+CSS+JS : less Nice ("but for what we need it's okay", oh how many time i've heard that) but less expansive + no extra SEO job needed (=less money).
And i don't tell about clients who wants their site to be visible on iPhone or iPad (Sometimes just because the CEO has an iPhone/iPad and wants to show his new toy to his friends...).
Even when you think independently from the client point of view :
Flash = Nicer but extra SEO job needed.
HTML+CSS+JS = Less Nicer (sometimes even Less less nicer) but no extra SEO job needed.
Don't misunderstand me i like flash a lot. But frankly, when i hear clients and their wishes, i'm quite pessimistic about Flash futur.
By the way, did you read the wired issue of this month ? "The web is dead" (it's a really interesting article, but quite scary about Flash or HTML5 future. It's possible that none will survive...).
-
angelorlan...
20 months ago
Yes Odolyte, I see your point and I agreed, the web is constantly changing and evolving, sometimes a little bit boring and sometimes extreme fun. I think there is a lot of future for all that technologies.
-
Odolyte
20 months ago
I hope so ! otherwise : no job ! ;) 'need to learn to develop for iPhone/iPad and android quickly... ;)
-
mplockwood
18 months ago
I think Flash will be the program used to make fancy HTML5/ActionScript/canvas graphics. This is assuming they get their act together in time, but I suspect they will be able to act faster than the HTML5 situation develops. Flash already has a great interface for creating interactive motion graphics. It's an obvious move for Adobe to create a version of Flash which can output to HTML5/JavaScript. Or maybe there will be some new hybrid Dreamweaver/Flash product, but I don't think this can be portrayed as the "death of Flash." Maybe the Flash plug-in, but Adobe will have something, probably Flash or Flash-like to perform the new job.
I wrote a more lengthy version of this opinion over at my blog if you want to read it: http://mplockwood.blogspot.com
-
Odolyte
18 months ago
You're definetely right on this mplockwood. I don't see Adobe burrying Flash without tempting something on the HTML5 ground...
-
Odolyte
18 months ago
It didn't take long... :
http://blogs.adobe.com/jnack/2010/10/adobe-demos-flash-to-html5-conversion-tool.html
and this :
http://tv.adobe.com/watch/adc-presents/preview-of-the-edge-prototype-tool-for-html5-/
;)
-
Aramica
3 months ago
I have a friend who works as a heatsink manufacturer and I think this article will help him a lot.I see that you have put a lot of work in it and I guess that you expect people to feel your work.
To add comments please login OR signup and activate your account by clicking the activation link in the signup confirmation email.


Comments (29)