You’ve probably heard that Apple recently announced the iPad. The absence of Flash Player on the device seems to have awakened the HTML5 vs. Flash debate. Apparently, it’s the final nail in the coffin for Flash.
The arguments run wide, strong, and legitimate on both sides. Apple CEO Steve Jobs calls Flash Player buggy. John Gruber of Daring Fireball says that Apple wants to maintain their own ecosystem—a formula Adobe’s software doesn’t easily fit into. On the other end, Adobe CTO Kevin Lynch argues that Flash is a great content delivery vehicle. Mike Chambers, Principal Product Manager for Flash platform developer relations at Adobe, expresses his concerns over closed platforms. Interactive developer Grant Skinner reflects on the advantages of Flash.
However, the issue is larger than which one is better. It’s about preference and politics. It’s an arms race. This is the Cold War of the Web.
Both the standards community and the Flash community are extremely good at sharing knowledge and supporting the people within their respective groups. The relationship across communities, however, isn’t nearly as cordial. Two things are happening: either the people within each camp stay to themselves, or one ignorantly hurls insults at the other.
As new technologies emerge, their following naturally starts small. An effective rallying cry is to find—or create—a common enemy. Huge strides such as Doug Bowman’s Wired redesign, Dave Shea’s CSS Zen Garden, and Jeffrey Zeldman’s Designing With Web Standards had a significant influence, not only on the standards community, but on the entire web design industry. They positioned standards as an alternative to Flash and table-based sites, not in conflict with them. However, less enlightened followers wrongly interpreted these champions’ examples as the first assault. As Adobe Photoshop Principal Product Manager John Nack says, “people want a certain ‘killer’ narrative.”
The same thing is happening today. Those pushing the HTML5 specification forward, such as Ian Hickson, Jeremy Keith, and the NYC gathering of geeks, are offering it as a new alternative with some major advantages over existing technologies. Yet again, some have dubbed it the harbinger of doom for Flash.
The antagonistic nature of this debate is destroying the industry. Designers and developers waste their time playing the “one-up” game, as opposed to collaborating. Specialization has its advantages, but only as a subset of a larger whole. Jamie Kosoy, my colleague and Associate Technical Director at Big Spaceship, says it well:
A line in the sand
The problem with rallying behind a technology is that it traps us within the confines of its constraints. We easily shift “don’t know” and “not sure” into “can’t” and “won’t.” Creativity is dictated by programming languages. How sad.
Technologies aren’t inherently bad or good. They’re only appropriate or inappropriate for certain circumstances. They’re a means to an end, not solutions within themselves. Each one is powerful in its own right to accomplish a certain goal. The responsibility to use an appropriate technology lies with the one who made the choice. Unfortunately, we’ve misinterpreted irresponsible development as inadequate technology.
Case in point: Loading. Flash provides powerful methods to track the download progress of every miniscule element. And what have we chosen to do with it? We load everything up front and make the user suffer through minutes of a loading sequence, instead of loading assets progresssively as they’re requested. The Flash platform does not deserve the blame for bloated websites—the developers who made these poor decisions do.
Until we realize the foolishness of faith in technology, we’ll see the same cycle repeated.
Doomed to repeat the past
<canvas>? Will heavily scripted web applications become intense processor hogs?
If this sounds familiar to you, it should. These are the kinds of questions the Flash community explored throughout its early years. Regardless of your opinion about Flash, it’s difficult to deny the tremendous growth it has experienced. From a simple drawing application, to a full-fledged scripting language, to powerful streaming video capabilities, and more, the Flash platform has expanded exponentially to respond to the needs of its users—the people who use it to create and the people who use the end result. For better or worse, Flash has shaped the way people absorb online content.
I’ll go so far as to assert that most technological advances are born from something that would be good for people using it. When we put stock in technology and try to be creative for creativity’s sake, we almost always repeat our mistakes. When we try and solve problems instead, we force ourselves to care. Innovation is a natural side effect.
Worth fighting for
But we take pride in our technologies. If I’m not striving for my guru ranking in a particular programming language or design style, then what really matters? I’ve hinted at it throughout the whole article, but let me make it painfully obvious.
People matter. Not users, but people. A user is a faceless entity, robotically performing tasks that we test and optimize. A person lives, laughs, cries, loves, hates—and uses the sites and applications we make. My mom. Your five-year-old. His grandfather. Her best friend. Their science class. They don’t tell us how much they appreciate our progressive enhancement or how we use the drawing API or our impeccable use of attribute selectors. They only say that a website was confusing or hard to read or fun to play with. That’s the real motivation for excellence: bringing ease, joy, and fun to the people around us.
We want you
The bickering is getting old. Here’s what we can do.
Start supporting initiatives instead of bashing them. Do you think Flash sucks? Don’t write a “Dear Adobe” rant on your blog; contact the Adobe team directly and tell them what you think could be improved. Think HTML5 is a joke? Get involved with the working group to make it better. Got a problem with how a certain site is built? Approach the creators with your concerns and suggestions, privately and humbly.
Agencies: Stop writing job listings for HTML5 designers or ActionScript gurus. You’re just fanning the flames. Instead, invest in creative people who know how to execute in a number of ways, people who prioritize learning new tools to solve a problem over honing their chops. Don’t sell (or discourage) Flash or standards to your clients; instead, sell creative brand extensions, accessible content, enjoyable experiences, and simple maintainability.
Teach. Approach your local college (or high school!) web design program and offer to instruct the new generation of designers and developers. Web design education is stagnant; it will take dedicated people who are willing to challenge the status quo to change that. Get involved with the wonderful work that’s being done in the area of web design education, such as the WaSP InterAct program, Opera Web Standards curriculum, or Adobe Education Technologies.
Finally, remember what really matters: People. For everyone’s sake, it’s time we all learned to get along.