HTML5 Games and Other Demos
September 20, 2010 6:44 PM   Subscribe

For those Internet gamers who have grown tired of the same old Flash games, Casual Girl Gamer has assembled a well-vetted list of the 30 best HTML5 games. And for those with a more artistic bent, HTML5 also has much to offer, such as this kaleidoscope project (which allows visitors to use their own Flickr photos) or this doll creator (which also allows users to create custom faces from their own photos). These pages -- or at least some of the links contained within them -- are all associated with Microsoft's Beauty of the Web event, which highlights websites taking advantage of HTML5 and other cutting edge Web technologies.

To fully experience these websites on a PC, you will likely need one of the latest updates of your preferred Web browser, such as Firefox 4.0 (beta), Chrome 6 or 7, Internet Explorer 9 (beta), or Safari 5.
posted by GnomeChompsky (41 comments total) 29 users marked this as a favorite
 
I'm kind of surprised they didn't mention Google Pac-Man, which only uses Flash (if I heard right) for sound effects.
posted by JHarris at 7:45 PM on September 20, 2010


I'm not aware of anything HTML5 does that Flash doesn't do, better even. And I'm aware of many things Flash does better that HTML5 doesn't even approach.

Granted, my knowledge is limited to the level of comprehensiveness that a security audit will grant, but that's fairly extensive.

Even the core advantage -- that the tools are free -- is overridden by the ability to use HaXe to compile .SWFs.
posted by effugas at 8:13 PM on September 20, 2010


HTML5 doesn't have a plugin that, if not updated, will compromise your computer simply by visiting a trusted site with an infected ad network.
posted by codacorolla at 8:32 PM on September 20, 2010 [3 favorites]


comparing platforms feature-for-feature is missing the point somewhat because it's all just code - there's nothing either couldn't do that other does if someone really wanted it to be done.

HTML5 is completely open and native in the host (browser). These two features are essential to the widespread adoption of any platform and will crush all comers.

For example: compile with HaXe all you want, the fact is the V8 engine (source) is a mind bender of a language runtime. It's the real thing and it's just sitting in every copy of Chrome.
posted by victors at 8:37 PM on September 20, 2010


Is it just me or do the HTML5 games all look like screenshots from Sega Genesis or earlier?
posted by thorny at 9:01 PM on September 20, 2010


Lot of misinformation and double standards in this.
posted by kafziel at 9:26 PM on September 20, 2010


HTML5 is completely open and native in the host (browser). These two features are essential to the widespread adoption of any platform and will crush all comers.

Well, the counterpoint, and it is an issue, is that this means implementation is fragmented. Which is of course true for HTML, Javascript, and all other browser-based "standards", and especially for an evolving standard like HTML5. Also, despite the "native" implementation, Flash still beats HTML5 on performance in some areas.

Don't get me wrong, I'm a fan of HTML5 (personally and professionally), but it's not a hands-down win over Flash, at least not yet.
posted by wildcrdj at 9:26 PM on September 20, 2010


not a hands-down win over Flash

oh, it's pretty weak compared to Flash, and Silverlight beats them both - but exactly as you said w/other standards (not sure why you put that word in quotes) when it comes to widespread adoption "good enough" is good enough. We are watching the infancy of a technology - if you were at the birth of nntp or smtp you couldn't have missed to howls of huge, successful proprietary messaging systems and their fans, snickering about how those protocols don't actually "do anything."

I have found that being invested in a certain technology tends to taint a long term view of things.

yea, even HTML5 is slow(er), it's got rug burns on it's knees from stumbling like a drunk, it's got +4 daddies, it ain't pretty and in fact it's kind of dumb - have you tried to do off-screen blit-ting? I have, my browser choked, grabbed it's chest and keeled over with a heave - but that's OK, that'll get worked out. So will everything else.

This stuff is never going to get slower, uglier, dumber than it is now - this is it, rock bottom. From here, it's just a trot to catch up to everything else. There's not secret sauce in Flash or Silverlight, they have to ask permission to flip a pixel the same as the browser, only when the browser does it, well, it's the frakin browser.
posted by victors at 10:01 PM on September 20, 2010


but exactly as you said w/other standards (not sure why you put that word in quotes)

Well, I put it in quotes because while there are actual standards, almost no one implements them 100%, so you can't just code to the standard but still have to code to the implementations. HTML5 will always be that way too, although I expect the current relatively wide gaps in some parts to converge as it matures (especially since even Microsoft is making an effort to follow the standards now).

