Forum Controls
Spotlight Features

The Rich Engineering Heritage Behind Dependency Injection

Andrew McVeigh takes us on a tour of the rich heritage behind dependency injection, what it represents, and tells us why its here to stay.

NetBeans 6: Matisse Updates

NetBeans 6 delivers great updates to the Matisse GUI builder. Spend a few minutes with Roman Strobl and get an expert briefing on what's new and what has changed.

Introduction to Groovy Part 3

In this, the third and final installation of Andres' Introduction to Groovy series, you learn about how Groovy handles variable numbers of arguments, named parameters, currying, and more about Groovy operators. Including, some new operators.

Easier Custom Components with Swing Fuse

Swing Fuse (actually just Fuse), is a framework designed to make it easier to create your own custom desktop components. In this article, Daniel Spiewak shows you how to get started and provides sample source code you can download.

Benchmark Analysis: Guice vs Spring

Willam Louth shows how he uses JXInsight Probes to investigate probable performance issues with code bases that he is not familiar with. He also highlights possible pitfalls in creating a benchmark, as well as in the analysis of results.
Replies: 72 - Pages: 5   [ 1 2 3 4 5 | Next ]
  Click to reply to this thread Reply

Steve Jobs on iPhone: No Java For You

URL: Ed Burnette's Dev Connection

At 10:36 AM on Jan 15, 2007, Michael Urban wrote:

Ed Burnette has an interesting commentary on the iPhone and Java in his blog. It seems Jobs has lost his grasp on reality again. In an interview given to the German magazine MacWelt, Jobs reportedly said "Java’s not worth building in [to the phone]. Nobody uses Java anymore. It’s this big heavyweight ball and chain."

Oh really? Maybe Jobs would like to tell that to all of the other mobile phone makers are still bundling Java with their phones, or to the multi-billion dollar a year mobile Java gaming industry?

But wait, it gets even better.

It seems the iPhone is going to be nothing more than an overpriced mobile phone appliance, as Apple has no plans of releasing a developer kit in any language it seems. Jobs also said in an interview with the New York Times:

"We define everything that is on the phone. You don’t want your phone to be like a PC. The last thing you want is to have loaded three apps on your phone and then you go to make a call and it doesn’t work anymore. These are more like iPods than they are like computers."

Just my opinion, but with an expected retail price in the $500 to $600 U.S. dollar range, this phone seems awfully short on features if the only thing you are going to be able to run on it are the applications that Apple gives you, plus browser based Javascript applications. It's being billed as a smart phone, but in reality, it is nothing more than an overpriced mobile phone appliance.

What's your opinion?
1 . At 10:53 AM on Jan 15, 2007, Gregory Pierce DeveloperZone Top 100 wrote:
  Click to reply to this thread Reply

Apple made a HUGE mistake

Their approach worked fine for the iPod because they came in and pioneered that space, but if they think they can come in with the iPhone and compete against a large number of entrenched players that invest considerably more in R&D, than they have available cash to invest - Apple is in for a very humbling ride through the mobile market.

Apple forgets one thing - developers, developers, developers, developers. The interface that Apple has created can be redone on any platform that has a touchscreen, and if that device has access to more software functionality than what Apple is providing... the iPhone will in fact appear to be nothing more than an expensive phone attached to a "too small" media player.

Apple will see the floodgates open from Nokia, Motorola, Sony, and LG in that space. Carriers WILL be allowed so subsidize those phones, and they will have more applications for them because they will be open platforms. All Apple has done with this move is awaken the great beast of the development community to put them in their place. And it will be a lesson that is long remembered by developers - that Apple has such disdain for them that they will exclude them.

HUGE mistake. Developers will come after them like they did Microsoft.
2 . At 11:29 AM on Jan 15, 2007, Hadrien Flipouk wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

It is very surprising that Jobs spreads the usual BS about Java (i.e. that Java is bloated, slow and that nobody uses it). How can he ignore the fact that Java is even more active in the mobile realm that anywhere else?
It is even weirder when one considers that a JDK is bundled with every Mac.
I feel very upset and disappointed with the iPhone although I was very excited at first.
Does anyone have an idea how we can lobby Apple to make this change?
3 . At 11:31 AM on Jan 15, 2007, federico wrote:
  Click to reply to this thread Reply

