Chris Adamson
unread,Mar 9, 2008, 1:30:56 PM3/9/08Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to The Java Posse
A couple thoughts, some of which probably won't be well-received among
this group:
1. The case for/against Java ME on the iPhone is analogous to that of
Flash. The strength of each is that they provide a rich runtime in
environments that wouldn't otherwise offer them (Java ME on the phone,
Flash in the browser). Flash also has a strength in that it provides
a simple and consistent solution for audio/video playback. Thing is,
the iPhone already provides both of these: it's already the next-
generation video iPod, and the new SDK allows for ridiculously rich
application development.
It's going to be very important for Sun do deliver real *value* with
an iPhone JVM... and that means doing more than just showing it
running at JavaOne. They need to answer the question "why would an
application developer use Java instead of the SDK the iPhone already
has?" Maybe the answer has to do with all the Java apps already out
there for phones... if so, then they probably need to facilitate
getting those apps to users (more on this in the next point).
2. The fact that apps developed with the iPhone (Public) SDK can't run
in the background probably puts the kibosh on Java for iPhone working
as a library. I can imagine that you'd see the runtime distributed as
a user-facing "Java Application Manager" which would not only be the
runtime but also the tools to download and add/delete/run midlets, so
anything you do in Java would all occur inside this same user-space
app. Apropos of point 1, it might be a good idea to license some of
the best existing midlets (the Namco games, some utilities, whatever)
and bundle them with the runtime, so the user has some incentive to
get the runtime. Another option might be that Sun would license their
iPhone JVM to third parties who would then distribute the JVM and
their midlet as a single app, though this could be a real waste of
space once users have multiple JVMs, each hiding inside an
application.
3. I can't be the first to see the irony: Apple declines to put Java
on the iPhone, so Sun picks up the slack. What's keeping them from
doing the same on Mac OS X, where Apple seems to be dragging its feet
on Java 6? It's a weird situation for Apple to be paying license fees
to Sun for the commercial JDK license and then not actually getting a
product out the door, but if that's how they want to spend their
dollars in Cupertino, so be it. The question is, does it hurt Sun to
have the new version of Java unavailable to Mac users? Enough so that
they'd just pick up the ball themselves? I guess it's a question of
whether the current situation hurts Apple or Sun more. Are Java
developers really going to dump their MacBooks en masse (and will
anyone else even notice?), or is not being current on the most
exciting client-side platform going to imply Java's irrelevance as a
user-facing technology? Or is Java 6 just not even that big of a deal
for most people to care about either way?
4. I downloaded the iPhone SDK on Friday, and started working with it
and reading the docs on the plane back from the Roundup. Technically,
the contents are NDA; even though anyone can get it through the Apple
Developer Connection site, the terms for the SDK and the ADC site as a
whole prohibit public discussion of unreleased software. So let me
just say something general and subjective: this is a WONDERFUL
frickin' SDK. I have not been this excited about development
possibilities since the original JDK in 1996. There is so much to
work with here, I can hardly believe it's really on my laptop.
5. Two months ago, I was at the Mobile & Embedded Developer Days,
where the main topic was "fragmentation", and the roadblocks put in
front of ME developers. I once proposed that O'Reilly do a "Real
World Java ME" book, saying that the book should "contain the names
and phone numbers of the mid-level executives at handset makers and
carriers that you would have to go down on to get your apps out to end-
users." And then there's Blu-Ray, where one would-be developer sent
me a series of e-mails detailing his attempts to get into BD-J, which
ended with his contacting the BDA and getting the reply "The
conclusion is that we recommend you to obtain a BD-ROM License in BD-
ROM Tools & Manufacturing Equipment/BD-ROM Tester category for the
amount of $15k." Oh wait, I noticed in a recent thread that you may
be able to get in the door with BD-J for a newly-reduced price of
$4,000. Thanks, guys.
By comparison, Apple offers a freely-available public SDK, nice tools,
registration for $99 (which gets you your app-signing certificate),
and lets the developer set his or her own price, of which Apple takes
30%. For the small developer, relieved of the burdens of developing
or licensing a commercial software infrastructure (processing credit
cards, serving downloads, licensing individual copies, updating,
etc.), this is a bargain. Compared to the ME and BD-J markets, which
are effectively closed to the independent developer, jumping into
iPhone development is an absolute no-brainer.
I just realized an irony. If Sun does bring Java ME to the iPhone,
it'll be easier for an ME developer to develop ME for the iPhone than
for any of the billions of "real" ME phones already out there.
I have one lingering Java project to put to bed before I really focus
on the iPhone. I've already worked with Cocoa on the Mac, so my
comfort level with the iPhone SDK is already high. Ease of
development plus a fast-growing market plus actual access to that
market... well, like I said, I haven't been this excited about
programming in more than a decade.
--Chris