Of course, even with Flash this is true to an extent, since unless you require your users to upgrade to the latest version continually (which they really should due to security concerns, of course, but not all users can due to permissions / embedded devices / etc) then you have to code around/to the capabilities of various versions. And cross-platform bugs, etc (tons of issues with memory management on Macs compared to Windows, for example, which I ran into when implementing large file uploads on Flash).
posted by wildcrdj at 10:13 PM on September 20, 2010


HTML5 doesn't have a plugin that, if not updated, will compromise your computer simply by visiting a trusted site with an infected ad network.

Er, you're in my domain right now. Here's the last buglist out of Firefox:
- - Implementation errors in XUL processing allow the execution of
arbitrary code (CVE-2010-2760, CVE-2010-3167, CVE-2010-3168)

- - An implementation error in the XPCSafeJSObjectWrapper wrapper allows
the bypass of the same origin policy (CVE-2010-2763)

- - An integer overflow in frame handling allows the execution of
arbitrary code (CVE-2010-2765)

- - An implementation error in DOM handling allows the execution of
arbitrary code (CVE-2010-2766)

- - Incorrect pointer handling in the plugin code allow the execution of
arbitrary code (CVE-2010-2767)

- - Incorrect handling of an object tag may lead to the bypass of cross
site scripting filters (CVE-2010-2768)

- - Incorrect copy and paste handling could lead to cross site scripting
(CVE-2010-2769)

- - Crashes in the layout engine may lead to the execution of arbitrary
code (CVE-2010-3169)

This stuff is never going to get slower, uglier, dumber than it is now - this is it, rock bottom. From here, it's just a trot to catch up to everything else. There's not secret sauce in Flash or Silverlight,


Er, RTMFP (peer to peer UDP messaging through firewalls, which is at the heart of ChatRoulette) is pretty damn good sauce, and there's not even a suggestion that it'll come to HTML5.

I've heard rumors WebGL will be integrated into HTML5; as cool as it sounds, I'm really worries about the security implications. 3D engines are aggressively designed for speed, not correctness.

they have to ask permission to flip a pixel the same as the browser, only when the browser does it, well, it's the frakin browser.

Er, no they don't. They ask the browser where they're allowed to draw, and they just shove pixels (or a 3D context, in the case of WPF or Java) in place.

tons of issues with memory management on Macs compared to Windows, for example, which I ran into when implementing large file uploads on Flash

It's truly amazing how bad the non-Windows implementations of Flash are. I hear they're getting better.
posted by effugas at 10:40 PM on September 20, 2010


This stuff is never going to get slower, uglier, dumber than it is now

Ah, but it may get less compatible.

One real problem is the lack of an abstract SQLite implementation -- this is really screwing up client side database stuff.
posted by effugas at 10:43 PM on September 20, 2010