Re: Apple made a HUGE mistake

jobs is definitely error prone. lucky enough, they have Jonathan Ive
4 . At 11:48 AM on Jan 15, 2007, Richard Lowe DeveloperZone Top 100 wrote:
  Click to reply to this thread Reply

It's about the Money

This isn't about Java, it's about Apple wanting all the money. Jobs is smart he knows full well the J2ME game market is huge. The problem is he wants the Apples (pun intended). That was Apples mistake in the first place Microsoft at the time used third party developers to build more software than Apple and it almost killed Apple some people never learn.
5 . At 11:49 AM on Jan 15, 2007, Shai Almog wrote:
  Click to reply to this thread Reply

Huge mistake, but they don't have much to choose from

I agree, it is a HUGE mistake not to ship some development platform to the device that doesn't require connectivity. Especially when the device doesn't offer 3G support... What are they thinking? You can't introduce a closed garden approach into a mature market? AOL failed there and they were there when the market started.
One thing though, Java right now doesn't have a solution for Jobs. Java SE is too big for a small device and it would be an effort to port it to ARM since the JIT was never on that device. I am not a lawyer but a previous poster stated its not even legal to port it to a device.
So that leaves Java ME... CLDC/MIDP is pretty terrible, yes its the dominant platform but it still is pretty bad. The main problem for Apple though is that MIDP is designed for a dial pad phone, it might work with a QWERTY device (it wouldn't be as intuitive but it can work) but on a touch screen only device it would really stick out. The API is just badly designed.
So CDC is a better solution, but in the CDC side there is nothing from Sun right now. Nothing. Nada.
The future of mobile devices just doesn't exist, there is JSR 209/AGUI which no one uses other than SavaJe. There is eSWT which isn't a JCP standard, I assume its better than nothing but I have no idea... Thats pretty much it. So you can port Java but you can't do anything useful with it such as GUI, or you would have to invent your own proprietary toolkit for a device... That would be a bit of an effort, not to mention the matching development toolchain.

Love them or hate them Apple is a trend setter and if the iPhone ships without Java then maybe this will be the wakeup call for Sun/IBM to take a good look at Java ME and fix that bloody mess. They should standardize CDC together and make sure vendors move to something viable rather than a mess of JSR's that just keeps confusing everyone. And yes I know about 249, its not going anywhere. Vendors in the field are just unable to rise over their petty momentary needs and create a decent standard, it needs to be dictated to them properly.
Shai Almog vPrise Software makers of vPrise Workgroup http://wg.vprise.com/ founder of bean-properties the leading OSS properties implementation in Java https://bean-properties.dev.java.net/
6 . At 11:49 AM on Jan 15, 2007, n8han wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

Not everyone is aware of it, but Apple makes their very own JVM for Mac OS X that is usually only a few months behind Sun's releases. (We're still waiting for a Mustang-equivalent final release.) That makes Jobs's quote, if it's accurate, even more insane. I'm sure Apple's JVM programmers are not feeling too appreciated this morning.

Anyway, Java coders, wake TF up. The sentiment Jobs expresses is still a common one for Java desktop apps in general. What users aren't aware of, possibly including Jobs, is that phones are the one place where Java apps are popular and do work well. (Perhaps because the expectations for user experience are already so low, but still.)

Java deserves to be supported on iPhones and I'm sure it eventually will be added (by Apple's own JVM programmers), but for the time being the company is playing a typically nasty and arrogant game of disrespecting every technology they don't have time to build in. As Java programmers and (some of us) Apple users, we may as well take the high road and ignore Jobs's belligerent talk. Personally I'm more interested in the N800, and not just out of spite. (Cell phone network providers suck, duh, and the last thing I'm going to do is pin my hopes on them subsidizing cell phones--ha!)

Apple has no plans of releasing a developer kit in any language it seems

Dashcode .
If you like this, you'll love coderspiel.
7 . At 11:52 AM on Jan 15, 2007, William Shenfield wrote:
  Click to reply to this thread Reply

