Thoughts on Flash - <AUTHOR> http://www.apple.com/hotnews/thoughts-on-flash/ <comment><USER2> If they're going to pitch HTML5 as an alternative to Flash (and, implicitly, the iPhoneOS API), then why not let them compete directly with Cocoa Touch apps? Why not offer HTML5 developers a way to take advantage of the App Store's monetization and discoverability?

Apple already provides some amazing documentation and tutorials for making offline-capable mobile web apps, but they're still treated by Apple as the bastard cousins of "real" iPhone apps. They should buy or provide an officially-supported analogue to a tool like PhoneGap[1] or Titanium[2], allowing HTML5 apps to appear in the App Store, and perhaps provide an Apple- supported framework such as their mysterious PastryKit[3] or contribute to SproutCore[4], giving HTML5 developers better tools to conform to Apple's HIG.

HTML5 apps built on open standards should be on an equal footing with apps built in Cocoa Touch. That would be walking the walk.

[1] <http://phonegap.com/>

[2] <http://www.appcelerator.com/>

[3] <http://daringfireball.net/2009/12/pastrykit>

[4] [http://blog.sproutcore.com/post/531215199/introducing- sprout...](http://blog.sproutcore.com/post/531215199/introducing-sproutcore- touch)

EDIT: " _officially-supported_ analogue"

EDIT: footnotes

<comment><USER3> Can't you create a barebones cocoa touch app that basically just shows safari, and your app runs inside that as ja and HTML?

<comment><USER4> You could, but Apple are rejecting apps that are just web views or RSS readers so I wouldn't recommend it.

<comment><USER5> There are plenty of apps that utilize web views inside of native iPhone UIs, like tab bar controllers and other widgets. They are "hybrid" apps and make the best of both and they get by the review process just fine. A lot of them are fairly big names, like Reddit.

</comment></comment></comment></comment><comment><USER6> I love this. Apple clearly laid out their reasoning, using facts and persuasive argument. The world needs more of this.

Obviously, there is some spin in the post, and I don't completely agree with 100% of it, but I love the level of discourse.

<comment><USER7> I have trouble swallowing _some_ of this. A few of these theories have been debunked successfully.

I have a small problem with this "don't look at the man behind the curtain" routine. Proprietary is proprietary. Don't try and swing it.

Battery Life: <http://vimeo.com/9705969>, <http://vimeo.com/9724682>

Delays: [http://www.neowin.net/news/adobe-quotapple-hurts- customers-f...](http://www.neowin.net/news/adobe-quotapple-hurts-customers- flash-101-delayed-beta-for-android-announced)

Touch/Scroll: [http://www.mikechambers.com/blog/2010/02/22/flash-player- con...](http://www.mikechambers.com/blog/2010/02/22/flash-player-content- mouse-events-and-touch-input), [http://www.mikechambers.com/blog/2010/02/23/scrolling- html-w...](http://www.mikechambers.com/blog/2010/02/23/scrolling-html-with- flash-content-on-touch-devices)

Speed: [http://jobemakar.blogspot.com/2010/04/flash-is-speedy-on- and...](http://jobemakar.blogspot.com/2010/04/flash-is-speedy-on-android.html)

<comment><USER8> _Delays_

Your link makes it seem like an evangelist is playing loosely with words; "available for download" could simply mean beta/RC status, not ready for release everywhere.

 _Battery Life_

From your link: The results are amazing: I can watch a _4 hours_ and a half flash movie, without interruption, with a bright screen (no sleep mode) and sound !!!

From Steve Jobs post: The difference is striking: on an iPhone, for example, H.264 videos play for _up to 10 hours_ , while videos decoded in software play for _less than 5 hours_ before the battery is fully drained.

They seem to agree with each other? And only helps Apple's point.

 _Touch/Scroll_

How about hover?

<comment><USER7> It is true that some of these links are from evangelists. But we're not saying Steve Jobs is neutral are we?

Battery Life: It's a bit of hyperbole. We don't watch videos on the iPhone for 10 hours. Would it matter if Flash could play videos for 11 hours? It is a misdirection or a sidestep of an original claim that Flash would kill the iPhone inside of 2 hours.

Touch/Scroll: Another sidestep. A Flash issue? With that I answer: a:hover {}

I just don't get this argument from Apple. Steve Jobs pioneered high usability mobile UI because Apple took the reigns. Now we have Android UI taking a cue from Apple and "unlocking the mobile market"

Flash and HTML5 have a similar relationship. HTML5 opens it up a bit. That's great. But what about HTML6? Flash is Area51 for implementation study.

We don't need to implement a marquee tag and then take it away once we realize it sucks. How could we market test video conf. or canvas-based visuals if we had no way to benchmark them? Flash is good. The VS. argument is a misnomer.

<comment><USER9> > _"We don't watch videos on the iPhone for 10 hours."_

We do other things on the iPhone. I don't want to make the choice between watching a video and then restricting my own usage just so my phone has enough juice to make a call. I'd rather watch videos _and_ use my phone, and the more power efficient everything is, the more the user can do this.

To put it in perspective, if Apple's numbers are to be believed, running Flash alone _doubles_ the power consumption of the device. That's insane.

> _"With that I answer: a:hover {}"_

a:hover is no longer (it certainly used to be) a common tool used for site navigation. Which is to say, rollover dropdown menus are out like parachute pants - it's a non-issue on the web today. Just about every site works with "clicks", which is Apple's primary form of interaction with websites on touch devices.

The most compelling argument made though we've already been aware of for some time: cross-platform toolkits encourage lowest common denominator design. In Apple's world of pixel-perfect mockups and obsessive attention to detail this is abhorrent - and I'm inclined to agree. The iPhone's chief strength is its remarkably polished user interface - which for the most part remains true across its 3rd party app sphere, thanks in no small part to Apple's obsessive HID enforcement.

A Flash-compiled-to-iPhone app destroys this in the same way that a Linux Qt app hastily ported to Windows is the same.

<comment><USER7> > a:hover is no longer (it certainly used to be) a common tool used for site > navigation. Which is to say, rollover dropdown menus are out like parachute > pants - it's a non-issue on the web today. Just about every site works with > "clicks", which is Apple's primary form of interaction with websites on > touch devices.

This is precisely what I am talking about. We slice the pear in the middle and somehow end up choosing one side over another. True, a:hover is a deprecated form of menu control in HTML, but it is in Flash, too. Again, how you use the tool. Damning an entire developer base based on miscreant use is not a compelling argument. Sorry, but it isn't.

<comment><USER9> > _"based on miscreant use"_

That's being a bit generous in favor of Adobe - the majority of the Flash development sphere is practically what one would consider "miscreant use".

Here's my impression of the different sorts of Flash use, based on my journeys on the web:

\- Videos/Audio: Easily replaced by HTML5, and better too. More readily hardware accelerated, behaves as part of the core browser instead of a hijacking addon (e.g., Ctrl+T while focused on a Flash applet = no new tab), and _much_ better battery life on mobiles.

\- Crappy restaurant websites and other crimes against humanity: These should just die, and HTML5 will hopefully inspire better design ethic than this. I don't buy the argument that hovering is no longer common used as a critical navigation feature in Flash - I see it _everywhere_ , especially for crappy restaurant websites. Flash is also impossible to crawl which reduces the usefulness of the web overall. Hell, you can't even LINK to content in a Flash site. IMHO the "full Flash site" (as opposed to Flash being a component of a page) needs to die a fiery, painful death.

\- Games: The only place where Adobe has even a remotely legitimate claim that Flash is an empowering product rather than a crutch.

When I think of Flash these keywords come to mind: slow, buggy, crashy, badly designed, usability nightmare, gimmicky, unprofessional, and just plain _bad_.

<comment><USER7> > That's being a bit generous in favor of Adobe - the majority of the Flash > development sphere is practically what one would consider "miscreant use".

The vast majority of websites in general are poor. It would be no surprise to see that the majority of Flash sites would also be poor. Both sides have exceptions, though.

> Videos/Audio: Easily replaced by HTML5, and better too. More readily > hardware accelerated, behaves as part of the core browser instead of a > hijacking addon (e.g., Ctrl+T while focused on a Flash applet = no new tab), > and much better battery life on mobiles.

I don't disagree. I am grateful that HTML5 can handle this, but it took a "standards" committee several years to roll this into a questionably viable model. The immediate fanfare for the slow implementation raises my eyebrow a bit. We're all happy about having something we've needed for years. The company that created the fold so we could have sites like YouTube today? The devil.

> \- Crappy restaurant websites and other crimes against humanity: These > should just die, and HTML5 will hopefully inspire better design ethic than > this.

It won't. Cheese is forever. If HTML5 can accomplish cheese, people will create cheese. We're all hopeful, but the human condition comes into play.

<comment><USER9> It's not the cheese I object to - but that the Cheese breaks the internet in fundamental ways.

Example: We just wrapped up Restaurant Week here in Seattle where a bunch of local establishments offered up prix-fixe specials for a couple of weeks. The website for this event was done up all in Flash, and made it impossible to crawl for a search engine, or even to _link_ or _bookmark_ a particular restaurant for later retrieval.

What did we exchange for this cheese and gimmicky design? Everything.

There's no regulating for good taste - you're right, most websites in general are poor. They, however, are still _accessible_ \- neon green text on black background with an annoying MIDI track in the background is still information that:

\- you can link to

\- you can bookmark

\- you can copy and paste

\- you can search for in-browser (doubly important if the website fails at layout, e.g. most Flash sites!)

\- you can search for on Google/Bing

Those are pretty important.

<comment><USER7> > What did we exchange for this cheese and gimmicky design? Everything.

I agree that if you don't follow the proper protocol you will end up with an undesirable site. I can't argue that Flash == HTML in terms of accessibility. There are ways within Flash to harness some accessibility but it is up to the developer to implement these. An informational site in Flash is a bad choice. I would never suggest the use of Flash for broad use. A fun site (like <http://www.myspace.com/fanvideo>) is more appropriate.

> \- you can link to

> \- you can bookmark

Named-anchors and proper implementation (same as AJAX RIA)

> \- you can copy and paste

"Selectable text" is an option in any Flash text field.

> \- you can search for in-browser (doubly important if the website fails at > layout, e.g. most Flash sites!)

> \- you can search for on Google/Bing

Flash exports text within to the container. Google also can search SWF.

> Those are pretty important.

Agree.

<comment><USER8> _"Selectable text" is an option in any Flash text field._

Is copying/pasting it to the OS (or app) pasteboard an option? If so, will it use the same UI as native apps have? Or will it force a funky widget of its own in the middle of an app that otherwise looks like the rest of the OS?

<comment><USER7> The options are the same as the OS using the same UI. Identical to right-click menu in browser inputs/address bar. It is using the OS clipboard. CTRL/OPTION+C/V works the same as well.

<comment><USER8> Are you saying that Adobe reimplemented the UI? Or that they pass it off to the OS to handle? Because if its the former, the iPhone doesn't have a menu dropdown for cut/copy/paste. Or a ctrl/command button, for that matter.

I'm only asking because I've never had copy/paste from flash work well on the desktop.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER10> What he describes as the "most important reason" is also the big mistake here. If using certain libraries or cross-platform development tools truly did result in worse apps, then the market would take care of that.

He also doesn't seem to understand that such tools do not all totally hide the underlying APIs. They fall along a continuum in that respect. And in trying to ban extreme cases like Flash, Apple has also basically banned compilers.

 _Every_ programmer I've talked to about this thought it was some combination of stupid and evil (there ought to be a word for that; stevil?) to insist that apps be written only in C, C++, and Objective-C.

Surely there must be people fairly high up in Apple who realize what a crazy move it is to try to dictate to hackers what programming language they should use. It worries me that those people aren't being heard.

<comment><USER11> I'm starting to suspect that Apple really requires proprietary APIs and decrepit languages for the same reasons Spolsky[1] once said Microsoft used proprietary and huge and ever-changing APIs. It's cover fire to make everyone else's projects soak up more hours, increasing the fraction of captive developers and shops who are only experienced in iPhone OS work, rather than being prepared for work on iPhone OS _and other platforms_.

[1] <http://www.joelonsoftware.com/articles/fog0000000339.html>

<comment><USER12> _I'm starting to suspect that Apple really requires proprietary APIs and decrepit languages for the same reasons Spolsky[1] once said Microsoft used proprietary and huge and ever-changing APIs._

Microsoft finally addressed this and stabilized their APIs but they were somewhere between 5 and 10 years too late. Circa .NET 2.0 + in my opinion as an ex-.NET programmer.

Apple could easily end up in the same situation if they continue down this road.

EDIT: Detail

</comment></comment></comment><comment><USER13> Flash is closed, Apple is open. Huh?

I can build a flash app entirely for free, legally, with zero restrictions, forever, on the tools I used to write it, or where I can deploy it to. Adobe has bent over backwards to make players (also free) backwards compatible. That's pretty open.

I must pay to build an iphone app, which I can only do on a computer owned by the same company, running an OS owned by the same company. This app only runs on hardware made by said company, and only run on an OS by said company. I am restricted in how I can build this, and must live by the whims of an opaque editorial process. In terms of openness, this makes Bill Gates look like RMS.

<comment><USER14> Can you really build flash apps for free? Honest question — I thought you needed to have Flash.

If you do need Flash, you have things backwards. For one, he's talking about web apps, not iPhone OS apps. Web apps are entirely open and Apple is huge on pushing what you can do with the web.

Also, building iPhone OS apps is absolutely free. The entire SDK and documentation is free of charge, you just need a Mac to develop on. You need a $100 membership to sell iPhone apps, which is _very_ different from needing it to try out development.

Flash on the other hand, costs $700.

Flash _is_ entirely closed. Apple is mostly closed and is totally up front about it, but they completely support open web standards.

<comment><USER15> Yes you can.

The compiler is free and open (<http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK>).

That, an editor, and Bob's your uncle.

On Windows, there's also a nice open source IDE (<http://flashdevelop.org>).

The one thing that's _not_ open source is the player, and that _is_ free.

<comment><USER16> You realise that Adobe lets you make any components you want EXCEPT FOR THE PLAYER? Why, because they want to retain control of it. I mean, they publish the spec, people have made players before, and they have been told by Adobe to stop.

Sounds familiar.

<comment><USER15> That is incorrect.

They _used_ place that restriction on those accessing the .swf spec, but that restriction has been lifted. I'd have to check, but I think it's been several years now, but it's certainly been more than a year.

</comment></comment></comment></comment></comment><comment><USER17> > For example, although Mac OS X has been shipping for almost 10 years now, > Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5.

right. And the Finder - a piece of Software central to OSX was using Carbon until... when exactly? At most 6 months prior to when CS5 came out.

iTunes - a corner stone of the iPhone software world? Still on Carbon.

If I hate one thing, it's hypocrisy.

Aside of that, nice arguments and well-written. Also, from this perspective, MonoTouch and Unity might be in the clear too as they are not cross-platform toolkits reducing themselves to the least common denominator.

<comment><USER18> Apple purposefully wrote Finder in clean Carbon as an example to developers, to prove that it was possible to make good cross-platform software. iTunes was also written very carefully -- and very cleanly -- in Carbon to be cross- platform.

Adobe, however, hacked Creative Suite into Carbon with buggy, inefficient code and then took 10 years -- _ten years_ \-- to schedule the time to fix it.

<comment><USER19> Have you ever used itunes on pc? It sucks. Almost as much as flash.

<comment><USER20> It almost serves as an example of how cross-platform targeting _can_ deliver a poor product.

</comment></comment></comment></comment><comment><USER21> This is where he loses me:

"Though the operating system for the iPhone, iPod and iPad is proprietary, we strongly believe that all standards pertaining to the web should be open."

Adobe can just as easily say: "Though Flash products are proprietary, we strongly believe that standards pertaining to what software is allowed to run on your computer should be open."

It's doublespeak either way, and it's crazy to think that either of those two viewpoints is good for the industry.

edit: Also: "If developers need to rewrite their Flash websites, why not use modern technologies like HTML5, CSS and JavaScript?"

Flash can handle touch events just fine. Rewriting all that flash code in H/C/J is a monumental task compared to just updating a few flash events.

Basically, this is a lot of corporate spin and not a lot of sound arguments.

<comment><USER22> > _[Jobs:] "we strongly believe that all standards pertaining to the web > should be open."_

Consider Python. Is it a standard? Yes, because there's an open source reference implementation.

Does it pertain to the web? Yes it does, because http clients and servers can be, and often are, written in this language, and its standard library and 3rd- party open source libraries support http and other web protocols such as HTML.

So if you're so keen on stand ards Steve, why can't I write web software in Python for the iPhone and iPad? Why are you such a hypocrite?

On a wider note: Steve, do you want to spend the rest of your life selling sugar-coated digital handcuffs, or do you to change the world for the better?

<comment><USER23> Is python really a 'standard'? Python's had trouble lately with non-mainline implementations because the grammar keeps changing. There's no standards document laying out how the language should behave, in the sense of 'Jython is compatible with the Python language 2.5'; rather, third-party implementations duplicate features and functionality from CPython based off the PEP they're defined in.

Does it pertain to the web? It doesn't. Python isn't used 'on the web', it's used on the backend to generate web pages, as is C#, Erlang, and pretty much every other language ever. Are you suggesting that Apple should include a Python interpreter in WebKit? It sounds like that's what you're suggesting.

The simple answer would be 'because Python is not a language that is used in client-side scripting anywhere on the web'. No other browser supports it, and even if they did it wouldn't be widely used.

Your argument seems not only spurious but nonsensical. Python is used to send or receive documents over HTTP, so therefore I should be able to write a web app in Python to run on the iPhone? It doesn't make sense.

My home cable internet 'pertains to the web' too, and it uses documented standards like DOCSIS, so why doesn't my iPhone support DOCSIS? It's a ridiculous argument, as is yours.

<comment><USER22> > _Is python really a 'standard'?_

In an important sense I think it is. If I write a program in Python I can be reasonably sure it will run on someone else's system (obviously I have to take into account different Python versions, different underlying OS, etc). If I write a program in C++ or Scheme, what assurances of portability do I have if someone else's system is running a different implementation, with different libraries available, and different underlying behaviour in edge cases.

> _rather, third-party implementations duplicate features and functionality > from CPython based off the PEP they're defined in._

Yes; CPython is the standard. It's better if the standard is a program rather than a document, because you can run a program and find out what it does, but a document just sits there and does nothing (and may be hard to understand or ambiguous; the spec for Algol 68 comes to mind here).

> _Python isn't used 'on the web', it's used on the backend to generate web > pages_

It is used as an http client as well as a server.

> _Are you suggesting that Apple should include a Python interpreter in > WebKit?_

No, I'm suggesting that Apple should open up their platforms and allow people who have bought iPhones and iPads to run software of their own choosing on them; I'm sure someone would port Python fairly quickly.

> _The simple answer would be 'because Python is not a language that is used > in client-side scripting anywhere on the web'._

That's factually inaccurate; I personally have written code in Python that acts as a web client. As have some of my friends.

> _No other browser supports it, and even if they did it wouldn't be widely > used._

You seem to be under the misapprehension that client-side web programming must involve running inside a graphical web browser. This is not the case. Ever heard of wget? Or scraping?

> _Python is used to send or receive documents over HTTP, so therefore I > should be able to write a web app in Python to run on the iPhone? It doesn't > make sense._

Yes it does. For example, I might want to write a program to cache certain web pages so I can read them even if I'm in an area with poor wifi and 3G access. And I might want to write that program in Python.

</comment></comment></comment></comment><comment><USER24> More good news about 3.3.1 "must write in C, Objective-C or C++" clause: it's made even more obvious here that Apple only cares about commercial middleware UI-driven applications. Those of us with custom toolkits and compilers (and games developers) can probably relax. Though, I wish they would still change the wording. I dislike having to wait for my friend's cat to click the "I Agree" button, since I cannot actually agree to the terms as worded and not break them.

<comment><USER25> "Those of us with custom toolkits and compilers (and games developers) can probably relax."

Which part of the submitted article supports this? (genuine question not snark). I see a lot of flash bashing but nothing indicating you don't have to " write in C, Objective-C or C++"

<comment><USER26> Not the parent but the article says: "The most important reason... We cannot be at the mercy of a third party deciding if and when they will make our enhancements available to our developers. becomes even worse if the third party is supplying a cross platform development tool. The third party may not adopt enhancements from one platform unless they are available on all of their supported platforms. Hence developers only have access to the lowest common denominator set of features." Suggesting that the primary reason for the clause is that it will prevent third party apps effectively blocking enhancements made the the development environment; if you are using your own tools this isn't an issue. Not sure I agree that this means apple will be happy with developers using tools outside Objective C, but it certainly could suggest it.

<comment><USER27> The article is about Flash though. They clarified about Flash specifically, but reading other things into this seems foolhardy.

</comment></comment></comment></comment><comment><USER28> There is an even more expressive quote for Adobe to peruse: "Perhaps Adobe should focus more on creating great HTML5 tools for the future, and less on criticizing Apple for leaving the past behind."

<comment><USER29> Apparently CS5's Flash development suite can export to HTML5's including canvas support: <http://www.9to5mac.com/Flash-html5-canvas-35409730>

So that's one _less_ reason to support Flash itself on an emerging platform (iPhone is pretty mature, but it is still very young compared to desktop OSs - see the bounty of new features and UI changes coming to iPhone OS4).

<comment><USER30> The sad thing: CS5 Flash could also export to native iPhone apps. A native exported app would run faster, consume less power, and potentially have better integration with the underlying platform, all with exactly the same interface as an HTML5 web app... In other words, a native app exported from Flash would be better than an exported HTML5 web app in all the same ways Steve describes HTML5 video as being better than Flash video.

<comment><USER23> Actually, the native-exported apps are mentioned by Jobs in point 6. Of note: these apps were slower than native apps, consumed far more power than native apps, used more memory than native apps, and had little to no integration with the underlying platform, other than running in the first place.

Jobs' point talks about this; the issue is that if Flash CS5 supported what the iPhone can do today, who's to say when it will support what iPhone OS 4 can do tomorrow? Will they update Flash on Apple's schedule, or their own? Or at all?

For one example, look at GameCenter, Apple's new XBox Live-type service. Would Flash support it? Would Adobe go to the trouble of adding full support for GameCenter to their Flash runtime, so that games written in Flash could make use of that feature?

That wouldn't make any sense, because then people would have to write a different Flash app for the iPhone than for Android; either developers use GameCenter on iPhone and nothing on Android, or GameCenter on iPhone and their own solution on Android.

My suspicion is that Adobe wouldn't implement it (because it's a lot of work to just support one platform) or wouldn't implement it well (because they just don't really care), and that if it were available developers wouldn't use it (because it would only work on one platform anyway). This leads to a worsening of the overall experience, as the flood of quickly and cheaply ported Flash apps into the App Store dilutes the value that's there.

Perhaps Adobe would add GameCenter support, but that might be a new feature for CS6, which might come out (for example) August 2011, after Apple's released iPhone OS 5, with more new features Adobe hasn't had time to implement.

Developers using Flash would have a substandard environment, and would produce substandard apps, assuming they even cared at all about doing things right. That's what Apple's trying to prevent.

[Edit: typo, point 6, not point 5]

<comment><USER30> I don't see Jobs addressing the performance of CS5-exported apps in point 5 ("Fifth, there's Touch.") or elsewhere. The only place he says anything that could refer to Flash native apps is point 6, in which he argues against cross- platform development systems.

I think this is a red herring, though. Apple doesn't reject apps for _not_ taking full advantage of the system. People can and will make Objective C apps that don't use GameCenter (or iAds, or the accelerometer/camera). If Apple was most concerned about GameCenter adoption, why not leave out the 3.3.1 change and instead mandate that all games must use GameCenter? That would guarantee Adobe would include it in Flash and then nobody -- not even the native developers -- could produce a "substandard" app.

But even if Adobe made a version of Flash that could target every aspect of the iPhone platform perfectly (maybe by open-sourcing the compiler and allowing Objective C extensions), Apple would find a way to reject it. It's not just a matter of making it easy to port things _to_ the iPhone... it's also a matter of making it hard to port _away_ from the iPhone. Apple currently has the majority platform, and they want to make the choice between platforms expensive, so that developers choose the iPhone first and -- as much as possible -- exclusively.

<comment><USER23> You're right I meant point 6 but typo'ed. Thanks for pointing that out, I've fixed it now.

</comment></comment></comment></comment></comment></comment><comment><USER31> All his reasons are fairly obvious for the technical user and have been discussed in the blogosphere, but I think hearing it from the horse's mouth and at a very high level will benefit non technical users.

<comment><USER32> I think you overestimate the degree to which non-technical users await, with bated breath, a pronouncement about programming languages from high officials at Apple.

I love non-technical users. I was trying to explain to one of them yesterday that they can still use my website even after their school wipes their hard disk, and separately, even though the email address (login) is their home email address and not their school email address. She was quite convinced that I didn't understand the situation, because she was going to lose "all of her memory except the Hotmail at Google", like the tech guy told her.

<comment><USER33> Patrick, you should totally write a book of quotes from your encounters with users. It will be really insightful and such a good laugh.

<comment><USER32> Tech folks are cynical enough without my help.

Here's all the insight I can muster: non-technical people do not have an accurate mental model of how the computer works. They have a semi-accurate mental model of the steps they take to do routine things on the computer: I click this thing, then I type in this thing, then I click this thing, then the magic happens. Deviations from that routine will almost certainly cause task failure.

Example: you know how Macs have the menu bar at the top of the screen rather than at the top of the window? I have at least one customer whose mental model is that the screen ends where stuff stops getting painted to it, and then that grey gunk above it is scary computer stuff. It took a day to talk her through finding the Help menu -- "It says Help, at the top right of your screen" because she was looking _under_ the grey gunk bar and literally did not notice it until I returned the screenshot she had taken with a big red arrow on it.

<comment><USER34> What I always say to non-technical people:

All the programs and data in your computer is in files and folders, even windows is just a bunch of files. You understand this and everything else is far easier to understand.

<comment><USER35> Well then, the iPad must be impenetrably difficult.

<comment><USER36> The iPad reduces everything to what the users currently understand: the sequence of steps they take.

</comment></comment></comment></comment></comment></comment></comment><comment><USER37> "We also know first hand that Flash is the number one reason Macs crash."

I can attest to the veracity of this statement. My MBP's processor spikes whenever I get on YouTube or any other Flash-based site. I've had a couple of major crashes on both Firefox and Chrome while using Flash. I've also heard other users express similar views with these and other browsers on Ubuntu.

<comment><USER38> The only kernel panics I've had on my Macs in the past year have happened while loading or watching Flash videos in Safari. Of course this indicates that both Adobe and Apple have critical bugs to fix, since there's no way Flash should be able to take out the OS no matter how buggy it is.

</comment></comment><comment><USER39> The most brilliant part of Apple's marketing here is leveraging infighting and unintended consequences in the free software community. They don't care about open standards - that they would is, on the face of it, absurd. What they do know is that they will evoke much support for championing JS/HTML/CSS as an open plaform, and that it poses no actual threat to their App Store control. This is because of two reasons:

First that there is so much infighting between Mozilla, Microsoft, and Google on the PC browser side, that it will _never_ be possible to deliver video in one way that is accessible to all users, and Flash will remain required on PCs. (Ironically, Mozilla is Adobe's best friend here, as lack of H.264 support for HTML5 in Firefox for the indefinite future - even if your hardware supports it! - ensures that we will never be able to encode once and run on any PC - unless we use Flash!) So HTML5 will never never be a real final solution, because of the PC environment, which makes it safe for Apple to support and champion.

The second reason why HTML is no threat to Apple is that it just is too hard to write real applications in JS and current (or forseeable) browser environments. I get flamed for this a lot, but I think most of the people who flame me have never tried to build and maintain large cross-browser compatible codebases in JS involving a changing team of developers over a long time. People who disagree here always point to nebulous future hopes or technolgies that don't work very well yet, and I think underestimate the difficultly and time this will take, let alone for adoption. And they also, in my opinion, underestimate the problems inherent in Javascript, _the language itself_ , independent of the well known pathologies with browser DOMs.

And, the reason why this marketing strategy is so brilliant is precisely because posts like this one will be viewed as conspiracy theory! This is because people have so many emotional ties to their hopes and their own preferred ways of doing things.

<comment><USER40> > They don't care about open standards - that they would is, on the face of > it, absurd.

They really do care about open standards. There is no reason why WebKit and several other projects have to be run in the open, after they stopped releasing several parts of Darwin, but they are.

At worst, this is because there is more than one person at Apple, and the people who want things to be proprietary don't care about this and have left it to the people who like open standards to deal with.

<comment><USER41> Webkit _has_ to be run in the open; it's originally based on KHTML and inherits its LGPL.

<comment><USER23> WebCore and JavaScriptCore are based off KHTML and KJS, but WebKit (which unites the two into a usable API) is Apple code and doesn't have to be open source (it was closed source until 2005).

</comment></comment></comment></comment><comment><USER42> I wonder why Jobs felt he had to explain this situation, which (in my opinion) was fairly clear to anyone involved in technology. Perhaps the criticism was getting to him?

Also, I found this to be a brilliant snipe:

> If developers need to rewrite their Flash websites, why not use modern > technologies like HTML5, CSS and JavaScript?

<comment><USER43> It's called control over the experience something that really shouldn't be a surprise for Jobs.

There are literally millions of experiences out there that can't be done with HTML5, CSS and JavaScript. if you want proof, go to theFWA.com and have a look around.

For every bad flash solution out there, there are some quite fantastic ones.

Flash gives you control of the experience in ways that by any metrics outcompete HTML5.

This might not mean something for most people here at HN, but for quite a lot of people (the same ones that Jobs is catering for with his iPad) it's given them many great experiences. Experiences that are not going to be matched even by the best HTML5 developers out there for quite some time to come.

<comment><USER44> _There are literally millions of experiences out there that can't be done with HTML5, CSS and JavaScript. if you want proof, go to theFWA.com and have a look around._

I don't disagree with your general premise about flash offering more robust design control, and it's possible I didn't look around enough on the site, but I didn't see anything on thefwa.com that you couldn't handle with a HTML5, CSS, and JS (heck, I didn't even see much that you couldn't do without HTML5). Was there anything specific about that site you were thinking requires flash?

EDIT: Ah... I think I get your point, I assume you weren't referring to thefwa.com itself, but the sites linked from there.

<comment><USER43> Yes the sites that it is referring to is what I am talking about. You will be hard pressed to do anything like most of them in HTML5.

Or what about <http://www.audiotool.com/>

</comment></comment></comment></comment><comment><USER45> It continues to amaze me that Jobs, as CEO of the 2nd largest company by market cap, is more technical than many of the managers I have had.

<comment><USER46> Conclusion: being a great CEO in a tech company requires to have a solid tech background. Eric Schmidt wrote flex (yacc friend), Adobe founders were kick ass phds, Bill Gates comes to mind too.

<comment><USER47> Eric Schmidt co-wrote lex, not flex.

</comment></comment></comment><comment><USER48> >I wanted to jot down some of our thoughts

I'm guessing a company that controls information as obsessively as Apple doesn't just "jot down" its official response to a major, ongoing controversy.

>We know from painful experience that letting a third party layer of software come between the platform and the developer ultimately results in sub-standard apps and hinders the enhancement and progress of the platform.

It sounds like Apple doesn't trust the market. If apps compiled from a Flash development framework target the lowest common denominator and don't take advantage of iP*d innovations, they will lose to apps that do.

<comment><USER3> "they will lose to apps that do"

That is not a guaranteed outcome.

<comment><USER48> There are no guarantees in life: neither through shrewd guesswork nor the illusion of control.

</comment></comment></comment><comment><USER49> It's interesting to see Steve Jobs on the FUD side of things. On the upside, at least Apple has now officially addressed the conflict. Kudos for that.

<comment><USER50> Which arguments are FUD?

<comment><USER51> * Flash websites will have to be rewritten because it relies on 'rollovers', which is not part of Apple's 'revolutionary' touch interface: overblown for two reasons - a) few stuff will have to be rewritten (many videos show desktop Flash content working on mobile phones without a problem); and b) this is not a problem with Flash, as any JS/HTML-based interface that relies on rollovers has the same issues.

* Flash is 'closed and proprietary': Flash is as 'closed and proprietary' as many of the technologies he's trying to portray as open, if not less. H264 is not open. Objective+C++ is not open. Flash (SWF) has a fully published spec and anyone can write tools to create, or play, SWF content, without royalties, or without having to respond to any entity.

* Adobe only wants cross-platform apps, not good apps; generic subjective bullshit.

* Comparing video decompression versus hardware decompression battery gains and claiming that's an advantage over Flash: bullshit, since Flash uses video decompression in most cases.

* Saying Adobe postponed the release dates of Flash 10.1 for smartphones: bullshit. He's repeating a story that has already been corrected on a number of places (that Flash's release was pushed to 2nd half of 2010) as fact. That he's ignoring the fact that the story was misinterpreted by one source, and simply repeating the wrong news, is staggering. FP is still bound for a release in the 1st half of 2010.

* Saying "Adobe has recently added support for h264 playback": gee, I guess 2.5 years is "recently"? h264 support was added with FP 9.0.115, released in December 2007.

There's a lot more, but it tends to get tiring to constantly dispel the most obvious FUD written for the general public and full of misinformation. Mactards will believe whatever they want to believe, so hey... I'll just let the platform speak for itself. In 5 years, let's see how well Apple narrow mindedness business decisions work out for them.

<comment><USER52> * "Objective+C++ is not open." Yeah? <http://gcc.gnu.org/>

* "Adobe only wants cross-platform apps, not good apps; generic subjective bullshit." Alright, so point to a single Adobe Air app, for example, that looks & behaves natively.

* "Comparing video decompression versus hardware decompression battery gains and claiming that's an advantage over Flash: bullshit, since Flash uses video decompression in most cases." Did you read the article? "the video on almost all Flash websites currently requires an older generation decoder that is not implemented in mobile chips and must be run in software" But hey, easy to prove wrong. Point to one mobile phone with Flash (not flash lite) support that has decent battery life. ... Oh, wait... Well, one mobile phone that has Flash support period? No?

<comment><USER53> Whether Objective-C is open is a weird discussion.

The Objective-C compiler is fully GPL'd, so that's definitely open.

Objective-C, though, depends on a runtime, and Apple's runtime is proprietary. While the GNU project has their Objective-C runtime, it performs markedly worse, and misses a lot of features that are available in Apple's version, including blocks, GCD-style multithreading, garbage collection, fast iterators, and more.

<comment><USER54> Mono implements a good bit of .NET, but not all of it. That doesn't make it any less of an open platform.

<comment><USER55> Really? I consider .net a closed platform, as it is controlled by a single vendor, there is no patent guarantee (as Miguel has mentioned) and the alternative implementations (like GNash does with Flash) always lag behind.

(I happen to like .net, by the way, I just think it's closed.)

<comment><USER54> .NET is a closed platform — but Mono, which does implement parts of .NET in addition to their own changes, is an open platform. All of Mono's design and implementation is transparent.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER56> Regardless of how you feel about Apple or the Flash situation, you have to appreciate a CEO that can write and explain a company's motivations clearly. Would that we had more of that kind of frankness and less corporate-speak gobbledygook.

</comment><comment><USER57> With regards to video, if the lack of Flash support on Apple devices means faster uptake of the HTML5 video tag, then that's no bad thing.

</comment><comment><USER58> They seem to be arguing both sides. First we should have open standards. This is great because apps work cross platform. But then he goes on to say that cross platform libraries are bad because they stifle apple innovation. This is very reminiscent of MS's reasons for not having standard compliant software in Office, IE etc. You can't have it both ways. Proprietary innovation may be faster short term, but in the long term it only benefits Apple. History has shown that once a corp gets the lock in advantage, they stop innovating and slow the entire process down.

</comment><comment><USER59> Sounds pretty reasonable, but common, if they needed to prohibit cross- compilers, did they really needed to do that just RIGHT BEFORE CS5 was going to ship? Any developer putting that much resources into something would be pissed. Adobe didn't make it secret, that they were devoloping an iPhone compiler, so Apple could've just told them right away it's a no-go.

<comment><USER60> And how do you know that Apple didn't tell Adobe well in advance? Adobe pushing to get onto the iPhone platform is every bit as much of a business decision as Apple trying to block them. Adobe may very well have been informed but decided that Jobs was just bluffing (not an unreasonable conclusion, there are very few CEOs with enough arrogance to do what Jobs has done on this particular issue).

</comment></comment><comment><USER61> I turn a steely eye to their marginalization of KHTML.

Otherwise, I was with it until the justification for the new clause. That justification just doesn't hold up. Developers are not going to sit around and wait for Adobe to implement a feature they need; they will do as they have done now, and implement it themselves as necessary. The justification is very lame imo.

</comment><comment><USER62> Sachin Agarwal of Posterous explains reason#6 much better with a good example. Link here [http://sachin.posterous.com/ie6-caused-the-web-to-mature- slo...](http://sachin.posterous.com/ie6-caused-the-web-to-mature-slower-than- it-w)

<comment><USER63> I'm a little tired of the "IE6 is holding back the web" meme. Lots of hand- waving, no examples.

<comment><USER64> As a developer who has many times decided not to implement a killer feature that works in a modern browser because I will have to come up with some graceful degradation or alternative implementation in IE6, I can say that it isn't hand waving.

<comment><USER63> I don't mean to be rude, but could you expound upon this a bit? What was the feature, and why was supporting IE6 critical to moving forward with it?

I'm not in any way arguing that IE6 isn't a PITA. I suppose its the "holding back" part of it that I don't understand.

</comment></comment></comment></comment><comment><USER65>
      I love this paragraph, check their hypocrisy, switch Adobe/Apple:

_[Apple]'s products are 100% proprietary. They are only available from [Apple], and [Apple] has sole authority as to their future enhancement, pricing, etc. While [Apple]'s products are widely available, this does not mean they are open, since they are controlled entirely by [Apple] and available only from [Apple]. By almost any definition, [Apple] is a closed system._

<comment><USER23> Apple doesn't want to include Flash because Apple can't update Flash. Apple can't fix bugs in Flash, add new features to Flash, and so on. Apple has to rely on Adobe to fix these problems, and historically, on the Mac platform, Adobe has done a piss-poor job of it.

I'm not aware of any situation in which Apple has prevented Adobe from going about their day-to-day business with e.g. Photoshop or Illustrator, or has hindered their ability to fix bugs or add features to those products.

</comment></comment><comment><USER66> There's a distinct irony that they're talking about openness, while at the same time explaining why they're preventing their own users from running software on their purchased devices.

If their arguments are correct, let Adobe port Flash and let users decide rather than telling them what they can and can't do with their own devices.

<comment><USER67> The article/memo says that Apple are waiting for Adobe to present a ported version of flash that works. It says that they promised early 09, late 09, early 2010, late this year...

in other words: it's vaporware, still.

<comment><USER23> I've met a lot of people who bought an Android phone because the iPhone 'doesn't support Flash', on the advice of friends or bloggers who complain endlessly about the issue, only to find that Android doesn't support Flash either.

When Flash is finally released and it turns out not to work on their pre-Droid devices, I wonder if they'll switch to the iPhone. I mean, either way, they won't have Flash to view MLB.com, but at least on the iPhone there are fantastic native apps to do things like that.

</comment></comment></comment><comment><USER68> The web without Flash would be a better place, but the fact is that there isn't any viable open replacement. Yes, HTML5 can replace Flash for video. That's great and all, but it's probably the least interesting thing that Flash does.

Want to use Google Analytics? Sorry. Need Flash.

Want to see StreetView? Need Flash.

Hulu? Need Flash.

Aviary? Need Flash.

Games? Need Flash.

Apple's answer to everything but video is to buy it from the App Store. Really? Buying shit from the App Store is not the Internet I signed up for.

<comment><USER23> Google analytics: <http://analyticsapp.com/>

Street view: [http://googlemobile.blogspot.com/2008/11/google-maps-for- iph...](http://googlemobile.blogspot.com/2008/11/google-maps-for-iphone-adds- street-view.html) (since 2008)

Hulu: coming as a native app (<http://gizmodo.com/5506892/hulu-app-coming-to- ipad>)

Aviary: neat app; there are image editors on the iPhone, but I'm not familiar enough with Aviary to find something comparable. Maybe there isn't anything.

Games: There are tons of games on the iPhone and iPad that don't need Flash. Command and Conquer is one of them, and Final Fantasy I and II are some of my favourites. There are also tons of independent games, like Implode, Tiki Totems, and MotionX Poker, as well as pseudo-indie games like Plants vs. Zombies and Peggle.

So, are you really so averse to paying someone for their time? Nothing comes for nothing, and if you're so broke that you can't shell out a few bucks for an app that makes your life easier, you probably can't afford an iPhone either.

<comment><USER69> That las paragraph strikes me as inconsiderate and a lot of guess-work. There's nothing wrong in wanting a website to work in a device who markets itself as something to browse "the full web".

As he said: "Buying shit from the App Store is not the Internet I signed up for.", but that's Apple's vision for internet. One they control, pre-approve and sell in their market.

</comment></comment></comment><comment><USER70> I've jumped to the conclusions on the article and this puzzled me:

"The avalanche of media outlets offering their content for Apple's mobile devices demonstrates that Flash is no longer necessary to watch video or consume any kind of web content."

Because media outlets are forced to make their videos available to the iPhone without being able to use Flash, this means that Flash is no longer needed?

<comment><USER71> Yes; for video-only uses, Flash is no longer needed. No doubt the avalanche is because a popular smartphone/tablet does not allow Flash, but Steve's point is that Flash is no longer needed because similar functionality can be performed in the more open HTML5.

<comment><USER72> Wrong; Flash is still needed for DRM video (Hulu, Netflix, etc.)

<comment><USER73> Wrong, unless you mean on computers; Netflix released an iPad app that streams video on day 1, and Hulu is rumored to have one in the works as well.

<comment><USER72> Why the down votes? Of course a native iPhone app can stream DRM video, what does this have to do w/ Flash or HTML5? Flash is still needed for DRM video on the web. Hulu can create a native Windows, iPhone, Mac, etc. app but how does that cure streaming video in the browser?

Quote from Hulu:

"We're keeping a close watch on video support in HTML5. While as developers we are always excited about cool new technology, we always analyze it from the perspective of the needs of our customers: our end users, advertisers, and content partners. To serve these customers well, we'd love to see further support in HTML5 for features including the following:

\- Quality of service monitoring (e.g. detecting playback glitches)

\- Advertisement playback and reporting

\- Secure content delivery"

</comment></comment></comment></comment></comment><comment><USER74> I expect to have Flash available for my for droid soon, and for many of the reasons presented in this well articulated press release, i will not install it.

The thought of having to wait till a useless flash Ad render on my mobile browser, without any ability to block them is reason enough not to have it on my phone.

Unless Flash framework is completely revamped it will vanish to a place of old proprietary technologies, I am saddened by this, because flash offered a venue for application development to many creative people who are not programmers, and they made amazing stuff, but standards are important, and i suppose authoring tools for HTML5 will mature enough for non programmers in due time.

With all that said, The lock on the stream of revenue solely through the app store is to me, very hard to accept, developers should pressure apple to allow other venues, in the long run a single store is just not conducive to anything "open"

<comment><USER72> If Flash never existed and HTML5 was king, what would flashing, animated, noisy advertisements be created in? Content is not the fault of the platform.

<comment><USER74> What if, is not the question here. What is, on other hand, is more relevant, and at present the most obnoxious experience of web advertising is via flash.

</comment></comment></comment><comment><USER75> "If Jobs and Apple are actually committed to creativity, freedom, and individuality, they should prove it by eliminating the restrictions that make creativity and freedom illegal."

<http://www.fsf.org/news/ibad_launch>

</comment><comment><USER76> We techies are guilty of always wanting everything. I see projects a lot of time, that won't move forward because the developers will not have the balls to stand up and draw the line between things the software will to, and the software will not do. It's just more comfortable to avoid confrontation. When I read this, I felt that Steve really knows what he wants, and in order to get it, he is willing to eliminate things that are less important (even if that means he has to hurt some of our feelings). We all can disagree with some of the points made, but in the end the iPhone is unique (and successful), because it has a clear definition of what it's not.

<comment><USER77> So this is all about Steve trying earnestly and selflessly to create the best platform possible, and _not_ about trying to eliminate competition to his dominant platform by disallowing portable application environments?

I swear, I used to think the reality distortion field was a dumb metaphor...

<comment><USER76> You might be right about my vision being distorted, and I will think about that, but just so you understand me correctly: I did not say anything about selflessness. I have no doubt, that every move Apple makes is a business move; still, I don't think they only want to make money. They want to make money and deliver a great product. And the points Steve mentioned seemed reasonable to me...

</comment></comment></comment><comment><USER78> The underlying situation here is that the runtime should be an open standard. Adobe's insistence that everyone should be dependent on them is absurd seeing as they have little market power to make such demands.

There is a huge need for a solid authoring tool for the canvas and Adobe is the right company to build such a tool.

Adobe has been whining for far too long about its inability to lock people into a proprietary runtime with poor performance.

Hardware and OS makers should have the ability to implement the runtime in ways that improve the experience. Apple is correct in insisting on such. This won't just be good for Apple, it'll be good for the entire industry.

<comment><USER72> <http://www.adobe.com/devnet/swf/>

I don't use Flash because Adobe forced me or insisted that I use it. Flash was the only solution to create highly interactive applications on the web for a long time and gained huge popularity because of this. The Flash plug-in was a failure on iPhone so they went out of their way to use the Flash environment to create native iPhone apps (i.e., no longer Flash).

</comment></comment><comment><USER79> He had me until #6 ("the most important reason"). Really, he could have just said "battery life" and I would have said "okay, that's a good point." But going on and on about cross-platform? Let the app store sort that out. I can guarantee you that the best flash is better than the worst native app, so the argument doesn't hold much water.

</comment><comment><USER80> This kind of thing should be very actively encouraged.

Clearly there is spin in the post - but it is at least reasoned and tries to present a cohesive argument/point of view. More of that from _every_ company please.

I think that even if you don't fully support or agree with the arguments (some of them have been debunked or much discussed after all) I think we can support this idea of company CEO's/management writing about their thought process in complicated or controversial decisions.

EDIT: Uh? I made the same point many others have.. is there any reason I've got the wrong idea?

</comment><comment><USER81> And here we can find the real locus of the dispute:

 _"...although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5."_

If Adobe didn't drag their feet for so long on the CS products, I think the other reasons wouldn't have mattered as much.

<comment><USER82> Reminds me, how long it took Apple to move Finder and iTunes to Cocoa? (Answers for those that don't keep score: 10.6 and not yet).

You have to remember, that Apple tried multiple rewrites of MacOS in 90' and OSX was yet another 'this time it will work out, I promise' project. If you were Adobe, would you bank your company on yet another promise? I know I wouldn't.

<comment><USER40> What promise do you mean? Cocoa has existed for 10 years now. It was never going to go away at any point.

Finder was kept in Carbon as a demonstration that large codebases ported from OS 9 would still be supported (it would take quite some time to rewrite them, after all).

iTunes's lack of a rewrite is probably due to having to run on Windows without having to immediately do the extra work needed to port Safari, but at this point it doesn't really have an excuse. At least it supports background scrolling, so it's still beating Word...

<comment><USER82> Apple had several failed attempts to establish new APIs/OSes in 90's (OpenDoc, Taligent). Why would anyone rational believe, that another project (OSX) is going to be success?

So during introduction of OSX, Apple had to include Carbon there, if they wanted to have ISV support for their new OS. Nobody was going to put significant effort to port entire codebase for new, unproved OS+frameworks+language put out by someone who has history of failures.

And do not forget, that Adobe CS is much larger project than Finder, iTunes and Quicktime together.

</comment></comment></comment></comment><comment><USER83> I love how he didn't sugarcoat Apple's core motivations:

 _Everyone wins – we sell more devices because we have the best apps, developers reach a wider and wider audience and customer base, and users are continually delighted by the best and broadest selection of apps on any platform._

Yeah there's a business interest. But it's also good for developers, and it's also good for end-users. And they're all interconnected.

Mere mortals may have been tempted to eschew the business aspect altogether, but good ol' Steve isn't afraid to tell it like it is...

<comment><USER74> I would dare say that other ways to get apps on the phone without the app store is even better for developers.

</comment></comment><comment><USER84> Until there is an authoring tool as strong as Flash for Html + Javascript + css (with regard to animation and design, and the ability to integrate these animations and designs with code) - then flash is still the best game in town for games, animation, and more...

I'd like to hear everyone's thoughts on the answer to animation. Sprites are heavy, but are the only other option I can see. Even still, there is no authoring tool better than flash for animation on casual games or the web.

</comment><comment><USER85> _Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5_

If I remember correctly, iTunes isn't Cocoa based yet either.

</comment><comment><USER86> I don't care if iAnything supports flash or not. They can ignore Flash, Silverlight, any other third party component other than the pure HTML. Steve might be right and has all the moral rights not to support them.

But banning anything originally written in Flash, MonoTouch or any other rapid or not rapid external "to Object-C compiler platform" should be out of reach of Mr. Jobs' jurisdiction. As long as it runs on the platform, it's none of his business.

<comment><USER54> Actually, he owns the platform (the App Store) and therefore it is very much his business. If you have beef with his policy for his platform, then you can jailbreak — otherwise, feel free to dislike his policies all you want, but you cannot disregard the fact that he's well within his right to enforce them.

Honestly, it's like telling a convenience store owner that he has no business refusing to sell M&M's in his establishment and that it furthermore makes him a big, old, bad guy(TM).

<comment><USER86> Anyone can supply him M&M's as long as they are in predefined colors and size, he refuses some of them by their taste. He is selling all the rest without any concern over the quality of M&M's. He was an ignorant middle-man for all other facts except taste.

Now, he starts banning some specific M&M's based on the production methods of them. No M&M consumer can tell the difference, all taste more or less the same way. Production does neither determine quality nor nutrition facts of M&M's.

<comment><USER23> Except that the M&Ms that were banned are slower, use more power, and crash more often than M&Ms written in Objective-C using the proper APIs.

<comment><USER86> I'd love to see some research on, say, MonoTouch generating crappy code compared to average developer's Objective-C.

</comment></comment></comment></comment></comment><comment><USER87> If 3.3.1 was _just_ about Flash, I'd agree with Steve. But I think that clause solves a lot more than just Flash. For instance, iPhone apps seem to be horribly unreliable in my experience. And I think part of this has to do with Objective-C on the iPhone's lack of garbage collection. I think that there's a valid point that a system like MonoTouch (which supports garbage collection) would improve the quality of iPhone apps.

<comment><USER23> Managing memory in Objective C is pretty simple once you learn the rules - namely, if you retain it, release it. People who write bad code won't stop writing bad code just because there's GC available.

All that adding a GC would do is move the burden of releasing memory to the GC thread; what would result is that in low-memory conditions (or when the GC runs naturally), you'd have a sudden performance hit as the GC churns through the objects in memory looking for free-able objects. On the desktop, this might not be as much of a performance hit, but on a mobile platform I can see this being an issue.

Likewise, the GC can only do so much. If a developer creates an array and starts stuffing objects into it, but never releases/unreferences the array, those objects will likewise never be deallocated. The onus is still on the developer to write proper code, but now they've voluntarily given up control of memory to a separate process that may not understand the code as well as they do.

Besides all of that, I haven't found iPhone apps to be unreliable at all. The apps I use are generally polished and work fantastically, and crashes are extremely rare (and most of those are due to OOM conditions directly attributed to WebViews).

<comment><USER87> I'd really rather not start this debate. Suffice it to say that there are effects that 3.3.1 has _other_ than just blocking Flash.

</comment></comment></comment><comment><USER88> Very interesting. Nothing that would make me want to buy into his vision, but then I've never been drawn to Apple's platform. It's nice to see his reasoning and product philosophy laid out so clearly. I think Apple could have saved themselves a lot of grief with mobile developers if this had come out earlier; but better late than never.

I hope that if Adobe responds, they'll do so in a similarly direct and civil manner.

</comment><comment><USER51> The fact that the repeats the rollover crap makes it sound as if they're really trying hard on rationalizing.

Just say it's a business decision, Apple. Stop pretending you have the consumer in mind.

<comment><USER50> What's wrong about this argument? Would all Flash content that uses rollover just work on mobile touch devices or would some kind of modification be necessary? I'm really curious about that.

<comment><USER82> There is Flash content, that uses onmouseover.

There is also HTML+JS content, that uses onmouseover.

So what was the argument again? In both, Flash and HTML+JS, you can use onmouseover. You don't have to, it is option. So what makes the difference?

<comment><USER50> I think you misread Jobs. He thinks of this as a transition of the web from desktop to mobile. He thinks HTML+JS is the future and the gains of supporting "legacy" stuff like Flash are diminutive because it wouldn't "just run".

That's the argument.

</comment></comment></comment></comment><comment><USER89> All these facts also apply for desktop/latop PC's.

Remove Flash and notice you wont miss it. More and more websites are using HTML there day's. Removing Flash also improves browser speed and stability (just as removing Adobe Reader does).

I did a lot of Flex developing, but I think it's time to move on.

<comment><USER90> I have an extension that blocks flash from any page I visit. I can turn it on by clicking the in the little box where the flash content was supposed to appear.

I'll put it this way, my finger sometimes gets so tired clicking to turn the flash content back on that I sometimes just disable the extension.

</comment></comment><comment><USER91> "To achieve long battery life when playing video, mobile devices must decode the video in hardware; decoding it in software uses too much power."

Though this is not exactly news, this sounds like a confirmation of the reason Apple doesn't support Theora for html5 videos...

</comment><comment><USER92> If Jobs had provided this type of specific detail before releasing 3.3.1, we could have saved ourselves lots of blogspam.

<comment><USER27> In what sense? This only addressed 3.3.1 indirectly. It made it clear that Flash was a target, but said absolutely nothing about other targets. Assuming everyone is in the clear from this would be a mistake, I think.

<comment><USER92> Right, but I don't think you would have the same reactive 'developer' lock-in if 3.3.1 was contextualized toward cross-platform right from the beginning.

For example, EA who uses Lua for scripting wouldn't be worried as they likely were due to this two weeks late press release.

<comment><USER27> Agreed, but the same can't be said for all concerned parties. The Unity3d guys, for example, allow cross-platform development, and many quality games are already using it. I don't think development addresses their issue at all (in fact, it might have made it worse).

</comment></comment></comment></comment><comment><USER93> For me there is one single data point that shines brightly through all this noise: we are well into 2010 and nobody has Flash running well on a mobile device. Not even the mobile companies that _want_ it.

<comment><USER47> That's because that's the misdirection. 3.3.1 is the clause that's important, but it's not about running Flash on mobile devices. It's about Apple being disintermediated and losing lock-in with their developers.

<comment><USER93> Are you saying that Apple vs. Flash started with 3.3.1?

<comment><USER47> Apple's policy of banning Flash doesn't _really_ bother me, but 3.3.1 _really, really, does_. Having Flash on the iPhone as a means of cross-developing apps is the most interesting way for Flash to be on the device, for me: it would mean a lot of creative and fun casual games would be more easily available for me to play.

Video, I think, is a red herring; it's easier for web sites to switch to a different, HTML5-compatible embedding scheme than it is to rewrite Flash games in Objective C.

</comment></comment></comment></comment><comment><USER94> Pot Calling Kettle Black?

I don't see steve jobs allowing us to submit HTML5 apps to the appstore? They must be written in his closed proprietary format with a goal of locking you in to using their tools (xcode). Just like adobe wants to lock you into their proprietary format (flash).

His arguments sound good though. And it would be great for adobe to add HTML5 as a target but i don't think the spec is quite ready. Does webkit on the iphone expose all the devices to implement say chatroulette?

Flash is a great tool to develop cross platform apps until the html5 spec can expose enough of the underlying os.

</comment><comment><USER95> I think the arguments are ones we've all heard before.

As a Flash developer myself, it only makes me second guess myself more. Not because it presents a new point of view, but that non-technical people will now harp in on the issue, and I'll have to once more explain why I'm developing on a 'dying' platform.

The thing that scares me though, is that if I want to move on in my programming career, should I be learning <i>another</i> proprietary platform to develop iPhone apps? Seems like Android is the alternative to that, but I just can't get rid of my iPhone.

</comment><comment><USER96> All Apple's stubbornness does is leave more doors open for Android et all to get more penetration. Each thing you refuse to do becomes a selling point for your competitors.

For example, Flash support upcoming for android. [http://www.edge- online.com/news/full-adobe-flash-support-for...](http://www.edge- online.com/news/full-adobe-flash-support-for-android-22)

It doesn't matter if you do not like flash Steve, it is used on a significant portion of the internet. Either you work with them and find a way to make it work, or someone else will.

<comment><USER97> Still vaporware... I'm just saying, it would be nice if Adobe can show a reference implementation of Flash on a mobile device, and prove that it actually works well at a decent framerate without sucking battery life. This would at least give Adobe some ammunition to use against Apple, and may make Apple rethink the "no Flash" rule.

<comment><USER90> There's a 10.1 beta for Android phones around.

</comment></comment></comment><comment><USER98> It's simple: Power To The User.

If there is a choice to be made it should be up to the user. If they want to use flash, let them, if not allow them to disable it.

If they want to watch tiny movies on a tiny screen for only five hours instead of 10 hours at a stretch, let them.

Realize that when you make hardware it will be used for purposes other than the ones you intend, that's the whole idea of the power of the computer, it is a _universal_ device.

To try to artificially limit what users can and can not do is a short term strategy, and a long term loss.

</comment><comment><USER99> Adobe needs a new CEO, they have done nothing since 2008 but bad products. I wrote them a letter asking them to implement hardware rendering/acceleration in 2007 when Silverlight came out and Director 3D was dying. Now HTML5 beats flash as it is equal almost and Unity 3D beats Director 3D. They have failed to innovate since Adobe bought it from Macromedia. I blame the guidance and focus on being the market leader rather than staying fresh.

</comment><comment><USER100> I am very glad to know that Apple assure us once again that they want a standards compliant flash-less web. This will definitely make the web a better place. As I've said before flash is only and option if you use Windows, Linux or Mac OS X if you use a *BSD based system or any alternative system you're pretty much fscked.

P.S. I am very tankful to Apple for taking this fight (whatever their reasons maybe).

</comment><comment><USER101> Still doesn't compute. It's in the responsibility of the developer to create quality software, no matter what tool he chooses. So far Apple hasn't denied apps that are low quality in general, or have they? So how does this make sense.

I know for certain there are bad native apps in the app store.

All of this has been discussed before, though. It's not news, even though it's straight from Steve Jobs.

</comment><comment><USER102> Clearly, none of you people commenting here are considering the flash gaming market. Yes, I can see how most video sites can ditch their Flash players once almost everyone has html5-capable browsers, and yes videos is the largest use- case for Flash right now, but games is the second largest, involves a lot more money, and cannot be easily replicated without Flash.

Also, the people making games in Flash are usually graphics designers, not programmers, and they will have a harder time jumping to new technologies, even if they reach parity. You would have to have an environment that is as rich as Adobe CS and as capable when it comes to graphic and animation design, but for html5/javascript, before you will see a significant shift there.

Flash is much more entrenched than you think, and no matter how much Apple or Google wishes Flash didn't exist, they won't be able to dislodge it until there are good alternatives for all the major use-cases for Flash, not just video or animated websites.

<comment><USER103> Even if the people making games in flash are graphic designers doesn't mean they can't learn something new. After all is their job.

<comment><USER102> Of course they can, and of course they will, if a better technology and design environment appears, but that shift is going to be much slower than that of good web programmers.

</comment></comment></comment><comment><USER104> These reasons are true enough, but I still believe what has been clear to me ever since the argument started:

Apple won't allow Flash on iP* because it would defeat the purpose of App Store.

With Flash support, you could make responsive, native-looking online apps specifically for Apple devices without having to go through the approval process.

<comment><USER52> When has Flash ever been "native-looking" (never mind, say, _behaving_ exactly natively) on _any_ platform?

</comment></comment><comment><USER105> Does Javascript not use rollovers?

<comment><USER106> Does a hammer use stairs? You can do rollovers with Javascript - many sites do. Bit you don't have to.

<comment><USER107> That's the point, the same applies to Flash.

</comment></comment></comment><comment><USER108> This is all very good, but my faith in it is shaken somewhat by the blatant lie "There are more games and entertainment titles available for iPhone, iPod and iPad than for any other platform in the world."

I guess the PC doesn't count as a platform...

</comment><comment><USER109> Yeah, HTML5 is more open. But flash has advanced the web much faster than html and javascript have. We should not forget that HTML5 draft started in 2004. HTML4 was complete in 1995, and XHTML was complete in 2000.

Say what you will about flash, but I don't think going the pure html5 route is the solution. Flash and Silverlight and other plug-ins serve as great ways to test out new approaches to the web and add additional functionality to the browser that isn't there already.

I think HTML5 and javascript is the way to go, but sometimes you can't wait 5-10 years for innovation to be supported in ALL browsers with a consistent api.

</comment><comment><USER110> I think, somewhat ironically, that the final "most important" point #6, is by far his weakest. A platform is made stronger by having more tools to create for it. If a tool does not keep up with new platform features then it will suffer in the marketplace. There's nothing about having tool x, that prevents anyone from using tool y or Apple's own toolset.

I do however think that Apple is in the right to require the tools to compile to native code using native UI widgets etc, and not be a blackbox runtime. The goal of ensuring consistent user experience is valid and worthy.

</comment><comment><USER111> My personal favorite rebuttal is this one: <http://www.simon- cozens.org/content/those-darned-layers>

</comment><comment><USER112> I am aware of the fact that today a good development stack is worth gold, and many tool stacks are using some sort of virtualisation to allow for easy portability... I find it very refreshing to see Steve/Apple putting very strong arguments against wastefull portability layers... One interpretation of this all I think is: mobile needs native apps, because they are less "resource" hungry.

</comment><comment><USER113> _There goes my hero_

 _Watch him as he goes_

Seriously, how much does this letter need a soundtrack? Flash anyone? Music with the text scrolling. Different text effects...

</comment><comment><USER114> Unfortunately, Mr. Jobs the average person does not care about why you don't offer it. They only care and know that what they are used to getting can not be had on your platform, but can & will be on other platforms.

This fact and doubled that you remain exclusive to AT&T may turn your juggernaut around and repeat history.

From a happy and estatic iPhone owner/developer; best thing on market hands down!

</comment><comment><USER115> He just claimed Apple created WebKit, noted it's being used everywhere, and gave no nod whatsoever to the KDE team. Classy, Jobs, classy.

<comment><USER116> "For example, Apple began with a small open source project and created WebKit, a complete open-source HTML5 rendering engine that is the heart of the Safari web browser used in all our products."

He only failed to mention KHTML by name. He most certainly did not claim that they made WebKit on their own.

<comment><USER117> It is a very good example of putting spin on history. They don't lie, they just put the "right" emphasis. Depending on how much you know, you understand the text differently.

But failing to mention KHTML by name is an act, indeed.

Reminds me another masterpiece by Microsoft: "Java is a programming language proposed by the JavaSoft company", or something like that.

<comment><USER118> That's what I thought when I saw Webkit mentioned without KHTML. When you're standing on the shoulders of giants, it's only prudent to mention that.

</comment></comment></comment></comment><comment><USER119> "Almost every smartphone web browser other than Microsoft's uses WebKit."

Oh, so Presto (Opera) and Gecko (Mozilla) are chopped liver.

<comment><USER52> Symbian is WebKit, Blackberry OS 6 is WebKit, Android is WebKit, WebOS is WebKit. What other non-MS smartphone platforms are there?

</comment></comment><comment><USER120> Whatever anyone's thoughts on this debate I think it's excellent that we're actually having this debate in public. This is the way the industry should work: open debate amongst industry leaders out in the open. In contrast to the behind the scenes skulduggery that seems to be the norm in business these days.

</comment><comment><USER121> Strange that the response comes a day after the daily show refers to Apple (and Steve) as evil.

</comment><comment><USER122> I don't like Flash for all the stated reasons, but I like Apple's absolute control over what software I run on hardware that I've purchased even less.

If Adobe can convince people to run their software on their iPhones, then they should be able to.

</comment><comment><USER123> Wait. Isn't Final Cut Studio still written in Carbon? Talk about throwing stones in a glass house! What a strange statement to make given his obvious knowledge of the difficulty of porting such a large suite of applications.

</comment><comment><USER124> I have never seen any thread earning this many up-votes and comments on HN!!

<comment><USER118> Maybe the 'Google leaves China' thread, which scored about 1800 points.

<comment><USER124> I think we should have leaderboard for highest up-voted threads. PG?

</comment></comment></comment><comment><USER125> What a brilliant explanation! It summarizes all the main points that different bloggers have come up with against flash. And if the death of flash means a boost for HTML5 then I am all for it.

</comment><comment><USER126> Unfortunately for Apple, the average user doesn't care about any of this. The average user just want to go to a website and have it work. IJW technology: It Just Works.

</comment><comment><USER127> What's really surprising here is such a long post with Job's name on it, in place of the one- or two-word emails we're used to. Is Steve going to start blogging now?

</comment><comment><USER128> How is it that Apple can feel reasonable in criticizing flash for being closed and proprietary?

Did I miss the iPhone OS standards committee meetings or something?

</comment><comment><USER129> I think the timing on this post is perfect, re-directs attention from the gizmodo thing and prevents another john stewart from happening.

</comment><comment><USER130> Let's assume for the sake of argument that _all_ of Steve's points are a smokescreen for what ultimately boils down to "Apple is in business to make money for Apple and Apple's shareholders, not to appease peers, developers, or even customers beyond the extent that they continue to give us their money, and anyone who stands in the way of what Apple believes to be its clearest path to profits can get bent." Why is that not okay?

I feel as if there's this weird assumption that Apple must make other considerations, that as the dominant player (for now) they have some obligation to make room for everyone at the table, lest they become evil, unsuccessful, or both. Why? What evidence do you have that Apple's exclusive culture and persnickety habits will result in anything but more money for shareholders, more opportunity for developers to put software in more pockets, and more sophisticated but accessible products being made available to more users?

I wrote _far_ too much on the first pass, so I just excised a bunch, and here's the salient point: Apple didn't luck into this. They're not a clumsy giant who happened to end up with a market advantage despite themselves. They're in the position that they are because of the decisions they've made; they've deliberately created this reality for themselves. Apple doesn't wield authority over developers because tens of thousands of you decided to do Apple a solid and start writing iPhone OS Apps out of the goodness of your hearts. They managed, against really unfavorable odds and heavy competition from longstanding incumbents, to create what is arguably the best and indisputably the most successful device of its kind. Because they made decisions which resulted in that reality, should you choose to play by Apple's rules you have access to a large installed base of users—many of whom have indicated with their credit cards that they're willing to pay premium prices for premium products. I mean, how many normal humans do you know who would consider buying _ANY_ software for a cell phone before the iPhone? I have many friends and acquaintances who have either told me outright or given the impression that they don't understand why one should need to purchase any software for their _DESKTOPS_ beyond what comes bundled, yet each time I see them they have new paid apps installed on their iPhones. But, if you want access to them, you must play by Apple's rules. In the event that Apple adjusts 3.3.1 to state that developers must submit video evidence that they wore tricorn hats for the entire development process, if you want access to the users, you must play by Apple's rules.

You're free to determine that Apple's decisions of late are unsatisfactory to you, and that the potential business isn't worth the development time/unsavory feelings/brain cycles/whatever to play in Apple's game. But to imply that they have some obligation—moral or otherwise—to consider any interests but their own isn't just inaccurate, it's lunacy. Apple doing exactly whatever the hell they wanted is what created the marketplace to begin with.

An aside: I'm not super pleased that I have to post under this inane pseudonym, but I work for Apple Retail in the Family Room (One to One, Genius Bar, etc) and I'm prohibited from discussing Apple on the web. Yet another compromise I've made with Apple, but (for me) making decent money and having the opportunity to work with people I don't hate while I finish school is worth attempting to resist the temptation to be sucked into silly arguments on the internet...most of the time. In an attempt to preclude fanboy assumptions/accusations I will note one compromise I _haven't_ made: I use an Android phone because I've had horrible experiences with AT&T in the past, and I refuse to pay them one red cent, though I still hold out hope that on one of these hardware revisions the iPhone will be made available on other carrier(s).

<comment> loup-vaillant > But to imply that they have some obligation—moral or otherwise—to consider > any interests but their own isn't just inaccurate, it's lunacy.

You just say that it's perfectly normal for Apple to behave like a psychopath. Now, replace "they" (Apple) by "any for-profit company in the world". And watch the world burn.

</comment></comment><comment><USER131> Great explanation and reading, sent it to my teacher and we read it in my computer class.

</comment><comment><USER90> It's a fascinating combination of good points and utter rubbish, but mostly rubbish. The twisted hypocritical logic here is almost entirely devoid of the introspection I would expect from Jobs. More important, if that Jobs felt the need to release this kind of statement to defend this absolutely absurd position. Yet none of what he says makes the rational claims that Gruber has already made, i.e. Apple wants to limit the platform to exclusives, by preventing cross platform development environments, it makes it harder to not make exclusives for the dominant platform. It's a calculated move designed to keep people developing for the i* devices and ignore the Android devices. Instead we get the kinds of BS nonsense that we've seen people speculate on, but would indicate a kind of madness on the part of Apple.

For example: _Adobe's Flash products are 100% proprietary. They are only available from Adobe, and Adobe has sole authority as to their future enhancement, pricing, etc. While Adobe's Flash products are widely available, this does not mean they are open, since they are controlled entirely by Adobe and available only from Adobe. By almost any definition, Flash is a closed system._

This is fantastic news, direct from Steve Jobs himself, Apple is going to go completely open on their products! This means that I can go and buy a copy of iWorks from Oracle now, and get a Mac Clone from Dell and an HTC built iPhone! I wonder how long it'll be until OSX is available from Canonical? _so excited, so excited_

Other that this, the point is almost entirely incorrect. There are plenty of authoring and playback tools for flash not made by Adobe. It isn't exactly an "open standard", yes, but Adobe is not the sole source of flash stuff these days. Even a cursory search on google for flash creation tools brings back a bunch. Mr. Jobs, please follow this link <http://lmgtfy.com/?q=flash+authoring+tools>

Other points are better made, but some are still bad: 1) HTML5 is better 2) Webkit is neato 3) Apple never said they support the full web anyways 4) Most places have HTML5 video support nowadays, except for Hulu 5) Who needs flash for games anyway, i* devices have tons. 6) Flash = bad security 7) Flash = poor performance 8) Flash = eats batteries 9) Flash doesn't work great with touch 10) Third party content development tools suck! The people who use them suck! The crap that comes out of them sucks too! Anybody who think differently was born wrong! 11) Adobe should be making HTML5 authoring tools anyways.

