http://www.openhandsetalliance.com/android_overview.html
This appears to be in direct competition to Sun's Java FX Mobile
initiative launched earlier this year. But it goes a little deeper
than that. Google have been absent about using the work Java in there
literature, and for good reason!
The Dalvick VM (included with Android) is a departure from a
traditional JVM in that it runs it's own variant of byte-code. It
supports a language similar to Java, supports a lot of the common Java
API's (Apache Harmony), and runs in traditional IDE's. It just
compiles to a different byte-code.
Effectively creating there own platform Google is not dependant on Sun
or the JCP, it is free to distribute the platform under it's own
licensing agreement allowing Google to pursue there own direction for
the platform independantly of Sun.
http://blogoscoped.com/archive/2007-11-13-n83.html
http://blogs.zdnet.com/BTL/?p=6900
http://www.psynixis.com/blog/2007/11/06/android-vs-javafx-mobile-the-big-difference/
http://www.infoq.com/news/2007/11/android-java
When Java was open-sourced there was concern over the potential for a
fork to occur, well that day seems to have arrived.
Do we need two competing open mobile platforms?
What will this mean for Sun's Java FX Mobile platform?
Will this impact the Java platform in general?
Which technology should I be building my next-gen mobile apps on?
Can Sun compete?
Mark
> Do we need two competing open mobile platforms?
Competition in the form of .NET did wonders for mainstream Java, this
might do the same for mobile.
> Can Sun compete?
With Google? Hmm... appears to me the people who wrote large portions
of the Java class libraries now work for Google. And considering the
difference in cash flow and Sun's unimpressive marketing department my
money would be on Google.
It's quite peculiar though how Sun's Jonathan Swartz praises the
initiative considering:
- They are not part of the alliance.
- Apache Harmony is used rather than Sun's (remember the open letter
issue).
- The API is a hybrid between ME/SE/Google extensions.
- It has codec's, WebKit browser wrapper and whatnot which has always
lacked in Java.
- There's no JVM involved.
So technically, I guess this can't really be called Java (referencing
the Sun vs. Microsoft disbute). Meaning Sun and their JCP veto right
is completely out of the picture.
But the real question is of course: what's in it for Google? Does
this
mean we'll soon have ads in our address book? lol
/Casper
Dalvik VM looks like a phenominal piece of engineering. It is really
built for purpose. Using bytecode as the "source" for this looks like
a smart move in my opinion. Time will tell I guess, but from the
videos of real "gphones" in action - WOW. And the api is very very
very nice. JavaFX as a UI language would be nice - which will
(presumably) compile to .class, which Android can work with, so its
not ether/or really.
As for googles motivation, really I think its simple. Google want you
to have the internet with you, on, all the time, as much as possible.
Or at least most of the time. Not some crusty old teclos version of
the net, not to sell you ring tones for a dollar each (or more??) or
other worthless content. But the internet. All of it, all the time
(you know why). I think they were tired of the silly games that telcos
and handset makers were playing (perhaps with the exception of apple
now) - and just wanted to give it a shove, and they had the resources
to do it. They just want you to have the internet. If there was a way
to have it prejected on your retina, they would be on it post haste.
Good on them I say. I look forward to seeing what people get up to
with Android, and I hope Dick spills the beans on what it really is
and so on. Thats his job now !
On Nov 14, 2:21 pm, Casper Bang <c...@brunata.dk> wrote:
> > The Dalvick VM (included with Android) is a departure from a
> > traditional JVM in that it runs it's own variant of byte-code. It
> > supports a language similar to Java, supports a lot of the common Java
> > API's (Apache Harmony), and runs in traditional IDE's. It just
> > compiles to a different byte-code.
>
> Has anyone dug around at the bytecode level? I.e. could Google
> possibly have added reified generics since they are not (*liberating
> sigh*) bound by all the legacy stuff?
>
> > When Java was open-sourced there was concern over the potential for a
> > fork to occur, well that day seems to have arrived.
>
> Oh there are many signs of this "breaking out of Sun confinement",
> Stephen Colebourne's Kiajro, Rémi Forax's properties etc. I wouldn't
> be surprised if IBM has something cooking either.
>
> > Do we need two competing open mobile platforms?
>
> Competition in the form of .NET did wonders for mainstream Java, this
> might have the same effect for the mobile world.
>
> > Can Sun compete?
>
> With Google? Hmm... appears to me the people who wrote large portions
> of the Java class libraries now work for Google. And considering the
> difference in cash flow and Sun's unimpressive marketing department,
> my money would be on Google.
>
> It's quite peculiar though how Sun's Jonathan Swartz praises the
> initiative considering:
> - They are not part of the alliance.
> - Google uses Apache Harmony rather than Sun's (remember the open
> letter issue).
> - The API is a hybrid between ME/SE/Google extensions.
> - Such major parts as Swing and AWT are completely missing.
> - It has video codec's and whatnot which has always lacked in Java.
> - There's no JVM involved.
>
> So technically, I guess this can't really be called Java. Meaning Sun
> and their JCP veto right is completely out of the picture.
>
> The real question is of course: What's in it for Google? Does this
> mean soon we'll have to get used to ads in our phone's address book?
> lol
>
> /Casper
Thats the point, this isnt Java we are talking about here, it is
however a very Java-like platform
Mark :)
So looking around the competition, Sun, Microsoft; Google proably
cant see how they can work with them either, to bring there platforms
upto scratch, and the platform would still be controlled by the
respective company. Only choice left is to buy into another technology
(open source it), let others build hardware, and software, that would
make the platform compete with Apple, and in doing so sell more
advertising.
Mark.
JavaFX compiles to .class files (AFAIK?) - therefore you can convert
this to dex:
http://code.google.com/android/reference/othertools.html#dx
All you need are class files !
Love to hear Joe discus this topic on the posse ... with.. well:
Joe ;-)
Hi has been out for all the Java/OS X things, look like hi got this
for him self
/Peter
> > > not ether/or really.- Hide quoted text -
>
> - Show quoted text -
Since the class byte code is so closely aligned with an AST from a
java file, can't this just be seen as reuse of the compiler parts
(lexer, parser, syntax sugar expander) more than nessesarily a desire
to cross-compile Java byte code per se? Compared to what the VM has to
do, these first steps seem insignificent. In other words, Google could
very well end up writing .dex files and perhaps avoid some of the
annoyences of classic Java byte code (lack of true generics etc.)
> Love to hear Joe discus this topic on the posse ... with.. well:
> Joe ;-)
Joe and Tor could discuss the story I guess, of course both could be
suspected of not having anything particular positive to say about the
GPhone given it's basically an open version of the iPhone but using
pseudo-Java. From the demo's its pretty clear the GPhone
responsiveness falls behind that of the iPhone, but whether that's due
to the difference in stack (no pseudo-Java on the iPhone) or simply a
maturity thing only time can tell. Indeed, it should be a very
interesting next posse podcast.
/Casper
Isn't Tor working for Sun? Hi can't talk about the "vs Java FX Mobile"
/Peter
No but he might shed a little light about Sun's view on this, whether
the really interesting people (the engineers) consider it a fork or
not. After all, what comes out on Jonathan Schwartz blog makes little
sense; he just appears busy ordering a new batch of bumper stickers
with "Java is now on a trillion phones".
/Casper
--
Amarjeet Singh
Phone: +91-98712-76661
Fitter. Happier. More productive.
--
SteveL
- J
Peter
I guess part of the story is that traditional engineering knows only
specs -- after all you can't just duplicate an implementation of the
spec around the world. And you don't really need (possibly shouldn't
even) make an implementation part of your standard -- and I don't
think that is what Sun does. The implementation is there to test the
spec for flaws/obmissions (I think of it as a "prototype" in the
classical engineering sense), not as part of the final standard. Of
course we are doing software where prototypes live longer.
Cheers,
Peter
PS: I have read arguments (don't have the pointer anymore, sorry) that
you should really require two independent implementations of a spec
before releasing it since otherwise you can easily have answers to
some questions only in the implementation, but not in the spec. It can
still happen with n implementations, but it gets less and less likely
with every new implementation.