Thursday, November 10, 2011

Steve Jobs was wrong on Flash

With Adobe's recent announcement that they will discontinue supporting Flash on mobile devices, a lot of people are declaring that Jobs was right on Flash. I say he was wrong and here's why.
Before we really start, lets set the record straight about Flash. Flash allowed web developers to do things that where impossible in HTML. This was good, but many developers got carried away and created monstrosities, building websites void of HTML and completely annoying to use. This gave Flash a bad name amongst real web developers who saw it as a cop-out for developers. However it allowed games and videos to exist in a space where it would have otherwise to deliver such content. As HTML5 has been rolled out amongst every major browser web developers have been looking forward to the death of Flash.
I fall in the "death to Flash" camp, but I still believe Jobs was wrong. Computing is a user-centric experience. If the computer isn't doing what the user wants, then the computer isn't really doing its job. Designers of software are in a position where they have to balance making everything excessively configurable, such that a user try to set settings becomes confused, and making decisions for the user. This is a pretty delicate balance, and one that is fraught with inevitably some minority of users becoming upset at the choices that are made.
The direction Apple has chosen with the iPhone is to be the ultimate gate keeper, keeping their users behind a walled garden where Apple dictates what will be allowed, and how what is allowed will behave. Break Apple's rules and you get the boot, or are not even let in in the first place. This is a fundamental design decision Apple has made that has driven their product every step of the way. Because Apple holds the key they keep the bad stuff out and only allow in what they deem to be good enough for their users. Before the iPhone users have had a chance to speak their voice, Apple has decided if a voice will even be allowed in the first place. This is what Apple did with Flash. They declared Flash on mobile to be a dead end, and didn't allow their users to choose for themselves if Flash on their iPhone was good or bad. Jobs, and through him Apple, may have been right that Flash on mobile devices isn't a good idea. They where wrong, however, to not allow Flash on the iPhone. If users didn't like it, nobody had to make them use it. If nobody used it then no harm-no foul.
We can only hope that over time Flash goes the way of Shockwave, but in the meantime, lets let those purchase computing devices make that decision, not the manufacturers of those devices. It is my inherent freedom, as the purchaser of a device, to use it in any lawful way I choose. It is unethical for the makers of that device to micro-manage those choices for me, barring me from the decision making process.