Re: Apple made a HUGE mistake

I cannot see it working here in Europe, my Sony Ericsson W850i cost me £45 ($60) is 3G (with video calls), Java, Radio, 2M Camera, 1G Memory Stick. The IPhone user interface looks nice with the touch screen but Sony will soon have this.

Jobs has done what he is best at getting a product developed that he would like to use (it looks like a great phone), but in this case I think people will demand more of their phone.
8 . At 12:17 PM on Jan 15, 2007, Jean-Marie Dautelle DeveloperZone Top 100 wrote:
  Click to reply to this thread Reply

History repeats itself.

Apple made the same mistake in the past with Apple 2 and Macintosh. They believe that they are big enough to drive the market (the fall will be hard ;) ). The PC revolution proved them wrong. Ubiquitous embedded Java will do the same...

It is an excellent news in fact, with Java support it would have been possible for the iPhone to reach a monopoly position in the cell phone market (similar to Microsoft position on the desktop). But thanks to Jobs stubborness, it is becoming less likely now :)
Jean-Marie Dautelle - Marlboro, MA
-- Javolution: Everything should be made as simple as possible... -- JScience: But not simpler!
9 . At 12:28 PM on Jan 15, 2007, Chris Conrad DeveloperZone Top 100 wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

Sorry guys but everyone said the same things about the iPod. As I posted in the last thread about the iPhone, Apple doesn't want just anyone to be able to get an app on this device. They want to revolutionize the way you interact with a phone. Look at the demo of Google Maps, that is certainly not the same version running on my BlackBerry. Having Java on this phone does nothing to help Apple realize their vision of this device so it's obvious to them (and anyone looking at it from this point of view) that Java would be a waste of space.

And, again, they aren't looking to compete with business smartphones. They're targeting the same people who buy an iPod because it's fashionable. If that's not you, Apple could care less at this point what your thoughts are on the iPhone. Seriously. They don't even care that you're developers, they're obviously looking for a different developer set then the ones who post on this site; ones who want to do something different with a new user interaction model, not ones who will complain that their pet programming language isn't on the device.

This isn't meant as an insult either, just the reality of the situation. Pissing and moaning that Java isn't on the device and so it will fail is certainly not going to impress Apple, not when they've already thought this issue through and came up on the other side.
10 . At 1:02 PM on Jan 15, 2007, Dave wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

Jobs is just trying to market it as "the cool thing to get", and this could actually work. The masses don't think like technology professionals (sometimes maybe, but definitely not always, and dare I say it, most of the time our tastes are on different sides of the ocean).

Think about the iPod; sure Apple got in early and marketed it aggressively, yet with what could've been included in a portable MP3 player (even back when it was first released), it wasn't anything THAT special, and most technology professionals knew that, yet the masses didn't know better, or didn't care (yet I'd argue it's more likely they just didn't know better).

Furthermore, it had it's share of reliability problems (batteries!), which hadn't been fixed until the latest model (I'm told the latest models have better batteries, and I wouldn't mind hearing opinions on this).

Yet, the bottom line: iPod sales and Apple's share price went through the roof.

The iPod was (and still is?) the "cool" portable MP3 that everyone just had (has?) to have. And, from what I've seen, it was mainly "tech guys" that bought variants from other manufacturers, because of their features.

They're doing the same thing with the iPhone. The latest Sony Walkman phones to come out have decent media player capabilities; 4GB of space for MP3s etc. was what I saw the last time I checked (could be more now I haven't checked lately). Yet it's expensive, and it isn't something EVRYONE's gonna wanna have to get.

But Apple have the kind of brand power now (created by the iPod) that has the capability to hit the "ooh aah" cool nerve impulses in the consumer masses. That, and that alone, may just be enough to make the iPhone a commercial hit.

Even if it is a little more pricey, the masses will be willing to fork out just lil extra to stay cool, especially when everyone else is buying it (like the iPod). And, they're marketing it early and aggressively before the Nokia's and Sony's fully claim the space.