What Apple should do is put Flash through the exact same approval process it puts other apps through. Make Adobe work for it, but don't just simply cut it off like a tantrum throwing child that can't share. If these are the problems with Flash, kick it back with comments and force Adobe to fix brokeness to get approval through the store. Adobe being open or not being open is a garbage point as I noted above. Apple doesn't require any of the apps in the app store to be open standards compliant. The mechanism for dealing with all of these problems is already there and it's simple -- the app store. There's no need to "work with Adobe", just reject it from the store the same way lots of apps are rejected after the screening process. Lots of apps eat batteries. Is that a new rejection criteria, "apps may not consume battery life."? If I want to run down my device in 5 hours instead of 10, that seems to be my problem.

1) HTML5 is still very very immature technology with almost no good toolchain support for authoring HTML apps. It's still a pile of languages glued together in a browser that sometimes makes something useful or interesting, but also really really processor intensive and slow. We all ooh and aah, everytime we see a canvas demo that eats up 100% CPU time on a quad core system displaying something that we all saw in 1996! By just this simple test, points 7-8 are almost completely invalid. Does flash perform worse than native apps and use more battery? Sure! So does playing an intensive game!

2) Webkit _is_ neato, but webkit is a different thing than Flash. It makes no sense to compare the two. It's like comparing webkit and iworks for the iPad. By this logic, Apple should also not sell iWorks for those devices but just point everybody to Google Docs.