(That being said, I'm actually fairly optimistic about HTML5, simply because Adobe just cannot get text handling right. That you can always tell you're on a 100% Flash site, and it's a problem, says a lot.)
posted by effugas at 10:51 PM on September 20, 2010


Lots of snarks from the buggy whip fans here...
posted by Sukiari at 11:01 PM on September 20, 2010 [1 favorite]


Sukiari--

OK, so what makes Flash the buggy whip?
posted by effugas at 11:13 PM on September 20, 2010


It's truly amazing how bad the non-Windows implementations of Flash are. I hear they're getting better.

The promises are getting better. The product is about the same.
posted by Blazecock Pileon at 11:28 PM on September 20, 2010


y'know effugas you misinterpreted so many things on your way to your rant that I just can't take it all on.

bottom line: you're entire post(s) does nothing to counter my point that all things being equal (which you so handily prove) the implementation embedded in the host platform will win out.
posted by victors at 11:50 PM on September 20, 2010


Same thing that makes RealPlayer a buggy whip. Times have moved on, and while one may need some new skills to do what has been done in flash for, well, too god damned long already, most if not all can be accomplished with web standards now. People hate slow, buggy plugins and the time is coming when they won't be needed at all. Amazing things are being done with HTML5 now. See the chrome experiments site for a lot of stuff that buggy whip makers supporters claim is impossible.

People see that "Adobe Flash 10 Required" placeholder on a web site and just move on. Times are a changing.

Aside from the above, Flash is just a sewer pipe for the most obnoxious Internet advertising. I would estimate that probably 99% of Flash transmitted over the internet is shit the user would prefer not to see.

Most folks I know block it and only whitelist YouTube. Since YouTube is moving away from Flash itself, or at least now offering alternatives, this is probably the tail end of the buggy days.

In 10 years Flash will be just as well remembered as Beatnik by Headspace, and VRML.
posted by Sukiari at 12:00 AM on September 21, 2010


victors--

Whatchoo' talking about?

It's a fact that HTML DOMs, in general, are pretty fragile. I haven't fuzzed Flash as hard as your average HTML engine, but it's not like HTML in general is some super secure beast.

That being said, I've gone on the record publicly saying that I don't really see much to be afraid of in HTML5, relative to HTML4. WebGL, if it gets in, perhaps. But that's about it. Web workers, local storage, even the SQLite engine just get shrugs. I thought there'd be more to the video formats, and even pulled a few criticals out of OGG, but the state expansion in video isn't nearly as dramatic as I thought it would be.

Still, HTML5 doesn't really seem capable of doing anything Flash has been able to do since, what, 2004? I mean, sure, the VM can be slightly faster, and technically you don't need to depend on the plugin being installed, at the cost of a single platform that's already on 99% of desktops.

I'll grant that a huge advantage of HTML5 is that it's in most mobile devices. But Flash has a fair number of features that HTML5 isn't getting anytime soon, like peer-to-peer encrypted UDP-based messaging. ChatRoulette ain't getting ported to HTML5 anytime soon.

Same thing that makes RealPlayer a buggy whip.

Er, no. What made RealPlayer, and Windows Media Player, and QuickTime buggy whips were that they took 8-16 seconds to start playing video. Flash, despite lacking all the neat network protocols that were so desperately required for 28.8K modems, started playing videos in a second or two.

Also, Flash provided far more control over the video stream, something that HTML5 is still struggling with.


People see that "Adobe Flash 10 Required" placeholder on a web site and just move on. Times are a changing.


Cite required.

Aside from the above, Flash is just a sewer pipe for the most obnoxious Internet advertising.

Ah, the classic "we didn't want that functionality anyway" argument. May I propose that if Flash ads stop rendering, they'll just be ported to HTML5?
posted by effugas at 12:21 AM on September 21, 2010


The promises are getting better. The product is about the same.

How embarrassing.
posted by effugas at 12:23 AM on September 21, 2010


(I will grant also that the inability of anyone else to make a fully compatible Flash implementation -- and not for lack of trying -- isn't exactly a good thing.)
posted by effugas at 12:36 AM on September 21, 2010


I'm going to be semi-pedantic and point out that most of what we're talking about here (WebGL, web video, Web Workers, local storage) aren't actually 'HTML5' proper. I'm not trying to say you can't call them that, but just a reminder.

Also, I don't believe that much of this stuff is going to outright eat Flash's lunch any time soon (aka in the next year or so), but the capabilities and features of an out-of-the box copy of the next generation of browsers will be refreshingly mature and expressive- as someone who builds rich websites for a living, that's a breath of fresh air.
posted by potch at 1:40 AM on September 21, 2010


I'm kind of surprised they didn't mention Google Pac-Man

Google Pac-Man was traditional HTML4/DHTML DOM manipulation, there was no HTML5 in it.

Here's the last buglist out of Firefox

I'm not sure how that's relevant - are you suggesting I can use Flash without using Firefox? Does Flash protect against these Firefox bugs?

I'm not aware of anything HTML5 does that Flash doesn't do, better even.

At least two things: HTML5 by default doesn't steal focus and keep it, disabling all my browser's keyboard shortcuts; HTML5 doesn't ignore my CSS stacking order.

May I propose that if Flash ads stop rendering, they'll just be ported to HTML5?

They probably will, but because everything remains in the realm of the browser this will ultimately be less of an issue. The only way to block Flash ads is to either block the domains they're coming from, or block Flash altogether, there's no way to do any fine grained control from within my browser preferences.

Firefox for many years has had popup blocking, but it's clever enough not to block popups I asked for by clicking on them; I can allow GIFs to animate or not; I can allow the blink tag or not - this is all possible because all that content is under complete control of the browser the whole time.

I predict that, as HTML5 starts to get exploited for ads, we'll start to see similar fine grained control options for HTML5 features within the browser as we do for existing 'annoying HTML' stuff, first through extensions and later as core browser features.
posted by robertc at 3:06 AM on September 21, 2010


I'm I the only won annoyed that in this exciting new world we're still stuck with fucking javascript?
posted by markr at 3:59 AM on September 21, 2010


I'm going to be semi-pedantic and point out that most of what we're talking about here (WebGL, web video, Web Workers, local storage) aren't actually 'HTML5' proper. I'm not trying to say you can't call them that, but just a reminder.

I'm not exactly clear about why anyone's supposed to care about HTML5 if it isn't for all those other technologies. I mean, it's not like anyone's jumping up and down now that we have a well defined KEYGEN tag (well, ok, anyone but me).

I'm not sure how that's relevant - are you suggesting I can use Flash without using Firefox? Does Flash protect against these Firefox bugs?

That was in response to "HTML5 doesn't have a plugin that, if not updated, will compromise your computer simply by visiting a trusted site with an infected ad network."

Point being, HTML5 doesn't need a plugin. The underlying engine has plenty of the same class of bugs.

At least two things: HTML5 by default doesn't steal focus and keep it, disabling all my browser's keyboard shortcuts; HTML5 doesn't ignore my CSS stacking order.

For the former, you know they'll add support for doing that before the day is done -- it's needed for all sorts of games to work (otherwise, the down arrow would always scroll down).

For the latter, I agree, since the browser retains ownership of the pixel pushing it can respect CSS better.

You'll forgive me if I'm not wildly impressed by either of these characteristics, though.

I predict that, as HTML5 starts to get exploited for ads, we'll start to see similar fine grained control options for HTML5 features within the browser as we do for existing 'annoying HTML' stuff, first through extensions and later as core browser features.

I guess. You realize that the number of users using these "annoying HTML" filters is approximately zero, right?

(AdBlock is different, but we have a phrase in security for technology that's only written for the one or two people writing it. We call this the Self Licking Ice Cream Cone.)
posted by effugas at 4:12 AM on September 21, 2010


kafziel : Lot of misinformation and double standards in this.

Don't worry. With Safari, Opera, Firefox and IE all trying to guess, second guess or knacker the system before it's ready we'll have triple standards before the year is out.

Oh, you meant... Ah.

effugas : May I propose that if Flash ads stop rendering, they'll just be ported to HTML5?

That needs repeating. And it fills me with dread for the next few years. When the adverts are rendered in browser from content originating from the same script as the page content, we're all fucked.
posted by sodium lights the horizon at 4:13 AM on September 21, 2010 [1 favorite]


Point being, HTML5 doesn't need a plugin. The underlying engine has plenty of the same class of bugs.

Yes but my point was: 'number of bugs in underlying engine' <>For the former, you know they'll add support for doing that before the day is done

I know no such thing - it's been a known issue for years, it's the primary source of complaints as far as the innate inaccessibility of flash content is concerned and it's not been fixed, when is this 'day is done'?

You realize that the number of users using these "annoying HTML" filters is approximately zero, right?

It's approximately 80% of the browsing public, popup blocker is on by default in IE8, Safari, Chrome and Firefox as far as I know.
posted by robertc at 4:50 AM on September 21, 2010


I predict that, as HTML5 starts to get exploited for ads, we'll start to see similar fine grained control options for HTML5 features within the browser as we do for existing 'annoying HTML' stuff, first through extensions and later as core browser features.

HTML 5 is already being used for ads. Animation with CSS 3, audio, and video. Not only do advertisers have to pay for more bandwidth (24 bit PNGs are heavy), but the dev cycle is much longer and the cross-browser implementation is much more painful than Flash. Maybe those are good things...
posted by ryoshu at 5:44 AM on September 21, 2010


Neat! My company worked on The Endless Mural, one of the sites linked from the Beauty of the Web. Branden did a review of the tools he used to build it here. We have some renown for our flash work, and we were asked to work on this.
posted by frecklefaerie at 7:13 AM on September 21, 2010


effugas: "How embarrassing."

Adobe should be embarrassed and shareholders should be angry. They have failed quarter over quarter to deliver on the potential that the Flash market share provided them.

The recent demo of Flash on mobile devices was a bad joke, and now their evangelists are apparently cooking the books by writing equally poor HTML5 code for comparison demos.

Instead of focusing on delivering quality product, they scurried to the FTC to protect their market share, getting them to launch anti-trust investigations of rival companies that decided to use HTML5.

It's embarrassing for Adobe, definitely.
posted by Blazecock Pileon at 11:10 AM on September 21, 2010


There's a lot of bolding in this thread, making it difficult to read and follow.
posted by coolguymichael at 11:58 AM on September 21, 2010


coolguy--

I've been quoting people in bold. I'll shift to quoting people in blockquotes.

robertc--

The point is that HTML5 and Flash are within the same order of magnitude in terms of security vulnerability count. In other words, a site that requires Flash isn't putting you at significant additional risk, and a site that avoids Flash isn't by definition safer. That's pretty much what the data says.

Regarding focus stealing, I expect they'll eventually add an explicit mechanism to steal focus, ctx.grabFocus() or something, to make games work correctly. It's not like Flash is stealing focus without cause. The difference of course is that Flash does it by default while HTML5 won't.

You've got to admit, it's a fairly minor detail by any measure.

It's my understanding that Flash accessibility is more of an issue of the UI components needing to be wired up for access by every developer who slaps something together. If entire web pages become HTML5 canvases -- a possibility! -- we'll see the same problems. What do you think about that?

WRT to the popup blocker, first of all, that's on by default -- as opposed to random settings that block blink tags, or animated GIFs, or whatnot. Secondly, that's less a tag filter, and more a complex (and undocumented) set of rules around when window.open will be respected without a dropdown. There's lots of quirks to the web security model and this is one of them.

ryoshu--
HTML 5 is already being used for ads. Animation with CSS 3, audio, and video. Not only do advertisers have to pay for more bandwidth (24 bit PNGs are heavy), but the dev cycle is much longer and the cross-browser implementation is much more painful than Flash. Maybe those are good things...
No, they're very, very bad things. I assure you, it was not a design goal of HTML5 to be more expensive bandwidth-wise, to have a longer dev cycle, or to suffer cross-browser appcompat bugs. Nobody set out to do that.

Nothing, and I mean nothing is more dangerous to software than saying "maybe this bug is, in fact, a feature". If it's hard to write a banner ad, it's even harder to write a game.

Blazecock--

Adobe went to the FTC over the Flash to ObjC converter, not over the Flash runtime. Entirely different set of issues.
posted by effugas at 12:44 PM on September 21, 2010


Same thing that makes RealPlayer a buggy whip.

Er, no. What made RealPlayer, and Windows Media Player, and QuickTime buggy whips were that they took 8-16 seconds to start playing video. Flash, despite lacking all the neat network protocols that were so desperately required for 28.8K modems, started playing videos in a second or two.

Also, Flash provided far more control over the video stream, something that HTML5 is still struggling with.


This is just plain bull. In the "olden days" where the choice for video was QT, WMP, or RP, you would press the play button and there would be a small delay as the buffer fills. Today, with Flash, the buffer is filling in the background as soon as the Flash element loads. Despite this, Flash is still slower to play than the HTML5 video on Youtube. It is also slower to seek.

Flash gives *content providers* some sort of weak security, like a seatbelt made of lace. It has been trivial to rip these supposedly protected streams for many years now. However, when you say flash provides far more control, you are misusing the word. My video plugin allows for frame accurate seek, something that Flash is still struggling with. There is always a volume control, something that can not be said for Flash.

I do realize that bidirectional video masturbation sessions over Chat Roulette will not be possible without Flash, which is kind of a shame if you are into that sort of thing.

Cite required.

Take a peek at the major automobile manufacturers' web sites. Look at the major network news sites. All these used to be so flash heavy one needed a deep cycle marine battery for their laptop to stay alive long enough to even see what was going on. Now they are all much nicer and flash is not in evidence. This has all happened in the past few months.

Ah, the classic "we didn't want that functionality anyway" argument. May I propose that if Flash ads stop rendering, they'll just be ported to HTML5?

It's a classic, that's for sure. The classics just improve with time. This particular classic is fairly true, though.

I don't want to seem overly cruel to the flash programmers out there, and I have seen a handful of whizzy neat Flash gadgets, maybe a dozen over the last 10 years, but for the most part it's shit that I don't want to see.

Your proposal is quite justly offered. It's true, as Flash continues its inevitable decline, the shitware will migrate from Flash to HTML5. However, as the ad networks are notoriously untrusting, they will always insist on serving their "content" (read: horseshit) from another server and thus ad-blocking itself will be just as easy as it is today. Hell, a nicely crafter usercontent.css might do most of the anti-shit patrol work then. Unlike sodium lights, I am not dreading the days when ads are served over HTML alone.
posted by Sukiari at 2:16 PM on September 21, 2010


Blazecock Pileon: "The recent demo of Flash on mobile devices was a bad joke"

I don't know if they handed out an early beta to people that reviewed it or what, but the current version of flash for Android works fine.
posted by markr at 2:35 PM on September 21, 2010


This is just plain bull. In the "olden days" where the choice for video was QT, WMP, or RP, you would press the play button and there would be a small delay as the buffer fills.
Sure, but the play button wouldn't show up for a solid 15-20 seconds. And I'm not even talking about the past -- go run some experiments, today, with WMP or QT (I haven't touched Real since 2001 so I have no idea if they got their perf in order). See that hard drive light? It's hard to miss, it'll be solid grinding. Perf is better now, but not by much.

It was a pretty big deal, going from asking the user which video source to support and having them wait and wait and wait for it to spawn, to just spewing Flash and having it work.
Despite this, Flash is still slower to play than the HTML5 video on Youtube.
On the one hand, this has clearly gotten much better in the last six months.

On the other, where's fullscreen support?
Cite required.

Take a peek at the major automobile manufacturers' web sites. Look at the major network news sites.
Uh, I suspect this has more to do with iPad not supporting Flash, but OK, I will.

http://www.ford.com/
http://www.gm.com/
http://www.chrysler.com/
http://www.honda.com/

...all have Flash on their home page. And if you dig in, you see others with Flash too.

http://www.lexus.com/models/allModels/# (1 click)
http://www.toyota.com/vehicles/minisite/yaris/experience/ (3 clicks)

As for major network news sites:

CNN: The video player on the front page is Flash (click it)
CBS News: Same as CNN
I don't want to seem overly cruel to the flash programmers out there, and I have seen a handful of whizzy neat Flash gadgets, maybe a dozen over the last 10 years, but for the most part it's shit that I don't want to see.
Then you should be just as pissed at HTML5 as you are at Flash, because it's another engine for that shit. You should be arguing against canvases, against bidirectional network stacks, and against strong audiovisual integration because these are engines for shit, not whatever you think the web is suppose to be.

That you're not is very strange to me. I note that HTML5 and Flash are hosted by the same HTTP mechanisms, so your tangent about being able to adblock HTML5 ads isn't relevant.
posted by effugas at 2:45 PM on September 21, 2010 [1 favorite]


I do realize that bidirectional video masturbation sessions over Chat Roulette will not be possible without Flash, which is kind of a shame if you are into that sort of thing.
Actually, I'm rather interested in P2P data distribution via web browsers. I'm rather uncomfortable with everyone requiring uTorrent.
posted by effugas at 2:49 PM on September 21, 2010


I've been quoting people in bold. I'll shift to quoting people in blockquotes.

The convention, I believe, is to italicize.

Regarding focus stealing, I expect they'll eventually add an explicit mechanism to steal focus, ctx.grabFocus() or something, to make games work correctly.

I'm pretty sure they won't, it breaks too much stuff.

You've got to admit, it's a fairly minor detail by any measure.

No, it's the single most annoying thing about Flash, don't you ever use keyboard shortcuts?

It's my understanding that Flash accessibility is more of an issue of the UI components needing to be wired up for access by every developer who slaps something together.

No, the keyboard focus issue, which you keep saying isn't really a big problem, is actually the biggest problem from an accessibility point of view. Consider that accesskeys, a requirement for WCAG 1.0, are considered bad for accessibility because they interfere unpredictably with browser and AT keyboard shortcuts.

If entire web pages become HTML5 canvases -- a possibility! -- we'll see the same problems. What do you think about that?

What I think about that is that entire web pages made out of canvas are about as bad an idea as entire web pages made out of Flash :) People should use the built in HTML components for UIs, but if they really want custom controls: SVG and ARIA (which isn't practically accessible yet, but will be before Flash is). I am sure that canvas will be used for this sort of thing (BeSpin already did, there was some controversy).
posted by robertc at 1:20 PM on September 22, 2010


No, it's the single most annoying thing about Flash, don't you ever use keyboard shortcuts?

Do you ever play Flash games?

I'm serious. Do you?

No, the keyboard focus issue, which you keep saying isn't really a big problem, is actually the biggest problem from an accessibility point of view.

I'm unconvinced the two are unlinked. The lack of standard components means it's difficult to adequately handle handoff from inside of Flash to the rest of the DOM.
posted by effugas at 10:58 PM on September 22, 2010


(Mind you, difficult != impossible. Flash has _access_ to the DOM of its parent, embed/object params notwithstanding. But it's something of a PITA to use even under normal conditions.)

Also, shouldn't SVG be just as much a problem as Canvas? I don't see much of a difference between declaring a poly and building one via script.
posted by effugas at 1:13 AM on September 23, 2010


Do you ever play Flash games?

I'm serious. Do you?


Nope. I also very rarely watch video online (I usually search for the transcript if it's a talk/interview which has been recommended).

The lack of standard components means it's difficult to adequately handle handoff from inside of Flash to the rest of the DOM.

That's sort of the point - it's difficult to adequately handle handoff between something which is the browser and something which isn't, all plugins have this problem, it's just that Flash is ubiquitous so it gets more notice.

Also, shouldn't SVG be just as much a problem as Canvas? I don't see much of a difference between declaring a poly and building one via script.

It doesn't matter how you declare them, it's the relationship with the DOM which is key. Canvas is, like Flash, essentially a black box. If you draw a poly on a canvas element then all you have afterwards is a set of different coloured pixels among some other pixels. As far as AT devices are concerned it's not really any different to an image, they can't 'see' into it. But of course, since they can't see images anyway that's not such a great example - however if you write text on the canvas element that's also just a collection of pixels, you can't then extract the text back out except by some sort of OCR technology.

With SVG when you create a poly, or a text element, then you're creating actual DOM elements, just the same as if you were creating paragraphs or headings. These have the same innate but limited accessibility as any other element in the DOM - ATs can infer certain things because they can recognise the type of element, be aware of keyboard focus on clickable items, read out the text in text elements and so on. Additionally, because they're full DOM elements, they can also have attributes, like titles and descriptions, and they are also amenable to having extended meaning attached to them, as per standard HTML elements, using ARIA attributes.

Now, since no current screenreader is 'HTML5 capable' (as far as I'm aware) the accessibility advantages of SVG are largely theoretical at this point but, since SVG is included in IE9, that situation should improve over time. Canvas, as, basically, a dynamic bitmap with no internal structure, is unlikely to see any such improvement. Like Flash, things mostly depend on developers consciously implementing accessibility features. The advantage SVG has over canvas is also its disadvantage - DOM elements are relatively heavyweight and their are performance issues once you start trying to manipulate large numbers of them.
posted by robertc at 1:49 PM on September 23, 2010


Nope. I also very rarely watch video online (I usually search for the transcript if it's a talk/interview which has been recommended).

Your priorities are thus a bit skewed. Browser developers need to listen to all their users.

Canvas, as, basically, a dynamic bitmap with no internal structure, is unlikely to see any such improvement.

You've got a point that Canvas, unlike SVG, loses the poly context the moment the pixels are dropped. That context could be cached but it'd always be messy.

Interestingly, Flash, unlike Canvas, can maintain the poly context since it's optimized around animation. There's an object model in Flash and it's rather high perf.

Ultimately, I think the thing you dislike is not Flash, and the thing you like is not HTML5. What you like is markup that can be reinterpreted for the disabled. I'm not convinced HTML5 is significantly better than Flash in this regard.
posted by effugas at 2:58 PM on September 23, 2010


Your priorities are thus a bit skewed. Browser developers need to listen to all their users.

My priorities are my priorities. I'm not sure why I get excluded from 'all their users'?

Ultimately, I think the thing you dislike is not Flash, and the thing you like is not HTML5. What you like is markup that can be reinterpreted for the disabled. I'm not convinced HTML5 is significantly better than Flash in this regard.

I don't dislike Flash, I just prefer open standards and native browser functionality. Just because it annoys me (a lot) that Ctrl-T stops working just because I've happened to click on something in the web page which is implemented in Flash doesn't mean I hate it unreservedly. If I disliked Flash so much I simply wouldn't install the plugin - it's not like that's not been the path of least resistance on 64bit Linux.

All I've been doing is pointing out that there are some things HTML5 does better than Flash (already) in response to your original claim there were none, and then continuing to explain when you characterized those things as not important.
posted by robertc at 4:17 PM on September 23, 2010


« Older Burn Rubber, Baby, Burn Rubber   |   And they utterly destroyed all that was in the... Newer »


This thread has been archived and is closed to new comments