The "cool factor" usually wins against "the feature factor" in the commercial arena of the consumer masses. This is not necessarily true in the "enthusiast" market, yet I don't think Jobs is targeting enthusiasts. It's "the people" he wants.

If Apple succeeds, then they would make more money on this one phone, whilst having spent less to develop it, than variants from other manufacturers. Business strategy all the way.

But who knows, it's just speculation.
11 . At 2:33 PM on Jan 15, 2007, Dan Hardiker wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

> Pissing and moaning that
> Java isn't on the device and so it will fail is
> certainly not going to impress Apple, not when
> they've already thought this issue through and came
> up on the other side.

The point isn't that Java isn't on the device - the point is that it doesn't have a SDK and is a closed device. While forcing a closed garden approach worked for the iPod, as said before, this was because it was the best at the time of an early MP3 player market when it was just becoming mainstream.

If the iPhone gets picked up by celebs and becomes cool amongst the teens - then it stands a real chance, but being revolutionary / magical and changing the way we use our phones? I dont think so.
12 . At 2:57 PM on Jan 15, 2007, Jorge wrote:
  Click to reply to this thread Reply

File a bug report

The Adium team suggests filing a bug report against iPhone.
http://www.adiumx.com/blog/2007/01/apple-openness-and-iphone.php
Reminds me of ubuntu's #1 bug, https://blueprints.launchpad.net/ubuntu/+bug/1
13 . At 4:05 PM on Jan 15, 2007, Ray Cromwell DeveloperZone Top 100 wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

Even if they allow homebrew development and distribution, Java would still be the wrong language for this device. Apple would essentially have to invent their own "profile" because none of the J2ME profiles, nor even J2SE would offer the write programming interface for this device.

The GUI widgets on this device don't have any mappings to normal Swing/AWT/LCDUI that would expose all of the features. Plus, there are many widgets that seem to exist for which no Java equivalent exists. There would be no access to Core Animation, no ability to deal with multitouch (where's my MultiTouchMouseListener interface?) and on and on.

In the end, Apple would essentially just end up building a Java VM on iPhone that is nothing more than a Cocoa/Obj-C bridge. But if they're going to invest so much effort, why not just make Obj-C the preferred language for writing iPhone apps?

The iPhone is the kind of device where you don't want lowest common denominator, you don't want "write once run anywhere", since that would just put Apple on unfair footing, reducing the benefits of its large screen, unique input sensors, and fluid animation to that of the apps that run on other smartphones.


Their decision to prevent unlicensed homebrew development and distribution may be debated, but even as a Java developer, to me, Java on this device is nothing but a disadvantage for them, and if anything, should be there only for backwards compatability with legacy J2ME apps. But should Apple include a WAP capable browser just because there is alot of WAP content out there?

Would you rather use the integrated Google Maps or Mail Client, or use a third party J2ME Google Maps?
14 . At 4:19 PM on Jan 15, 2007, Shai Almog wrote:
  Click to reply to this thread Reply

Re: Steve Jobs on iPhone: No Java For You

> The GUI widgets on this device don't have any
> mappings to normal Swing/AWT/LCDUI that would expose
> all of the features. Plus, there are many widgets
> that seem to exist for which no Java equivalent
> exists. There would be no access to Core Animation,
> no ability to deal with multitouch (where's my
> MultiTouchMouseListener interface?) and on and on.

While I agree with everything you said and it echo's my thoughts on the matter Swing can be extended in a compatible way to expose the few additional features needed.
E.g. mouse event can implement an Apple specific interface that will expose multi touch parameters (since they are essentially mouse events there is no conflict). A Swing utilities like class can be used to extract/bind gesture events in Apple specific packages.

I think that they probably did something like that to their COCOA API otherwise it would have been too much work to port applications so I doubt they will start an API from scratch. Although using Swing might be a problem due to licensing since then they would need to either use JSR 209 (which is pretty bad) or bundle the whole JRE (which might not be legal). So you are correct, they don't have a proper Java option.
Shai Almog vPrise Software makers of vPrise Workgroup http://wg.vprise.com/ founder of bean-properties the leading OSS properties implementation in Java https://bean-properties.dev.java.net/

thread.rss_message