3) That's okay, that's why there are 3rd parties who can build stuff to support it for you.

4) Good point. This is definitely the wave of the future, Hulu needs to catch up. The point about hardware decoding is also fair I think.

5) i* devices do have tons of games true (Steve, I hope you now see the connection between entertainment software and platform sales, it's eluded you on the Mac for years). But those games are not flash games. I want to play flash games on my i* device. Period. I am the consumer, and I get to demand what I want to purchase. The only fair point I think is that most flash games don't work well via a touch interface. I have to agree with this. But there are also plenty of flash apps that are not games that would be amazing on an iPad. I want to use those. <http://news.ycombinator.com/item?id=1295052> And no bit of HTML5 will replace these kinds of things for at least 12-24 months. Flash is not just about video and games.

The i* platforms also do not have the most pieces of entertainment software of any platform. Apple needs to simply stop exaggerating their claims to the point of absurdity.

6,7,8) see point about app store rejection above.

9) Agreed, though some flash apps might work well. Or apps could be written to work well with it _exactly_ the same as making an HTML5 canvas app work well with the i* devices. This BS about mouseover events, and device features is also true of the web, yet that doesn't seem to be a reason to yank Safari mobile off of the devices.

10) This is the most noticeable pile of utter garbage in this entire thing. Somebody here did a survey of the top i* device apps and many of them were made with third party tools or contained elements that are now in violation of the new terms. Most of those apps were of superior quality. Just because the tool chain is made by somebody else does not mean the output will suck. Conversely, just because the toolchain is Apple approved, does not mean that all apps that use that toolcahin are going to be free of suckage. There are lots of shitty apps in the app store, _lots_ , and I'd bet the vast majority of them were written with the approved toolchain.

