James Gosling, the father of Java, has joined Google – despite his previous criticism of the company's Java-happy Android operating system. Gosling announced his new job with a post to his personal blog entitled "Next step on the road", but did not provide specifics. "Through some odd twists in the road over the past year, and a …
"...no guiltless parties with white hats in this little drama." Maybe Gosling fancies himself as a Silicon Valley Yojimbo, begrudgingly allied for money/expediency.
MS on the high ground...
and I thought they were part of the way down the slow deline to irrelevance.
Read the article again...
MS are losing the race to the bottom (of business ethics)
Re: Read the article again...
And yet they try so hard. Microsoft FAIL once again!
Java: bloated, badly designed and massively fragmented on mobile
Amazing. The fragmentation in Android is insignificant compared to the problems Java ME brings for dev's, write once, test on hundreds of devices, patch and pray it runs on enough of them.
And Java is so full of historical crud it beggars belief. Layer upon layer of hacks to modernise the core language and its libraries. It's a miracle it works at all and endlessly frustrating every time you fall off what the supplied libs provide. Libs almost designed to make you buy more powerful hardware to cope with their flabby bloat.
Many of us welcome a world where interoperability is not really an issue if everyone can cheaply use much higher level software than Sun/Oracle want to sell. He's still stuck in the mindset of catering to the lowest common denominator, meanwhile Google are changing that lowest level, pushing it up.
Get a grip. Also it's devs not dev's.
"Many of us welcome a world where interoperability is not really an issue if everyone can cheaply use much higher level software than Sun/Oracle want to sell. "
And what, pray tell, is the name of this utopia ?
"He's still stuck in the mindset of catering to the lowest common denominator" - really?
Actually James Gosling when last questioned said that he didn't really care what was happening with Java. If you're so in touch with Java tech, why do you still think that Java ME has any relevance? Your comment about fragmentation is about five years past its sell-by date.
As for performance, well now you're beginning to sound like one of those .Net developers who looked at java in, oh, 2002 and hasn't looked again since. Java and .Net virtual machines are more or less on equal footing when it comes to raw performance. I'm not going to start arguing about which is 'better' because they are both capable platforms and can deliver applications that perform.
Java definitely has legacy. But then, at least Sun didn't turn round every 2-3 years and drop their leading technology just as I'd finished learning it, or produce a "new version of Java" with no low-pain migration path (cough) VB (cough).
Producing a non-backward-compatible "New Java" will not happen under Oracle's ownership unless there is a compelling business case to make that hugely expensive and risky investment. I'd put money on it never happening - Oracle are not a R&D company.
The future for Java and the VM is the new languages that are appearing. Use Java for the nuts and bolts, and functional or domain specific languages for the business logic. Eventually one will evolve to the point that it will start to replace Java more widely - because it is better and is accepted as such. This is a much better strategy and one Oracle are encouraging with the extending support for other JVM languages as part of Java 7 and Java 8.
Regarding performance, Java is much faster than .NET on server workloads, large workloads. There are benchmarks for this, I can post them, but I dont have the time right now to find those benches.
Also, if you yourself handle all Your memory in Java, You can reach extreme speed, rivaling C. Becuase the garbage collector will never be triggered.
I'll be looking out to see how he squares the circle on Google v Sun^H^H^H Oracle.
"far more about ego, money, and power"
to expect otherwise is vanity
Everyone has a price
"Come and work for us."
"I couldn't do that, I'd look like a hypocrite."
"Here's a large bag of cash."
"When do I start?"
"there is enough fragmentation among Android handsets to significantly restrict the freedom of software developers."
I don't really get this.. I have apps running on Android 1.6 to 2.x and there are minor issues really.. even with quite modified releases like HTC push out. Versions-wise 1.6 is missing a bunch of stuff that is nice to have and has a bunch of shitty bugs but it's nothing you can't work around.
The changes vendors do to Android are mostly nicely restrained by the framework.. i.e. most vendors just replace the graphics and maybe some standard apps.. as long as those replacements accept the same intents etc it isn't an issue.
If Sun wanted write-once-run-anywhere they shouldn't have allowed JNI or anything similar in. Once you allow code to hook directly into native code you lose any platform Independence you had.
It's not enough that we win; all others must lose
-- Gore Vidal (roughly)
Good to see
Good to see Gosling is sticking to his principles and not just following the money...
Oh .... wait a minute.......
Like them or loathe them, Google understand the place in business for speculative research. This is exactly how Gosling and his colleagues came to develop Oak, now Java, which has kept me in profitable work for ten years.
It's great to see that somebody with such a sharp mind is going somewhere where he'll be able to put it to full use. Google I/O has just got better - can't wait for May 10th...
Write Once, Run Anywhere?! - Don't make me laugh!
I've yet to see a piece of Java code, that isn't extremely fussy as to what Java version is installed - in many cases, you need multple versions of JRE installed to get the particular Java app working reliably - and keeping the exact balance of Java versions installed in perfect harmony to keep common apps working is voodoo at best.
Java - CPU intensive, runtime specific bloatware!
"in many cases, you need multple versions of JRE installed to get the particular Java app working reliably"
It's architecturally impossible for a single Java desktop application to use more than one VM.
"It's architecturally impossible for a single Java desktop application to use more than one VM."
Maybe they weren't talking about "a single Java desktop application". You know, some people do refer to systems as applications because they appear to be a single thing they can interact with.
But oh no! Java library version hell doesn't exist. At least not if you enjoy horsing around with tightrope walking across a bunch of .jars and the micro-release to micro-release API breakage in the gazillion different libraries required by the frameworks required by those applications. No, sir!