I think in the short term and the long term, Flash and HTML5 will be viable options for software development. They have things in common, and are quite different in others.
As a game developer with 12+ years experience (almost exclusively Flash Platform and supporting technologies), I was able to hit the ground running with my first HTML5 demos.
My interest in HTML5 is theoretical, practical, and academic.
Theoretical – I am always interested to see how subtleties in each gaming platform suggest specific solutions to game development challenges (graphical display list, 2D vs 3D capabilities, general performance of pushing pixels, mouse/keyboard/gesture input support, game loop (frame loop vs time loop), etc…).
Practical – As a working consultant, it helps me assets new projects and meet the needs of my clients, to stay ahead of the trends. HTML5 is a prominent alternative to the Flash Platform. To offer my clients a competitively thorough assessment of the technologies at hand, its best to learn HTML5.
Academic – As an corporate trainer, school instructor and thought-leader, keeping on the cutting-edge is a welcome and rewarding challenge. When I learned Java, it raised the bar for what I wanted in ActionScript. As I learn HTML5, I find myself wishing it could do things that ActionScript can do. Comparing languages and platforms is a though provoking give-and-take.
Recently, I sat down to research HTML5, do some demos, and address the pros and cons of using HTML5 for gaming.
- Great performance – Add graphics, animation, sound, video and maintain good frame rates. It is not as strong as WebGL or native development (iOS for iPhone for example), but it is great.
- No plugin-required -A potential game player does not have to download any plugin to play your technology. However not all browsers support HTML5, and others support only some of the features. With time more % of the world will have HTML5 enabled browsers.
- Asset-Integration – Integrating assets (video, audio, animation, etc…) is not straightforward.
- No IDE – There are not yet good IDE’s for HTML5 game development, nor good processes for integrating assets
PRO OR CON (Depending on your point of view)
- Browser-dependent – Mobile browsers support HTML5 well. Computers do not yet support it widely. Each browser (theoretically and in-practice) support HTML5 uniquely. So not all features work everywhere.
- Easily readable source code – HTML5, by default, allows users (or other developers) to easily read your source code.
- ‘Standards-based’ – HTML5 is a ‘free’, open technology, rather than a technology owned by one company.
- Many ‘HTML5’ Frameworks – There are MANY competing free and premium frameworks geared specifically to graphics (for games) or for gaming itself. Competition spurs advancement (good), but lack of a single standard any confuse newbies and divide the community’s effort too thin. Some of of them are ImpactJS, Akihabara, LimeJS, FlashJS, MelonJS, GameQuery, ProcessingJS, EffectGames, Aves, CraftyJS, GameClosure, Mibbu, PropulsionJS, IsogenicEngine, and more…
Overall I see that HTML5 offers a viable alternative to Flash for in-browser gaming. I am actively looking for new clients with HTML5 gaming projects. It seems there is no stand-out HTML5 editing IDE, but found a good, free IDE with Aptana Studio.
As a game developer with 12+ years experience (almost exclusively Flash Platform and supporting technologies), I was able to hit the ground running with my first HTML5 demos. The first of which I published as FlyerGame for HTML5 and also see all my other HTML5 posts.
I’m new to HTML5, but aren’t’ we all. I’d love to hear your thoughts (good, bad, ugly) posted as comments below. My goal is to learn what I can, without the distractions of politics between Adobe and the world.