11) I think we can all agree that HTML5 is immature as a technology. Adobe makes great authoring tools. Therefore, Adobe should make great HTML5 authoring tools. I think we can all agree on this. Flash _is_ eventually going to go away. But in the meantime it's still a useful piece of technology. Just because quartz timing devices will all eventually go away doesn't mean that we should just stop using quartz timing devices. But even if Adobe started today, flash would be a predominant force on the web for 3-5 years.

Finally, this is all a giant pile of misdirection. Point 10 is the key one not flash.

</comment><comment><USER132> We want the web to be open and free while we keep everything we do on our end closed and make tons of money. Oh, and don't let anyone else try to profit from their proprietary stuff either (unless we get a cut).

</comment><comment> loup-vaillant > Flash was created during the PC era

Do they actually believe that things like the iPhone and the iPad will displace our old PCs? No way. Not with the DRMs.

<comment> loup-vaillant OK. Apparently, this was silly enough to warrant a down mod. So, let me ask this simple question:

Who here stopped using their desktop, to rely exclusively on an iPhone and an iPad? Who plans to? Why?

If Tablet PCs ever displace conventional ones, they won't have Treacherous Computing build in. Even my mom understands that depending entirely on a single company for much of her work and personal life is not a good deal.

</comment></comment><comment><USER125> At 712 points this is the highest upvoted post I have ever seen on Hacker News.

