

Why the Apple iPad has no Java or Flash - jp
http://labs.teppefall.com/2010/02/why_the_apple_ipad_has_no_java.html

======
BigZaphod
I'm sure the technical and emotional arguments that Flash sucks had an
important role to play in why Apple didn't include it, but I like to think
it's almost simpler than that: Flash expects (and often requires) the
traditional keyboard and mouse interfaces. The iPad has neither.

Sure, the big Flash sites like YouTube could easily get away with translating
touches to clicks and it'd probably "just work" for them, but how do you
handle the millions of sites that depend on rollovers to reveal menus or full
keyboards to control game characters? You can't. There's just no elegant way
to translate that to the iPad.

HTML/CSS was designed to degrade gracefully in the face of changing client
capabilities. Apple can more freely create a new environment that can still
acceptably display HTML/CSS content because of that core design decision.
Sure, some sites will do things that break even on an iPad (or iPhone or
Android - there's no right click, still no ever-present keyboard or mouse,
unusual screen resolutions, etc.) - but for the vast _vast_ majority of
HTML/CSS sites, the necessary information is still conveyed or available in
some useful way almost by default.

~~~
bad_user
I'm pretty tired of hearing reasons about why Flash isn't included ... and
while I'm happy for HTML5, it's pretty sad that Apple doesn't give this choice
to its customers. To make matters worse, I don't think Apple allows
modifications to Safari on the App Store.

The web was built on top of such technologies (Java, Flash, ActiveX) and while
all of them where a PITA in the long run, back then it was the only way to
work-around the browser's limitations ... competitive third-parties are
driving innovation, not standards, and definitely not monopolies.

Imagine if Microsoft controlled what software gets installed on people's
computers ... today we wouldn't have had neither Java, or Flash, or Firefox,
or HTML5 for that matter, and AJAX would have been a second class citizen.

I don't want such a future. Of course, I trust the market enough to make the
proper choice when the time comes. People aren't stupid, and unfortunately for
control freaks, the genie is already out for openness.

But it saddens me to see such positive reactions from people that benefited so
much from openness (like DHH). Even with all the viruses, spyware and spam
flying around, it's still a better present that what could've been if the PC
was locked.

~~~
rimantas
_The web was built on top of such technologies (Java, Flash, ActiveX)_

Must be some different web you ar talking about…

~~~
bad_user
Care to explain?

From what I remember, Java and then Flash were used extensively for games
(ever since Netscape incorporated Java applets), and XmlHttpRequest originated
in ActiveX, which was and is still is used extensively for corporate-intranet
apps. The kindergarten my wife works for uses web-cams with an ActiveX app
that's transmitting live images to parents (in 2010).

And streaming audio/video really happened with Flash, although it was possible
with Java applets and ActiveX.

In my country we have saying ... it's like you haven't eaten garlic, and your
mouth doesn't stink.

------
biotech
_Personally I wonder why these people are still employed in the technology
sector..._

Really? This is the second line of the article, and you are questioning the
professional competence of your readers?? What do you hope to accomplish here?

 _...but why not write down all the reasons before I get too arrogant and
annoying._

Too late.

Okay, well... I read the article anyway, because I am actually interested in
the subject. Unfortunately, the content was little more than a personal rant
that would have been more accurately titled "Why Adobe Flash (and btw Acrobat)
sucks".

~~~
compay
Bingo. I stopped reading right there.

------
hga
This is fantastically good, it explains with convincing specifics why Flash is
a bad idea on the iPhone OS ecosystem (and less so for Java, but that's much
less of an issue).

Also points out how the insanity of Blueray DRM plus Apple's installed base of
hardware makes Blueray a non-starter for them.

See also this _invaluable_ essay on Vista and DRM:
<http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.html>; it's what
convinced me that Microsoft had turned against the users of its operating
system.

~~~
tensor
Flash, perhaps. But considering the Nexus one runs on Java, as do many devices
with even less powerful hardware, he's dead wrong on that point.

~~~
ZeroGravitas
I wonder why no-one seems upset that Android, which is written in Java,
doesn't let you use Java applets?

~~~
hga
Well, it doesn't have a JVM per se, its VM is the register based Dalvik, which
requires a translation phase to convert compiled Java/whatever bytecode to it.

~~~
ZeroGravitas
I was aware of that, but if they can include a seperate Flash VM, then they
can include a seperate Java VM just as easily, if not more so.

It also raises my other often unaswered question about Android. At what point
are they going to just use a standard JavaVM? The two main theories are A)
that it was a licensing dodge because (like Adobe Flash did till recently) Sun
gave Java away on the desktop and charged for mobile and set-top boxes, or B)
it was necessary to get performance on low power hardware.

I didn't believe the latter reason at the time, and it's only getting less
true as phones get better processors and people talk about putting it on
tablets and netbooks. The former reason is apparently toast since Oracle has
announced the merging of Java ME and SE which I'm guessing includes licensing
terms.

~~~
hga
You're ignoring that Moore's law doesn't apply to batteries. It's not so much
the crunch required (although non-Apple products have suffered here in
comparison), it's the battery drain.

~~~
bulanga
there's also the fact that phones have relatively limited memory. I suspect
the Dalvik VM runtime memory footprint is much lower than that of the JVM.