</comment><comment><USER133> 1\. Open -- We're the freetards now. Booyah.

2\. Full Web -- You don't really want Flash.

3\. R,S,P -- Flash is some buggy shit.

4\. Battery -- Forcing you not to use Flash saves your batteries! Aren't we nice?

5\. Touch -- Multi-touch fail. We can't hover like a mouse.

6\. We're saving the developers from themselves. The morons.

</comment><comment><USER134> It's good Jobs attempts to lay out his reasoning with facts but his facts are not all that correct.

Flash has been ported to mobile device. Windows Automotive, a version of WindowsCE, has flash. The Ford Sync system's front UI is completely flash and action script. I know because I work on the system.

I mostly agree with Jobs reasoning though. He makes very good points but it would be nice if he could get his facts right.

</comment><comment><USER135> I wonder if all my down votes come back.. =)

btw, flash and online video is not the case. It is possible to download almost any video somehow.

All that crappy blinking and flashing ads is what flash is really for.

</comment><comment><USER136> the arguments against Adobe flash is quite thought provoking.

</comment><comment><USER137> "Flash is a closed system." What about apple? But Apple clearly said their reason, using facts and argument.

</comment><comment><USER138> How can apple crap on Adobe's proprietary tools when Apple send me updates for QuickTime every week. Hypocritical.

<comment><USER138> downvoted? Can someone explain how the QuickTime format isn't coming from the same principle as Flash?

</comment></comment><comment><USER139> Hi Steve Jobs!

</comment><comment><USER140> Jobs doesn't want "a third party layer of software (to) come between the platform and the developer"... cause that's the job of the first-party layer.

</comment><comment><USER43> There are so many things wrong with Jobs explanation I don't know where to begin.

But two claims really pisses me off.

Battery Life

If I activate push notification it sure isn't nice to my battery. So I switch it off.

The same thing could be done with flash. Or even better, make flash an opt in. What's the problem.

Yes I know apple can claim that it will affect peoples impression of their products, but so do not having flash.

Touch

This really is a strawman of enormous proportions.

First. There are plenty of html pages out there that have roll-over. Plenty of menus that expand as you roll over them.

Second. Rollover states is not a problem for most flash websites that users use. In fact Apple could simply allow for rollovers to be activated on push down and click on release.

I love apples products, but they are simply in the wrong here. I love my iPad but not being able to see flash sites is really getting quite annoying.

<comment><USER42> I don't understand why you reacted so strongly to the roll over argument. Jobs didn't state roll overs as the raison d'etre for not including Flash, he simply used it as yet another example why the tools and, more importantly, thinking of the previous generation of web developers will not advance the platform forward. (As an example, I have been frustrated at some sites reliance of roll overs when using my iPhone).