~~~
hga
I know that was a design goal, e.g. the bytecodes after translation from JVM
to Dalvik are smaller. I also seem to remember hearing that not all of a JVM's
library is supplied with Dalvik.

Also, hasn't Java ME stagnated? I.e. it's stuck in at Java 1.3 (which Oracle
has promised to address).

------
yumraj
_And moving Photoshop to Cocoa took so long that Apple lost all faith in
Adobe's ability to deliver a good experience on Cocoa Touch._

This is bloody hilarious and looks like the author has no experience writing
real applications. He seems to think a re-write of a complex app like PS is a
trivial task.

BTW, before Apple can claim to lose faith in Adobe, it needs to port it's own
Pro app, not consumer apps, like Final Cut Pro etc. to 64 Bit Cocoa. Apple
itself hasn't migrated it's own Pro apps to 64 bit. Even Gruber seems to be
relatively neutral on this: <http://daringfireball.net/2008/04/64000_question>

The one and only reason for no Flash and Java on iPad, and iPhone for that
matter, is Apple likes closed system where they can control everything and
don't want to give up their 30% cash cow. All other reasons are excuses IMHO.

~~~
joe_the_user
Why should Apple _care_ about what it takes to re-write a complex app? If
Apple can go without the pain, why shouldn't they?

Sometimes it sucks having a huge portfolio of hard to repurpose application
code. Eventually the programming world will figure out how to write compact,
easily refactorable code. But why should everyone wait till then.

This blog is harsh but logical.

 _The one and only reason for no Flash and Java on iPad, and iPhone for that
matter, is Apple likes closed system where they can control everything and
don't want to give up their 30% cash cow. All other reasons are excuses IMHO._

I don't think the author is saying much different in the end. It's just there
are certain advantages to having locked-down platform - especially quality
control.

I'm totally down with open source alternatives but we need to understand that
there's no reason for Joe average to tolerate the standard bullshit that the
programming world has gotten used to.

------
wanderr
"Flash cookies are pure deep evil and in use every single day."

LSOs in Flash are not strictly cookies. It so happens that many advertisers
like to use them that way, but the usefulness for tracking across multiple
websites can be easily curtailed by disabling 3rd party LSOs (so only swfs
served from the website you're visiting can have access to LSOs). LSOs allow
flash games to auto-save and let you pick up where you left off later. We use
them to make the site faster for returning users _and_ diminish load on our
servers by storing certain information a user is likely to request on return
visits in the LSOs.

------
Feynman
In re to Java -- GOOD. I've never used a Java app I've particularly liked.
Heck, is it even possible to code a decent GUI'd, non-sluggishly-responsive
Java app?

~~~
rimantas
I have no complains about SmartCVS/SmartSVN. They have SmartGit now, but I did
not try that command line/GitX is fine for me.

------
pan69
Oh god. Here we go again. I think this dude should read a bit about Flash
Player frame rates and how the Flash Player actually behaves inside the
browser. [http://www.kaourantin.net/2006/05/frame-rates-in-flash-
playe...](http://www.kaourantin.net/2006/05/frame-rates-in-flash-player.html)

------
WillC
There is one reason, and one reason only, Apple won't let Flash or Java on the
iPad or iPhone.

It's competition to the App Store and they don't want you circumventing that
cash cow.

~~~
nw
There is rarely, if ever, one and only one reason for anything Apple does.
Their holistic approach to product design is integral to the success of their
products.

------
chrisbolt
_Free Flash games directly compete with the iTunes App Store. Apple could
loose thousands of paying iPhone developers, with Apple hardware, if they
added Flash support. And suddenly the exclusivity is lost since the Flash game
runs everywhere else as well._

Would any flash games really compete with stuff in the app store? Games in the
app store are made for the iPhone's touch interface, the flash experience
would most likely suck in comparison. The only thing free flash games could
compete with is free app store games.

------
elblanco
I have not heard of this Blu-Ray/Apple issue before, anyone care to elaborate?

------
laprise
Amen !

------
c00p3r
Because: 1\. This crap can't be compiled for ARM-based cpu. 2\. Even if it
could (it won't), it won't run fast enough. 3\. Both technologies are
outdated, even while still in use.

btw, each down-vote should decrement your karma =)

~~~
andrew1
Does your (1) point refer just to Flash? It's certainly possible to get a JVM
to run on an ARM-based CPU.

As regards (3), Java the language may be outdated (possibly a debatable point)
but Java the virtual machine probably isn't. Both Scala and Clojure are
written by seemingly bright people who chose to use the JVM rather than
another alternative (Scala code can in theory be compiled to run on the .NET
runtime but in practise I understand that's somewhat difficult to achieve).
It's easy to write Scala apps for Android phones and I don't see any reason
why they wouldn't run just fine on an iPad/iPhone.

~~~
c00p3r
1\. Show me url where I can get JRE for ARM-linux-gnu.

2\. Show me #ifdef ARM_XXX in JRE source code.

Thank you!

btw, Clojure is a brilliant marketing move - an attempt to reuse existing JVM
and the java class library to create something which looks like lisp. That's
why there are so much hype - one buzzword and one magic world were put
together. =)