The battery life argument is also stronger than you make it seem. When users turn on push notifications, the phone warns you of a reduced battery life (also, when enabling 3G) and is usually not toggled by the majority of the population. Flash is much more insidious; it will live in the browser and to the average user, will just be a part of normal browsing. Ditto for watching movies over flash.

<comment><USER43> The touch argument just isn't valid. What exactly is it that can't be done with flash just because it's a touch environment. Flash don't care about what the input is. It will listen for what you ask it to listen to.

Regarding battery life

And why couldn't the phone warn you off reduced battery life if you turn on flash?

You simply make it an opt in, the first time someone is running flash you overlay a warning saying that flash reduces battery life and you can turn that warning off.

Its simple interaction design, apple are masters at that.

None of the problems stated can't be solved or are not already there with regular html (rollovers on plenty of normal html sites)

<comment><USER42> These are all problems that could be solved, this isn't the argument. The argument here is solving them is not in everyone's best interest and is artificially keeping the platform in the past.

edit: why are you so angry? Apple are providing a beautiful product at a great price to the public. If it doesn't have a feature you want, buy another product that supports it. I never understood being angry at a company because of not putting effort into what you think they should be putting effort into.

<comment><USER43> What do you mean with in everyone's best interest?

Everyone includes the millions of flash sites and flash developers out there that do fantastic work.

Flash isn't a feature it's as ingrained a part of the web as HTML is and surely much more than HTML5.

I like apples products I fully accept that they don't want to put flash on there even though I disagree.

But his answer isn't an answer, it's not a counter argument as many of those problems he states aren't really problems that are flash related.

</comment></comment></comment></comment></comment><comment><USER141> copy url -> open mail -> paste -> sending to <undisclosed emails... lots of them>

</comment><comment><USER4> I don't buy this at all, although some of the reasoning is sound there's some jaw-dropping rubbish in this statement. esp. around 'openess'. This is one big red herring - Adobe pissed Jobs off, this is his revenge, end of story.

<comment><USER4> Wow, when did HN become all Apple fanboys, all the time? - I thought this was supposed to be a rational argument but it seems as long as Jobs is destroying Flash he's ok with everyone, even while he's locking down the rest of his platform.

<comment><USER98> > Wow, when did HN become all Apple fanboys, all the time?

Not all the time, but I think it's quite telling that a gushing 'I love this, with a slight reservation' gets 150 upvotes and you are sitting here at the maximum downvotes for simply stating your opinion.

Yuck.

<comment> loup-vaillant Maybe most people on this thread are just blind. Blind to he "Treacherous Computing" which is applied to the iPhone and the iPad. Blind to the fact that these devices are fully fledged computers. Blind to the fact they wouldn't like to be locked out of their desktop PC in the same way.

Apple pulled out quite an American dream here: they made a sleek product, and were wildly successful. On top of that, they spurred a new gold rush (the App store lottery).

So, Apple looks great on the short term. On the long term, however, they make steps towards a society few would like. (Did you saw the mention to the "PC era" at the end? This is probably the most dangerous thing in the whole post. Yet it went unnoticed.)

The problem is, few think long term (it is dismissed as "idealism"). Most prefer short term (calling it "practicality"). HN is just no exception. (Opinions like "privacy is worthless" or "the BSD licence is more free than the GPL" are both short term-based, for instance.)</comment></comment></comment></comment>