Slashdot Mirror


An Open-Source Java Port To iPhone?

An anonymous reader writes "With the first anniversary of open-source Java coming up November 13, a Sun official believes the project could bear a fruit much sought-after in the Java community: a Java port to the Apple iPhone. Apple has not released a version of Java capable of running on the popular device. But Sun's Terrence Barr, technical evangelist for the Java mobile and embedded community, believes Apple's plans to release an SDK for iPhone in early 2008 may result in the open-source phoneME version of Java ME winding up on iPhone."

148 comments

  1. Why? by tji · · Score: 0, Troll

    I have not found any really compelling Java apps on my desktops (Linux and Mac OS), are there really any reasons for needing them on my phone?

    Especially given the fact that getting a java port relies on having an open SDK for the iPhone -- meaning native apps can be produced. So, if there are native apps, why would we want Java?

    Also, is my impression of Java outdated? Is it not slow, bloated (JRE + app), and have an ugly UI?

    1. Re:Why? by darjen · · Score: 1

      Also, is my impression of Java outdated? Is it not slow, bloated (JRE + app), and have an ugly UI?
      Yes, your impression is outdated.
    2. Re:Why? by Lisias · · Score: 5, Interesting

      I agree with the ugly interface, but just it.

      As a former worker on that industry, I can tell you that there's too few applications that can't be built faster and cheaper on a good KVM than on native code.

      I used to run Java games on a Siemens S55, and it work well.

      One of the main problems with Java ME is the lack of interest, from the mobile industry, to invest money on something that will cause beneficts to their competitors too. They prefer to loose two users to give one to the competition.

      Another one are the Operators. They are alergic to anything that gives freedom to theis costumers.

      On the time I used to work for Siemens Mobile (RIP), I heard a history about why in hell the JME of S55 series can't access the InfraRed device (as the S45, that I still use nowadays, has a IR API for the Java).

      The answer?

      The Operatos demanded that Siemens throw out the IR API, as they do not want S55 users to intercomunicate without paying something for them (by buying GSM services). If the Siemens didn't complied, it would loose a major incoming as the Operators were the bigger buyers at the time.

      The problem is not the technology. It's the industry.

      --
      Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
    3. Re:Why? by Anonymous Coward · · Score: 0

      very out-dated. in the mobile space apperantely, the ME version is actually quite snappy from what I've heard (haven't experienced it first hand, so take that with a bit of salt). and the UI is only as pretty as the designer can make it.

      a java port does not rely on an open SDK since Apple would probably be doing the port (like they did with Mac OSX - however, they could also get Sun to do it under contract and NDA). however, I seriously doubt that they're going to do a Java SDK - at least not given that Jobs hates Java (from what I've heard). it's much much more likely that it's going to be a sandboxed version of objective-c with Leopard API and the apps will have to be signed. that being said, it'll probably make it easier to hack future revisions of the firmware (hopefully).

    4. Re:Why? by pauljlucas · · Score: 1

      Java's default UI is still ugly. Also, to do a Java app on the iPhone seamlessly (by which I mean it uses iPhone UI components, animation, etc.) would mean that you'd have to write native code + JNI to access the native Cocoa UI API. Apple used to have a nice Java/Cocoa bridge API for desktop OS X, but they're no longer updating it and its use is deprecated. Given that, I highly doubt they'd have a Java/iPhone bridge API. Hence, you'd have to write all the UI for your app in native code anyway. So why bother with Java at all on the iPhone?

      --
      If you reply, do so only to what I explicitly wrote. If I didn't write it, don't assume or infer it.
    5. Re:Why? by shutdown+-p+now · · Score: 5, Informative

      I have not found any really compelling Java apps on my desktops (Linux and Mac OS), are there really any reasons for needing them on my phone?
      J2ME is very different from desktop Java. It's one of the oldest APIs for handheld devices around, and there is a lot of stuff written for it already - tons of games, instant messengers, e-mail clients, and lots of other stuff. GMail Mobile is a J2ME application, and so is Opera Mini (granted, the latter not really needed on an iPhone or a decent smartphone, but priceless on plain Java-enabled mobiles like my Sagem my301).

      So, if there are native apps, why would we want Java?
      Considering the above, the short answer is: to use all the stuff already available for J2ME for other platforms.

      Also, is my impression of Java outdated? Is it not slow, bloated (JRE + app), and have an ugly UI?
      It is still relatively slow, of course (well, what do you expect from a language that forces everything onto the heap?), but it certainly works good enough for plain GUI apps, even on low-end phones (those not even considered smartphones). Apps are small. Tthe size of J2ME runtime is usually hard to tell since there are many different ones available, and which one your phone uses is not always obvious. UI is an interesting question: J2ME GUI toolkit is specifically designed so that it does not enforce any specific L&F or interaction model, and a well-written J2ME application should have native L&F on any implementation, and be fully resolution-independent. For stuff like games, it still allows them to get a fullscreen canvas and draw whatever they want on it, and interact with the keypad/keyboard and touchscreen directly.
    6. Re:Why? by burris · · Score: 4, Insightful

      Given that the only popular Java application on Mac OS X, Azureus, is universally regarded as being slow, bloated, and ugly, I'd say the GP's impression is not at all outdated.

    7. Re:Why? by Anonymous Coward · · Score: 0

      I never even realized it was Java. Works fine for me.

    8. Re:Why? by huckamania · · Score: 5, Interesting
      JavaME is very easy to write and very easy to learn. Eclipse plus the ME extensions plus the phone emulators really makes developing a quick and dirty app for a cell phone very easy.


      I wrote this at night over about a month:

      Baby Cell

      This app lets me hand my phone (or an old phone) to my 3 year old and I don't have to worry about her calling anyone or erasing stuff. It's got basic password protection and I wanted to do more, but the end product has 15 songs, a bunch of shapes and colors, her own voice. It was more interesting when she was 2, but still, it was a fun project.

      Does anyone know yet what the cost will be to develop for the iPhone? It cost me nothing but time to write Baby Cell.

    9. Re:Why? by Billly+Gates · · Score: 1

      Your article is a great reason why we should fear DRM.

      WHen I read things like this from cell phone developers I only think its what exactly what Microsoft would love to do with desktop pc's and lock them into generic appliances where everything is rented out.

    10. Re:Why? by grimJester · · Score: 1

      So, if there are native apps, why would we want Java?
      Considering the above, the short answer is: to use all the stuff already available for J2ME for other platforms.
      And additionally, all the stuff not yet written that is easier to write for J2ME that natively for every phone OS.
    11. Re:Why? by darjen · · Score: 2

      So you're basing your assessment on one desktop app? I thought we were talking about JME, not J2SE. Anyway, speaking as an enterprise Java developer, for distributed business apps Java is hard to beat.

    12. Re:Why? by davester666 · · Score: 1, Troll

      Well, Seapine software seems to make their non-Windows client software using Java, and just for simple configuration tasks [ie, click a button to bring up a dialog to change a password], their apps were dog slow. But their server software crashed so much we had to switch to another product, that I have a very low opinion of their ability to code.

      But yes, this is off topic w.r.t. Java on the iPhone.

      However, what's the point of trying to get Java on the iPhone, other than to load craplets onto it.

      If you're going to bother making a first-class application, where it looks and behaves similar to Apple's iPhone applications, you're already making the UI totally iPhone-specific. And the back-end code can easily be in C [possibly even C++].

      --
      Sleep your way to a whiter smile...date a dentist!
    13. Re:Why? by kdemetter · · Score: 1

      "Java's default UI is still ugly"

      I guess that depends on the taste . Personally , i like the Java GUI .
      But i don't really care about the iphone , i'm looking into openMoko .

    14. Re:Why? by Anonymous Coward · · Score: 0

      I think anybody who tried similar apps in their Java or native versions can bring lots of examples where the Java version is slow as in dead-bradypus slow, unless your Java code links to a asm,C,C++ library to do the hard stuff. In that situation you get a faster app, but by using a native library you completely lose the portability factor, which IIRC was the #1 buzzword they used back in the day to sell Java to technically challenged PHBs.

      Java has zero reasons to exist outside Wall Street, and even there you can build better apps using lower level languages. It's not just about stability: some financial apps need very low latencies in order to respond very quickly to stock variations. A stack of Java calls, one on top of another, can literally burn your money even without crashing.

    15. Re:Why? by Anonymous Coward · · Score: 0

      Really?

      I always found that Java does everything, but nothing well.

      You still can't beat Perl with XML-RPC for distributed business apps

    16. Re:Why? by Sillygates · · Score: 2, Informative

      Java's default UI is still ugly If you are running windows, swing will use your windows theme (by default).
      And, as of jre 1.6.0 swing can also be set up to use gtk themes as well


      I wish steve jobs made that iPhone keynote a little more dramatic, by saying:

      "iPhone runs Solaris 10"
      Featuring core stability, and java!
      --
      I fear the Y2038 bug
    17. Re:Why? by tkinnun0 · · Score: 2, Interesting

      Uhhh, if the constant cost of a method call is the limiting factor, why not just get a processor with a higher clock frequency? I mean, would you trust your money on hand-written assembler in a world where regulations can change yearly and in a company which wants to skimp on the hardware?

    18. Re:Why? by Anonymous Coward · · Score: 0

      You also assume the developers for Azureus are the greatest devs available and thus made a perfect app that can't be sped up or written better. Their app may be slow because of their skills and not because of the language/platform they chose to use.

      And you, are desperately clutching at straws. Every Java I've used has been bloated and slow - from editors, to Genesys Workforce Management, to Siebel. They are all universally... dog-fucking-Java-slow, bloated and horrible.

      Can superb devs make Java desktop apps less of a clusterfuck... probably, but it would still be polishing a turd.

    19. Re:Why? by thePowerOfGrayskull · · Score: 1

      Also, is my impression of Java outdated? Is it not slow, bloated (JRE + app), and have an ugly UI? Only by about 10 years or so...
    20. Re:Why? by sciurus0 · · Score: 1

      Relatively slow compared to what? If you try the language shootout you'll see that it's almost universally faster than python, mono, and many other languages used for "plain GUI apps". Heck, the implementation of ruby in java is faster than the original C! The one place where java consistently lags is the startup time. Of course, this and other perceptions of responsiveness count for a lot.

    21. Re:Why? by Blakey+Rat · · Score: 1

      Do you give the same defensive reply when someone points out how crappy Visual Basic is?

      Seriously, though, you're right: It probably *is* possible to make a fast, stable and slick app in Java across multiple OSes. The problem is that nobody's done it yet; everything that people associate with the Java logo is slow, ugly and usually also buggy. What do you expect people to think of the technology?

      If Sun really wanted to push Java on the desktop, they should have developed apps to show it off themselves. Since they didn't, all the examples we have are crappy, and that's that.

    22. Re:Why? by Anonymous Coward · · Score: 0

      Your sad "benchmarks" and other forms of evidence will never convince me, crusader! Java IS and WILL ALWAYS be slow. *shakes fist with fury at screen*

    23. Re:Why? by Anonymous Coward · · Score: 0

      Well, Java on Mac *has* real problems, that's nothing new.

      Java apps on Solaris, Linux and Windows usually behave just like native apps, so this is not Java's fault.

    24. Re:Why? by Moochman · · Score: 1

      They did. It's called NetBeans.

    25. Re:Why? by Blakey+Rat · · Score: 0, Flamebait

      If "NetBeans" is supposed to be an example of a great app in Java, they're doing a terrible job. I've never heard of "NetBeans" nor do I even know what it's for. (Some kind of web-based coffee recipe storage database?)

      The Java apps I know are Azureus, Lotus Notes, OpenOffice.org, Limewire, all of which are slow and bloated and most of which have weird alien UIs that don't match the host OS at all.

    26. Re:Why? by Anonymous Coward · · Score: 0

      Requiring that the UI for an application "match" all of the other applications is the computing equivalent of riding a bike with training wheels.

      Does the UI of your refrigerator "match" the one in your car? No, it doesn't. Why? Because they're designed for COMPLETELY DIFFERENT PURPOSES.

      Now, you COULD probably design a car and a refrigerator that had some level of "consistency in the user interface", but that would give you a car and a refrigerator which both sucked ass.

      Perhaps rather than worrying about whether the UI "matches" you should start worrying about whether it's GOOD.

      I don't use any of the applications you mention, so I have no idea whether the UIs are GOOD. I do know, however, that you aren't going to get GOOD interfaces if you start off by requiring that they "match" the UI of some completely unrelated application.

      The UI should "match" the task at hand, not some arbitrary "guideline" excreted by Redmond or Cupertino.

      Oh, that'd require that you actually engage in some thinking, and spend a little time learning how to use the program?

      Sorry about that.

    27. Re:Why? by Blakey+Rat · · Score: 1

      Ok, I don't know what "NetBeans" is, and therefore my post is flamebait. I apologize to whoever moderated that post as flamebait for trying to imbue it with a teeny bit of humor, and I hope that the surgery to remove the stick from your ass proceeds with no complications.

    28. Re:Why? by Ilgaz · · Score: 1

      Given that the only popular Java application on Mac OS X, Azureus, is universally regarded as being slow, bloated, and ugly, I'd say the GP's impression is not at all outdated. I am using it on Mac Mini G4 1.42 Ghz with 1 Gig RAM. It works. The "bloat" is gone in Version 3, it is there for interested in "Advanced" tab which is off by default. I have no clue what people call "bloat", it is in fact a fire and forget type of client, it can be used without any settings.

      Limewire which is another pure Java Application is always at top 10 of Apple downloads.

      Java is not just file sharing. If Apple wants to make sense in business/science/military, they have to fix their Java or give it to someone who can. Linux/PPC has Java 6 for ages thanks to IBM.

    29. Re:Why? by Anonymous Coward · · Score: 0

      Ya, if only there was some kind of searching engine one could use, or some kind of encyclopedia in the form of a wiki where one could look up this information... Maybe some day.

    30. Re:Why? by Ilgaz · · Score: 1

      I have not found any really compelling Java apps on my desktops (Linux and Mac OS), are there really any reasons for needing them on my phone?

      Especially given the fact that getting a java port relies on having an open SDK for the iPhone -- meaning native apps can be produced. So, if there are native apps, why would we want Java?

      Also, is my impression of Java outdated? Is it not slow, bloated (JRE + app), and have an ugly UI? My bank and their millions of consumers who all got a highly secure password generator (J2ME) in age of phishing can't care less about how ugly Java is. They all got the password generator free which does work on any J2ME phone except iPhone and that generator saves them from $90+ private data watching firewall and fixed password.

      iPhone market share is still a joke while I hope it will become the Symbian rival. Win CE is the real danger to standards and market. If I call my bank and tell them I got a $400 iPhone which doesn't have J2ME which exists on $60 phones and tell them to code a iPhone .application just for 1% of market, they will laugh at my face.

      That is only a bank example. There are lots of examples about iPhone and stupid choices Apple made such as no SIM contacts support (backup!), no MMS support.

      We want iPhone to be a true Symbian competitor and nothing else. I am an Apple user myself. If Java isn't there just because it is "ugly", Apple should stay making iPods since 2 billion devices and their users doesn't agree to their Java opinion.

      "Sun estimates the total Java Economy to be more than (USD)$100 billion in sales annually driving an additional $110 billion in related IT spending
      The Java economy includes 2.5 billion smart cards, 800 million PCs shipped with Java, 1.85 billion Java Powered phones (source: Ovum), and over 180 telecom providers who deploy Java technology based content/services."
      http://www.sun.com/java/everywhere/#facts
  2. Apple & Java don't play nice anymore by Templar · · Score: 4, Insightful

    Apple can't even commit to Java 1.6 for OS X -- I think you're being a wee bit optimistic.

    1. Re:Apple & Java don't play nice anymore by corychristison · · Score: 1

      Apple & Java don't play nice anymore
      Ah... I know what you mean! Never dip your apple slices in your java! It doesn't taste as good as you may think.
    2. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      Wake me up when Microsoft commits to Java 1.6 for Windows.

      Or 1.5.

      Or 1.4.

      Or 1.3.

      Or 1.2.

      Or 1.1.

    3. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      As a home hobbiest, I would want to use Java 1.6 and leave Java 1.5 behind.

      But as a Java software developer, I'd rather have a great Java 1.6 implementation than a half-baked implementation.

      Few professionals Java developers I know of have migrated to 1.6 - as 1.5 is rock solid. As a developer, I'd rather remain on the rock solid platform than the newest platform.

      As I am sure you know, most programming systems take years to get to maturity. Java is no exception. Developers will move to 1.6 only as soon as all of their system's dependencies are delivered on the new platform.

    4. Re:Apple & Java don't play nice anymore by olivierva · · Score: 1

      Everyone calm down! Changes are Java 6 will be released in a couple of weeks time, since Apple always does a major Java update after a OS release, read this blog: http://stuffthathappens.com/blog/2007/10/28/os-x-java-definitive-timeline/

    5. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      Yeah, most of the stuff I use still runs fine on 1.4, actually. A few things require 1.5. Nothing I've used requires 1.6 except Sun's own alpha of Project Wonderland, which is buggy as shit (as would be expected for an alpha -- it's pretty cool nonetheless).

    6. Re:Apple & Java don't play nice anymore by petermgreen · · Score: 1

      No but you can download up to date JVMs for windows from sun, you can't do that for OS-X.

      How much of this is suns fault and how much of it is apples fault I have no idea.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    7. Re:Apple & Java don't play nice anymore by petermgreen · · Score: 1

      I guess thats one way to try and persude people to fork out for the upgrade. Unfortunately since many of them probablly won't anyone who develops in java and has OS-X as a target is probablly going to be stuck with 1.5.x for some time.

      Also it looks like that timeline is just speculation based on past behaviour not actual data from apple despite the title.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    8. Re:Apple & Java don't play nice anymore by JebusIsLord · · Score: 1

      What did they add to 1.6 anyhow? I know 1.5 just introduced a bunch of non-OO crap to please .NET developers. Generics were cool, but otherwise 1.5 was a waste of time.

      --
      Jeremy
    9. Re:Apple & Java don't play nice anymore by KugelKurt · · Score: 1

      Did you even read TFA? It says nowhere that Apple is doing a Java port to the iPhone, but that a Sun developer expects the community to do an independent port.

    10. Re:Apple & Java don't play nice anymore by Professor_UNIX · · Score: 1

      How would you load this port on the iPhone though? It's a closed platform. Even if Apple releases a 3rd party SDK in February, I guarantee you they'll do some stupid like require that developers submit binaries to be signed to Apple and users will need to download applications from the iTunes store for a low-low-low convenient fee for maintaining the signatures and bandwidth for serving up the applications. Something nice and round like $4.99 for a "freeware" app hosting and then perhaps off developers to let them sell their shareware and commercial apps through iTunes store for a percentage of the profits. After the whole ringtone fiasco I would not put it past Apple. It's utterly ludicrous I can't take a sound bite that I make myself and load it onto my iPhone.

    11. Re:Apple & Java don't play nice anymore by holywarrior21c · · Score: 1

      An anonymous reader writes "With the first anniversary of open-source Java coming up November 13, a Sun official believes the project could bear a fruit much sought-after in the Java community: a Java port to the Apple iPhone. Apple has not released a version of Java capable of running on the popular device. But Sun's Terrence Barr, technical evangelist for the Java mobile and embedded community, believes Apple's plans to release an SDK for iPhone in early 2008 may result in the open-source phoneME version of Java ME winding up on iPhone." He sounds like pro-liberal-religious official...

      Apple can't even commit to Java 1.6 for OS X -- I think you're being a wee bit optimistic. And you sound like fundamentalist religious counselor. "stick to java 1.4 because it came with OS X"
      just kidin' :)....nahh i'm serious. it's about friggin time when apple buys Sun.
    12. Re:Apple & Java don't play nice anymore by ClassMyAss · · Score: 2, Insightful

      I don't know that I can agree that everyone should just calm down - a lot of people moved their Java development over to OS X because Apple made a huge deal about what a fan-freaking-tastic platform OS X was to code Java on. But 11 months later than the Win/Lin release? Come on now...that kind of delay does not indicate that they are taking developers very seriously, especially since said developers have been explicit ever since the ridiculous 1.4 delay about the fact that being up-to-date with Win/Lin is crucial to them. If they are not putting enough resources behind this to get the new version out in a timely manner, then it's pretty clear how much they care about the customers making the requests, and I think these customers are right to be a little pissed.

      Mac is a great platform, but if you're trying to stay on the cutting edge in Java, you need to be running Windows (Linux, meh - bugs always take a lot longer to disappear from the Linux JVMs than the Windows ones, so...). Lucky for me, most of my work is 1.4 targeted so it doesn't really matter.

    13. Re:Apple & Java don't play nice anymore by ravenspear · · Score: 1

      Did you even read TFA?
      You must be new here.
    14. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      Wasn't Leopard late thanks to the iPhone? Maybe Java for Leopard is late because Apple has their people working on Java for the iPhone instead.

    15. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0
      Well, I think again the clue is to read the FTA, or even the fucking summary :

      But Sun's Terrence Barr, technical evangelist for the Java mobile and embedded community, believes Apple's plans to release an SDK for iPhone in early 2008 may result in the open-source phoneME version of Java ME winding up on iPhone.

      So they're just waiting for the official SDK, you know, the thing that will officially allow people to develop for the iPhone and therefore will officially allow people to put third party software on their phones.

    16. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      Yeah man! You're the hobbiest guy I know.

      It's spelled hobbyist you dumb fuck.

    17. Re:Apple & Java don't play nice anymore by Anonymous Coward · · Score: 0

      1.4 targeted? I feel for you. I couldn't even dream about going back from 1.5 after all the nice features that came with that release. Btw, what do you do? Mobile programming?

  3. Ready for business. by rice_burners_suck · · Score: 2, Insightful
    I can't tell whether it was Apple's intention from the beginning to deliver the SDK for 3rd party development or if that's something that happened in response to industry-wide criticism, but either way, it is crucial to the acceptance of the iPhone for large business. A port of Java is icing on the cake, although that may become more important with time.

    Speaking of being ready for business, the rhetoric across just about all media is that the Mac is a great computer for home use but isn't ready for business. Can anyone shed some light on why this is the widespread perception? The Mac, coupled with Mac OS X Server, can do just about anything that a Windows or Linux network can do, and even if it can't, you can always install some Windows or Linux servers to take care of whatever loose ends are left over. Couple that with iPhones capable of 3rd party development and Java, and it's a wonderful system for business.

    1. Re:Ready for business. by larry+bagina · · Score: 1

      Depends what your business is. Some of the software I use daily is Windows only. Some of it is IE only. Some of it is IE 6 + .NET 1.0.2 only.

      --
      Do you even lift?

      These aren't the 'roids you're looking for.

  4. So what happened to the Apple Java luvin'? by maggard · · Score: 4, Interesting

    A few years ago Apple was all over Java.

    Apple rewrote their WebObject platform into Java. They built bindings into MacOS 10.3 making Java apps 'native', heck spent serious resources Aqua-fying Java to look native.

    So now there are a coupla Mac apps that are actually Java.

    But the bindings have been depreciated. And Apple is getting slower & slower about releasing Java updates. All the while additional toolsets are getting added, receiving support, etc.

    Then there's the iPhone, which Apple has made clear they've little interest in adding Java to.

    So does Apple perceive Java as moving into the also-ran category? Something that isn't gonna pay off development & support effort as a major player on the desktop? What makes it inappropriate for the iPhone?

    Are there any Java-on-Mac developers willing to share their insights? Folks who actually use it, pay attention to it on an ongoing basis, etc.?

    --
    I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
    1. Re:So what happened to the Apple Java luvin'? by mccalli · · Score: 5, Interesting

      So does Apple perceive Java as moving into the also-ran category? Something that isn't gonna pay off development & support effort as a major player on the desktop? What makes it inappropriate for the iPhone?

      I believe that's their perception, yes. I believe it's wrong too.

      Are there any Java-on-Mac developers willing to share their insights? Folks who actually use it, pay attention to it on an ongoing basis, etc.?

      Sort of - allow me to pontificate for a moment please.

      I develop a lot of Java code, but it typically gets deployed on other platforms other than the Mac. It's a mix of desktop and server-side, and it's for internal apps only.

      I would like to develop this using my Mac - it's not that I will unleash a mass of Mac Java apps on the world (though I have unleashed one), it's more that it allows me to pick the Mac as my daily working tool. I believe Apple have underestimated the demand for Macs amongst the more technical crowd, and I am hopeful of an OpenJDK port to OS X to take this worry away.

      To summarise: perhaps Apple are right about desktop apps in Java on their platform. I still believe they're wrong in the general case though, and that they should still either keep up with the JDK or just help with the port to the OpenJDK and let others keep up for them.

      Cheers,
      Ian

    2. Re:So what happened to the Apple Java luvin'? by fermion · · Score: 1
      Let's look at this. Supporting the latest version of Java and binding it directly to MacOS is a development issue. It is not necessarily going to effect the Mac end user. Developers are expected to primarily use XCode. Not supporting the latest version of Java is simply going to mean that developers are not going to use macs, and Mac users are not going to be able to use the absolute latest software. To me this is bad, but Apple will do what Apple will do. Java is still available, and I,as an end user, can still run the Java apps.

      The question is why isn't java important to Apple anymore. One reason is that Java is not all that incredible important, it is one to get cross platform application, but not the only way, and cross platform is not as important as it used to be. Another reason could be OO.org, and the fact that after many year there is still no MacOS native port of it. Perhaps Apple could have done more. Perhaps by backing Java 100% Apple was doing more, and perhaps Sun was not.

      To me the depreciation of Java is more a sign that Apple is once again going off on it's own, a la iWork, rather than depending on unreliable third parties.

      --
      "She's a scientist and a lesbian. She's not going to let it slide." Orphan Black
    3. Re:So what happened to the Apple Java luvin'? by burris · · Score: 1

      Maybe they dropped it because nobody was using it. A massive development effort that could be used to improve the tools that Mac developers actually use. It's not like Windows app developers use Java either, so Apple isn't losing much in the way of cross platform apps (are there ANY popular apps for the mac written in Java other than Azureus?)

      Apple has done quite a bit to improve their development environment in Leopard, they aren't scorning third party developers at all on the Mac.

    4. Re:So what happened to the Apple Java luvin'? by Phroggy · · Score: 1

      (are there ANY popular apps for the mac written in Java other than Azureus?) NeoOffice.
      --
      $x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
      $x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
    5. Re:So what happened to the Apple Java luvin'? by Anonymous Coward · · Score: 0

      I've been working on a financial reporting application that uses Java. One of our requirements during the design phase was that the application had to work on all major operating systems (Windows, Mac, Linux, etc) because we couldn't force our users to standardize on an O/S (we're a government agency, so we have a responsibility to support everyone who might need to use the app).

      I've been using NetBeans to develop the application, and Matisse to design the application's user interface. I'm also using JavaDB as an embedded database to allow the users to maintain their own records of their financial reports.

      When it was time to test on Linux, everything worked, because like Windows, Linux lets you install the latest, greatest Java runtime from Sun. My development machine used Java 1.6u2, and my Linux machine did also. No problems showed up on either platform.

      But when it was time to test on a Mac, nothing worked. It turned out that Matisse used GroupLayout as a layout manager, and this is only available in Java 1.6. I had to re-do EVERY SINGLE USER INTERFACE ELEMENT because Macs are stuck with JDK 1.5. This was extraordinarily irritating.

      In case anyone out there has to go through the same annoying experience, here's some useful info I wish I'd had three months ago:

      If you haven't started your project yet, USE ONLY METHODS AND OBJECTS FROM JDK 1.5, and use AbsoluteLayout instead of GroupLayout in Matisse.

      If you've already started your project, and you have to "fix" it so it'll run on a Mac, try this:

      1. Change your Java code level to 1.5 in your project preferences.

      2. Install a 1.5 JDK on your machine, and target it in your project preferences (so you compile with 1.5).

      3. FOR EACH WINDOW, in the visual editor:

          A. Drag the lower bounds of the window itself down until it's 2x its current size.

          B. Drag a new JPanel onto the open area and expand it to fill the whole area.

          C. Right click the JPanel and set the layout to AbsoluteLayout (this is JDK 1.5 friendly).

          D. Select all of your window's components by ctrl-clicking them and drag them all down to your panel, keeping them in the same arrangement.

          E. Drag the panel up to the top of the window, set the window's layout to AbsoluteLayout, and resize the window and panel attractively.

          F. Recompile.

      OH, and by the way, I had to take out the isClosed() method call for ResultSets, so I had to recode some things there as well.

    6. Re:So what happened to the Apple Java luvin'? by jockm · · Score: 1

      LightZone A truly great photo editor (and based on Ansel Adams' zone system), is written primarily in Java (there is some native code for where Java can't fully meet native look and feel). It is a great example of an app that is written in Java. There are some others out there, but they don't make a big deal about being written in Java - they just are.

      Nor should they. I don't buy/use software based on what it is written in. I pick it based on how it does at the job in question. Most of the software I write is in Java, not for idealogical reasons, but because I know it well, it does what I need, I have a good choice of tools, and it is reasonable cross platform.

      --

      What do you know I wrote a novel
    7. Re:So what happened to the Apple Java luvin'? by maggard · · Score: 1

      ... are there ANY popular apps for the mac written in Java other than Azureus?

      Cyberduck is one I use regularly, a (s)ftp client, and it is indistinguishable from a Cocoa-based application. Indeed Cyberduck is a showcase of MacOS technologies: Spotlight, Bonjour, Keychain, Applescript, iDisk, drag-'n-drop, etc.

      I've always assumed there are vertical applications able to operate on the Mac because of Apple's Java support, much like other *nix-based code can be migrated without major (non-GUI) trauma.

      --
      I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
    8. Re:So what happened to the Apple Java luvin'? by maggard · · Score: 0

      Thanks - yours is exactly the sort of viewpoint I was hoping to hear from - real life tool users, not armchair zealots.

      So in your opinion an up-to-date JDK is what you require, and could live without OS hooks, native-GUI, etc.?

      Do you think the special Java bindings, native-GUI, etc. are worth the effort on Apple's part, or do you believe those would continue to be under-utilized?

      --
      I don't read ACs: If a post isn't worth so much as a nom de plume to its author then I wont bother either.
    9. Re:So what happened to the Apple Java luvin'? by ThePhilips · · Score: 0

      1st. There are really few desktop Java applications. Investments to port and support JDK/JRE/bindings are way too high.

      2nd. Java on iPhone. Java on mobile phones happened not because it was some advantage of Java over other technologies. It happened because industry didn't managed to come up with standard for interfaces. Many efforts defaulted. And Sun had seen that as market opportunity.

      3rd.

      So does Apple perceive Java as moving into the also-ran category?

      Absolutely. And who doesn't?

      In last five or so years, I have seen Java used only and solely by Java software developers. Java secured its place in server room - as default integration technology. On desktop side it failed miserably and was forgotten many years ago. You can't expect Apple - a desktop hardware/software house - to care about such irrelevant stuff.

      --
      All hope abandon ye who enter here.
    10. Re:So what happened to the Apple Java luvin'? by Blakey+Rat · · Score: 2, Insightful

      Speaking as a Macintosh user (and not a developer) Java does, and has always, sucked on Macintosh. I've yet to find a single Java app worth running, and it's only recently that Java applets on websites have actually worked without crashing the browser-- timely, now that most websites have ditched their Java applets.

    11. Re:So what happened to the Apple Java luvin'? by M.+Baranczak · · Score: 2, Interesting

      Are there any Java-on-Mac developers willing to share their insights? Folks who actually use it, pay attention to it on an ongoing basis, etc.? I'm a professional Java-head, and I use a Mac most of the time. But if this shit keeps up, I might have to switch to Linux for my work (certainly not Windows, and probably not Solaris either).

      The stuff I write is mainly server code that gets deployed on *nix boxes. (Which I think is Java's real strength - desktop Java apps and web applets seemed like a good idea at one point, but they're a lost cause.) I don't deal with the Java GUI libraries much, and I'm not particularly interested in the iPhone. I just want a stable, user-friendly Unix system that lets me run all the standard FOSS tools and that supports the latest versions of Java. Which Apple just doesn't do. Fortunately, most of the people I work for have a conservative approach to choosing their platforms, and they tend to stay away from the bleeding edge... and Java 1.6 doesn't seem to offer anything revolutionary, anyway... but the present situation is unacceptable.

      The thing that really pisses me off is Apple's secretive attitude. They actually had a beta release of Java 1.6 available for download - but a few weeks ago, they pulled it off their site with absolutely no explanation. And nobody knows if they're even working on it anymore.
    12. Re:So what happened to the Apple Java luvin'? by mccalli · · Score: 2, Interesting

      Thanks - yours is exactly the sort of viewpoint I was hoping to hear from - real life tool users, not armchair zealots.

      No problem - hope you've got email notification on because I switched the machine of after making that post and missed your reply.

      So in your opinion an up-to-date JDK is what you require, and could live without OS hooks, native-GUI, etc.?

      Yes - that's exactly it. There will be some need for customisation, specifically the menu bar code on client-side, but that's already done and works very well. Keeping the look'n'feel together can be a job for the porters on the OpenJDK if required - I'm sure there'd be enough interest that a decent job would be done, but it's not a prime concern either of myself nor any of the other Mac-using Java coders I deal with.

      Do you think the special Java bindings, native-GUI, etc. are worth the effort on Apple's part, or do you believe those would continue to be under-utilized?

      I believe they'd be under-utilised. I appreciate the native look'n'feel and the ability to sort out the menu bar as per a normal Mac app, but beyond that I wouldn't use anything Mac-specific anyway. That's just for my client code too, which isn't all that much compared to the server-side. Quite a lot of my client code these days is written in SWT as well which isn't affected by Apple's code.

      Essentially you've hit it though - an up-to-date JDK is what I'm after, rather than the bells and whistles of OS integration.

      Cheers,
      Ian

    13. Re:So what happened to the Apple Java luvin'? by mrosgood · · Score: 1

      I would like to develop this using my Mac...


      Exactly. Half, if not more, of the geeks in our local Java user group and design patterns study group carry around Mac laptops. I personally ported some native stuff to the Mac, just so I wouldn't have to develop on the company issued Dell laptop (piece of crap).

      Cheers, Jason Osgood / Seattle WA
  5. Is Apple interested in Java? by Diomidis+Spinellis · · Score: 4, Interesting

    While an open source Java port would be an interesting development, the real issue is whether Apple is interested to support Java on its platforms. A recent Javalobby article, titled So Long Apple. The Party's Over, gives several arguments supporting the position that Apple is doing a lot less than what it should in order to properly support Java. A high-quality implementation of the Java virtual machine needs all the help it can get from the underlying platform. For an illustration of this, see how slickly Java runs on Sun's Solaris. If Apple isn't interested to put its weight behind Java, it's unlikely that Sun will fill this role. Sun is putting a lot of effort to tune Java on the Windows platform; I doubt they have the resources and motivation to do the same with Apple's platform, due to the significantly lower market share of Mac OS X. So, while an open source port of Java is nice, full-hearted support from Apple would be a lot better.

    1. Re:Is Apple interested in Java? by Jeff+DeMaagd · · Score: 1

      Are iPhone users really that interested in Java? Given that it's an interpreted environment, I question its efficiency. That speed and efficiency loss is not that critical on a desktop, but when you get a palm-sized computer, it can become an issue.

      Personally, I would rather make a native app just for iPhone than do a Java app for iPhone. iPhone really doesn't have a market fragmentation issue, it's its own segment. Given how fragmented the phone market is, a Java app would be better as a whole, but I really don't care about them.

    2. Re:Is Apple interested in Java? by catmistake · · Score: 1

      Jobs has said in interviews that he sees the software industry moving away from Java, and towards such things as web (Ajax) and Flash apps. So, the question isn't whether Apple is interested, but whether S.Jobs will listen to those that are interested in Java. 5 years ago there was no question, Java was better on OS X & PPC than any other platform... but Steve lost interest, and developers that moved to Mac are now abandoning it because of this attitude apparently cuminating in no plans for Java 6 on Leopard (but I think the jury is still out... Apple can be acrobatic with technology, and in a blink change their minds and suddenly give everyone everything they ever wanted in a platform).

    3. Re:Is Apple interested in Java? by chromatic · · Score: 1

      Are iPhone users really that interested in Java? Given that it's an interpreted environment, I question its efficiency.

      I don't see why it's necessarily inefficient. I wouldn't expect a phone application to perform a lot of number crunching (except for media decoding), so the kinds of apps developed for a phone are likely either network or UI bound, if not both. It doesn't really matter what language you use when your app spends most of its time blocking.

    4. Re:Is Apple interested in Java? by asdfghjklqwertyuiop · · Score: 1

      Are iPhone users really that interested in Java? Given that it's an interpreted environment, I question its efficiency.


      Considering that iPhone users consider the phone's web browser to be an acceptable way to write iPhone apps, I highly doubt efficiency is the reason for their lack of interest.

    5. Re:Is Apple interested in Java? by Trinn · · Score: 1

      most iPhone users do not consider the web an acceptable way to write apps (except for just a very few things already appropriate for the web), its just that apple hasn't allowed anything else *yet*, so we're stuck with either a (very good these days) third party created "hack" to allow native code, or the webapps

    6. Re:Is Apple interested in Java? by Anonymous Coward · · Score: 0

      The iphone actually has a chip, that natively interprets java bytecode as an alternative native language command set, built into it. So I doubt very much that you'd see much of a performance difference between native and Java apps.

      "ARM processors traditionally support two instruction sets; ARM state, with 32-bit instructions and Thumb state which compresses the most commonly used instructions into 16-bit format. The Jazelle technology extends this concept by adding a third instruction set, Java bytecode, to the capability of the processor, together with a new Java state."

      http://blogs.zdnet.com/Burnette/?p=338

    7. Re:Is Apple interested in Java? by Anonymous Coward · · Score: 0

      That JavaLobby article is bogus. One of the complaints it makes is that Java JOptionPanes show the Java icon in 10.5. That's not quite it - it now shows the application icon, which was a change made to conform to Apple's UI guidelines - Java apps are the ONLY apps that DIDN'T show their application icons in JOptionPanes.

  6. FreeBSD Java 6 on Leopard by javacowboy · · Score: 3, Informative

    An enterprising developer is already working to get FreeBSD's Java 6 on Leopard:

    http://www.theserverside.com/blogs/thread.tss?thread_id=47500

    --
    This space left intentionally blank.
    1. Re:FreeBSD Java 6 on Leopard by Anonymous Coward · · Score: 1, Interesting

      Don't you think it's totally sad that an organization staffed by volunteers can port 1.6 before a multi-billion dollar company like Apple?

      Why even bother with them? They're obviously not interested and anyway you'd have to work around Leopard's extensive catalog of bugs to get Java running.

    2. Re:FreeBSD Java 6 on Leopard by KugelKurt · · Score: 1

      I really don't think that this particular Java port will run on OSX without X11.

    3. Re:FreeBSD Java 6 on Leopard by ChunderDownunder · · Score: 1
      Nope, someone would have to write a peer in Cocoa for each AWT component.

      [Disclaimer: I haven't owned a Mac since the 68k days, my casual interest is solely as a developer wishing to deploy to 1.6 for education.]

      The task is theoretically doable for a Cocoa developer but a non-trivial task requiring many man hours. But most Cocoa developers would be in paid employment writing innovative OS X applications, so it's doubtful sufficient numbers would volunteer their time supporting 'the enemy' - i.e. a rival (complimentary?) platform in Java.

      This is the problem with writing a cleanroom Cocoa AWT. OS X is a minority platform with relatively few developers fluent in Cocoa and objective-C and further and few companies who would see the business case for such a port.

      Were someone to sponsor the work, they might design a Java/Cocoa integration layer that was flexible enough to bind to both AWT and SWT (the eclipse toolkit). The eclipse folks based their SWT on Carbon which will need replacing as time goes by, particularly with the SWT/AWT integration issues of mixing Cocoa and Carbon in the same application.

      Luckily a free software binding for Java exists already, it's called Jigs. Perhaps this would be a starting point than coding in raw objective-C/JNI.

    4. Re:FreeBSD Java 6 on Leopard by KugelKurt · · Score: 1

      Or Apple could release their Cocoa port as open source.

  7. Re:jdk by Capt.+Fodder · · Score: 1

    I agree; it really isn't as bad as some would make it out to be. I'm not an Apple fan so I really don't care about the iPhone part, but I'd like for Sony to officially do this for my PSP. Certainly not holding my breath, though...

    --
    "Fixed" as in car, or "fixed" as in cat?
  8. No Java no apss by postmortem · · Score: 0

    Surely they won't use .NET ports.

    Java + nice custom Swing UI library + bunch of Java experts in industry ready to code for iPhone is very promising combination, hardly there's alternative.

  9. J2ME? by wzinc · · Score: 1

    Well, since the iPhone is running a scaled-down OSX, maybe they could go all the way and port J2SE to it...

  10. Java = Lower quality apps? by RudeIota · · Score: 2, Insightful

    Don't get me wrong - Java SHOULD have been on the iPhone and its almost nothing but a positive thing...

    BUT... Since Java hasn't been an option, people have been writing and porting native applications to the iPhone, even without the SDK.

    Assuming we can all agree that usually native > Java, so I'm afraid this may lower the overall quality of available apps. Understandably, developers don't want to write native applications for every single device. Let's be honest though - Java is a shortcut - and primary reason anyone chooses to develop with it is portability and portability alone...

    Not having the option of writing apps in Java equals more native apps - which I think most people would prefer. I think this was Apple's intention. I also believe it is silly for them not to embrace Java, but I do believe this is a very real consideration.

    --
    Fact: Everything I say is fiction.
    1. Re:Java = Lower quality apps? by Billly+Gates · · Score: 1

      Say what you want on swing in general java desktop applications but javaME really is sweet.

      Google maps load in seconds on my cell phone with its tiny 200 mhz processor. I imagine with the more powerful Iphone that javaME would run quite well.

      Java really is not that bad for server and micro apps.

    2. Re:Java = Lower quality apps? by Anonymous Coward · · Score: 0

      Not having the option of writing apps in Java equals more native apps Without the option of releasing Java apps, none of the apps I've already written will be on the iPhone. Nor am I about to start writing all my upcoming apps in two languages. Sum: Not having the option of writing apps in Java equals less apps.
    3. Re:Java = Lower quality apps? by Anonymous Coward · · Score: 0

      don't worry - plenty of people will be happy to release iPhone apps that have equal to or greater than the functionality of your apps :)

    4. Re:Java = Lower quality apps? by quanticle · · Score: 2, Insightful

      Not having the option of writing apps in Java equals more native apps

      No. You forget that there's a third option - not releasing the app for the iPhone at all. Without a Java interpreter, application providers may decide that the marketshare of the iPhone is too small compared with the marketshare of phones that support Java, and decide not to release their applications for the iPhone. In other words, not having Java apps equals fewer apps, not more native apps.

      --
      We all know what to do, but we don't know how to get re-elected once we have done it
    5. Re:Java = Lower quality apps? by Anonymous Coward · · Score: 0

      Not really a third option considering all the applications that already have been ported to the iPhone even without an SDK or any blessing from Apple. To the extent it is a third option, it is meaningless since the applications are being made native, maybe not by the Java programmers but by their competitors.

    6. Re:Java = Lower quality apps? by Dahamma · · Score: 1

      Let's be honest though - Java is a shortcut - and primary reason anyone chooses to develop with it is portability and portability alone...

      Hmm, I would strongly disagree. Portability is a factor, but ease of development and security are huge factors for Java on a cell phone (or any platform!) Would you allow any native application/ActiveX control to run in your web browser?

  11. Re:jdk by Anonymous Coward · · Score: 0

    > java is a nice language

    I disagree with both you and the "pleasenojava" taggers, Java is an awful language to work in; the JVM is what matters. I'm not a purist that believes C-legacy imperative programming languages are bad or need replacing. So for me, Scala is interesting and a definite pointer to the future ... as is ES4!

  12. It all depends by 0xdeadbeef · · Score: 4, Insightful

    Will the iPhone's SDK be open, or will it be closed?

    Java is a hole in the "security" of devices, in that it allows the execution of arbitrary code outside of the device's native "security model". And I use scare quotes because by security, they really mean control, and by security model, they mean control over who is or isn't allowed to produce software for the device, and run software on the device. If the Java runtime were trusted, then every Java application has the same rights as the Java runtime.

    But Java has also been used by those who are legitimately concerned about security, because the virtual machine does actually make the execution of injected code very difficult. And by supporting the runtime natively, it actually gives you better control over what executes and who can execute it.

    But that makes it easier to limit the features available on the devices, so you can claim to support third party software and still put up an impenetrable wall between applications and the useful, built-in capabilities that the carriers want to trick customers into believing are special "services" they must pay more for. Bluetooth, GPS, camera, and even networking have found their APIs stripped from Java on certain carriers' devices.

    If Apple produces an open SDK, then putting Java on the iPhone is simple matter of porting it. Apple doesn't even need to be involved.

    But if Apple uses code signing to control who is and isn't allowed to release software for it, you can forget Java ever appearing, because then anyone could write software for it. They don't seem to be at all interested in supporting Java themselves.

    1. Re:It all depends by 0xdeadbeef · · Score: 1

      It may be bad form to reply to ones own comment, but I'm shocked no one has mentioned Android yet.

      The reason Java has such a bad reputation on mobile devices is because the applications tend to suck or tend to be toys, and most of them are both. There is nothing wrong with Java itself. The problem is that MIDP is damn near useless for doing anything important. The controls look like ass, the base system is crippled, and you can't trust that the JSRs you require are on all the devices you want to support.

      Android could change all that. We may not be wanting Java on the iPhone, we may end up wanting Android specifically on the iPhone. Java can do great things - witness JBoss and the BlackBerry - so I am eager to see what Google has done with it.

    2. Re:It all depends by Anonymous Coward · · Score: 1, Insightful

      If the Java runtime were trusted, then every Java application has the same rights as the Java runtime.

      This is FUD, complete and utter rubbish. JVM provides very fine grained control of what code running inside it can and cannot do. That includes file, network and peripheral access. That stuff was in Java since day one, wake up and smell coffee.

      Google 'Java security manager' or 'Java sandbox'. This can be done on per application basis, you can have more and less trusted apps running at the same time with different privileges.

    3. Re:It all depends by 0xdeadbeef · · Score: 1

      LOL. Someone fails at reading comprehension.

      Java privileges don't mean jack if the underlying platform is hostile to Java to begin with. Your runtime won't have the capabilities to limit.

    4. Re:It all depends by Anonymous Coward · · Score: 0

      we may end up wanting Android specifically on the iPhone

      What are you smoking? The iPhone is, well, an OS X phone made by Apple. Android is a stack entirely based on Linux. How could you ever end up wanting Android specifically on the iPhone when Android is meant to be used by phone manufacturers who wants a free, standardized, Linux OS for their phone? I think Android is not what you think it is.

      I agree 100% that developing Java apps for cellphones is a major pain: buggy JVMs, incomplete implementations not respecting the (very often flakey) specs, spooky JSRs support, etc. And it's true that Android may solve this to a point: Esmertec is a major JVM vendor for cellphones and they're part of the Android alliance so who knows... Maybe there shall be a standardized Java on all Android-powered phones, which would be wonderful (most Java inconvenience would be fixed and you keep the main benefit: the rock-solid-never-been-cracked-yet sandbox).

      Regarding developers anyway... I understand Android is very fine for phone manufacturers but they could still decide to close the phone to third party apps (say only allowing webapps and Java apps) and then the carriers could add another layer of crippling, not unlike what we have today.

      To summarize saying "we may end up wanting Android specifically on the iPhone", to me, is like saying "I want a phone that mimics the iPhone and that is powered by Linux instead of OS X and that is not produced by Apple".

      P.S: I'm not saying I would mind Apple chosing Linux for their next handset... But I'm not sure that would still be an "iPhone".

    5. Re:It all depends by Anonymous Coward · · Score: 0

      You're failing at writing comprehension I'm afraid... You made a blanket statement about java that is untrue and then proceed to "rewrite" your original post by blaiming a hostile OS and not java itself. Sprint and others can lockdown so only trusted apps can be installed and various jsrs enabled/disabled...you're wrong.

    6. Re:It all depends by 0xdeadbeef · · Score: 1

      Some press reports say that Java is an essential component of Android. This is the only direct reference I've found the OHA site:"

      "Thanks to the availability of our Jbed(TM) Java(TM) VM on the Android platform, we offer immediate compatibility to the standard Java ME world to enable Java ME-based mobile services with the Android platform." -- Jean-Claude Martinez, CEO of Esmertec

      There are other Java-oriented companies involved.

      Here's a good summary of the speculation: http://www.screaming-penguin.com/node/7316

      And here: http://blogs.zdnet.com/BTL/?p=6900

      And besides, I doubt there is any fundamental reason why you couldn't port a native C/C++ based toolkit to the iPhone's OS X.

  13. Well, it depends by SmallFurryCreature · · Score: 3, Interesting

    Eclipse is nice, an IDE for java at first but suitable for other languages, and because it is java, it could in theory run on all os'es that have java.

    Azureus is nice, a bittorrent client, and because it is java, it could in theory run on all os'es that have java.

    Opera for mobile phones is Java.

    These are just the ones I use most often.

    The bad thing about java is that the old people among us remember it from the web days when everyone used it to bloat their pages when we were on modems that already choked on dns lookups. When your memory was measured in MB and java wanted GB that is when we got our first taste of java and my god did it taste foul.

    Today that matters less, we got faster internet, we got more memory and more power, so while java still has a bloated feel to it, it doesn't matter anymore.

    To be fair, java is only "bloated" because it replicates what your "local" programs already have in the OS. IF java apps didn't do that, and heavily relied on the OS they wouldn't be portable.

    The most important reason to want java is that it would allow ANY java app to be run under it. No more need for signing, java would be signed, not the app running on it. Suddenly the iPhone would have a ton of third party stuff available.

    There is a reason american phones often lack the java capability that exists on the same model in the rest of the world, java opens up the phone.

    So java is good. Yes it is a bit bloated and a big of a hog, but that is the price for having apps that port easily.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

    1. Re:Well, it depends by h4rm0ny · · Score: 1

      There is a reason american phones often lack the java capability that exists on the same model in the rest of the world, java opens up the phone.


      Out of curiousity, and because someone here will know, what the presence of Java on mobiles in the US and how does it compare to the rest of the world? Is Java standard in most countries on modern phones but not the US, or is it much patchier?
      --

      Aide-toi, le Ciel t'aidera - Jeanne D'Arc.
    2. Re:Well, it depends by Anonymous Coward · · Score: 0

      I'm involved in the cell-phone application industry and I can say that J2ME is horrible. It's not because its slow, its not because its bloated, it's because it is not consistent across handsets, and thus for anything more than a very simple application, what works one way on one handset does not work the same way on another handset. This may sound trivial, but the biggest expense in the industry is whats called 'porting' where we attempt to port one application that works on one Java handset and make it work on another that has, on paper at least, the same or similar specs. Furthermore, the time it takes to port 1 J2ME application to a handset, the same engineer could have ported 3-5 C/C++ BREW based handsets.

    3. Re:Well, it depends by javapada1 · · Score: 1

      I agree, I too am a J2ME developer for 4 years now. When my client or boss asks me to create an app, I easily can deliver a fully GPRS/Bluetooth networked application (fast and reliable) by the end of the day. No problem.

      Now my boss/client asks me, can we make it look good and look consistent on all of these phones (100+ list in a spreadsheet). Now I have a problem.

  14. Apple may soon announce to step back for Sun by rpp3po · · Score: 3, Informative

    It's very questionable that they would even extend their Java efforts for the iPhone when Java support by Apple for Mac OS X might soon be over, but continued by Sun.

    Main argument: Kernel APIs are stable since OS X 10.4, all major high performance graphic foundations since 10.5. The JDK could be put almost completely onto public APIs so Sun could take over development without the need for so much insider involvement anymore.

    I've found the whole story here: http://javablasphemy.blogspot.com/ (currently overloaded)

    1. Re:Apple may soon announce to step back for Sun by petermgreen · · Score: 1

      That post looks like it is complete speculation. Do you have any evidence to the contary?

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    2. Re:Apple may soon announce to step back for Sun by rpp3po · · Score: 1

      That post looks like it is complete speculation. Do you have any evidence to the contary?

      I've cited an anonymous blog, duh! What could be more credible?

      In the end it's just a sequence of bytes that you feel more comfortable about than other sequences of bytes. At some point in time, after you could connect it to some beliefs of yourself (like "bytes from msnbc.com always carry true facts"), you are suddenly willing to call a sequence 'evidence'.

  15. Re:jdk by Anonymous Coward · · Score: 0

    Yes a virtual machine is a reasonable cross platform solution. The Java language and API are overly verbose and redundant in equal measure; it's COBOL redux!

  16. Re:jdk by EugeneK · · Score: 1

    MOD DOWN - Parent's link is a javascript browser denial of service attack.

  17. The gPhone has them (AT&T) scared by SpaceLifeForm · · Score: 1

    This is so transparent.

    This has *NOTHING* to do with any Java anniversary.

    This is about competition, and that is good.

    --
    You are being MICROattacked, from various angles, in a SOFT manner.
  18. It clearly shook the world (link) by kanweg · · Score: 0, Offtopic
  19. Neooffice by cyfer2000 · · Score: 1

    I consider it is more popular than Azureus.

    --
    There is a spark in every single flame bait point.
    1. Re:Neooffice by Ilgaz · · Score: 1

      I consider it is more popular than Azureus. Limewire, while I never agreed with their purpose and policies is always in top 5 downloads of Apple OS X app downloads. This is going on for years now.

      Neooffice is what you should launch if anyone claims Java is slow with outdated information. Or run imagej and show them some filters are actually faster and more accurate than $1000 photoshop CS3.

  20. Tit for tat by 2nd+Post! · · Score: 3, Interesting

    I bet some bad blood exists because Sun has taken so long to port OpenOffice to native Mac status. By the time they finish, Apple will have a full fledged office competitor themselves in iWork!

    So essentially because Sun has decided Apple is not worth the resources to support OpenOffice on the Mac, Apple has decided Sun is not worth the resources to support Java on the Mac.

  21. No compelling Java apps by amightywind · · Score: 0

    J2ME is very different from desktop Java. It's one of the oldest APIs for handheld devices around, and there is a lot of stuff written for it already - tons of games [midlet-review.com], instant messengers [bombus-im.org], e-mail clients [movamail.com], and lots of other stuff. GMail Mobile [google.com] is a J2ME application, and so is Opera Mini [operamini.com] (granted, the latter not really needed on an iPhone or a decent smartphone, but priceless on plain Java-enabled mobiles like my Sagem my301).

    Uh huh. Like the parent said, "no really compelling Java apps." Same goes for C#.

    J2ME application should have native L&F on any implementation, and be fully resolution-independent.

    You mean like any other competently written cross platform API?

    --
    an ill wind that blows no good
    1. Re:No compelling Java apps by jhol13 · · Score: 1

      Strange. Whenever moving to Linux people complain about missing games ... apparently they are not compelling now ...

      There is no other cross platform API for mobile phones, competently written or not. Unless you consider S60 such.

      For me MidpSSH (or similar) is a must, and Opera mini is an excellent tool.

  22. Common Java apps, OS X and Mobile by Savage-Rabbit · · Score: 3, Insightful

    Given that the only popular Java application on Mac OS X, Azureus, is universally regarded as being slow, bloated, and ugly, I'd say the GP's impression is not at all outdated. I will admit that large Java GUI apps in particular can be slow and buggy and I can't say I can remember a whole slew of Java powered consumer applications that are popular among normal OS X users. I do however use quite a lot of Java apps at work. A few applications I can remember off the top of my head are development apps like Eclipse, Intellij, NetBeans, I have also on occasion used a of Java powered LDAP navigator, a whole collection of SAP utilities, Oracle utilities of various kinds... the list goes on. If I recall correctly I read somewhere that the new Lotus Notes 8 will be Java powered. There are probably a few more Java apps that I use but haven't noticed that they are Java apps since when are properly written and packaged, Java GUI apps can be quite hard to tell apart from regular OS X apps. It would certainly be a lot harder to use the Mac in a corporate environment without Java apps. I can certainly see why Java would be a good choice for quickly bolting together Java GUI Apps on Mobile OS'es and from a business point of view the 'write once run everywhere' cross platform aspect of Java has the same obvious appeal on mobiles as it has on desktop computers. I have seen anything from small programs like expense tracking software to things like fully fledged 3G streaming media players implemented in Java on Mobile Phones.
    --
    Only to idiots, are orders laws.
    -- Henning von Tresckow
    1. Re:Common Java apps, OS X and Mobile by Blakey+Rat · · Score: 3, Funny

      You're not going to convince people that Java isn't "slow, bloated and ugly" by citing Oracle Apps and Lotus Notes as an example. Just a little tip there.

    2. Re:Common Java apps, OS X and Mobile by Anonymous Coward · · Score: 0

      You're not going to convince people that Java isn't "slow, bloated and ugly" by citing Oracle Apps and Lotus Notes as an example. Just a little tip there. I seem to remember admitting that large Java apps are often slow and buggy in the first line of my post. Did you even read it? Also, generalizing that Java in it's entirety is slow and bloated just because a few Java GUI apps suck as is a pretty dumb thing to do.
    3. Re:Common Java apps, OS X and Mobile by Blakey+Rat · · Score: 1

      I seem to remember admitting that large Java apps are often slow and buggy in the first line of my post. Did you even read it?

      I did, but apparently I didn't understand it correctly. I thought that you were citing that list of apps as good examples, not just a list of "big Java UI apps I use even though they suck," which is apparently what it was. Sorry.

      Also, generalizing that Java in it's entirety is slow and bloated just because a few Java GUI apps suck as is a pretty dumb thing to do.

      Yeah. So is generalizing that all VisualBasic apps are terrible based only on a few examples. Or that all PHP apps have huge gaping security holes based only on a few examples. And yet people do that all the time, at least on this site.

      But of course the point is that Sun is a decent sized corporation which (apparently) a marketing department. The whole point of a marketing department is to give the people who might buy the product a good impression of the product. That's not happening with Java.

  23. Java is not bad for mobile games. by radimvice · · Score: 2, Interesting

    I'm a mobile phone game developer that has ported commercial games to over 200 handsets across all of the major Western carriers. This includes lots of crappy phones that could barely eke out 1fps, and lots of phones that hit 40-50fps without missing a beat. Overall though, I have a MUCH easier time porting for Java devices than for BREW, because Java is simply much easier to develop stable programs for, which means less bugs to waste time tracking down, which means you can make better quality software.

    And as far as Java being slow, bloated, etc., maybe all that was true back in the 90's, but today it's perfectly fine for development on any modern machine, all of our in-house development tools are written in Java and work perfectly. And J2me, the subset of Java that you find on the phones, is particularly lightweight and speedy - most mobile JVMs compile rather than interpret the Java bytecode, and some ARM cell phone processor architectures actually execute the straight J2me bytecode directly in hardware. What varies performance most is not usually the choice of Java vs BREW for running applications, but the speed of the phone's processor and its ability to paint to the screen quickly, and in my experience these vary regardless of whether a phone is using Java or BREW. A good Java phone will be entirely indistinguishable from, if not even more capable than, a good BREW phone in terms of its game-playing ability.

    If Java is ported to the iPhone, it would let existing game developers easily target their games for the iPhone during the standard porting process, and they could spend the extra time perfecting interfaces and controls to take best advantage of the iPhone's capabilities. This would mean an instant library of hundreds of quality commercial games each year, with a fast-growing library of independently-developed mobile games as well (that is, if AT&T grants its contract holders access to them). Otherwise, without a Java port it would mean a much more expensive porting process to a separate, proprietary SDK, which few mobile game companies with enough development resources will be able to profitably accomplish. So you'll probably get EA Tetris for your iPhone and little else, oh joy.

    1. Re:Java is not bad for mobile games. by Ash-Fox · · Score: 1

      And as far as Java being slow, bloated, etc., maybe all that was true back in the 90's, but today it's perfectly fine for development on any modern machine, all of our in-house development tools are written in Java and work perfectly.
      I still consider a Windows XP machine with Athlon 64/Pentium 4, 256M RAM, modern.

      Trying to run Java applications on such machines, particularly due to the RAM makes me miserable due to all the swapping required. I honestly don't think that highly of Sun's Java runtimes because of the huge memory usage involved. There are lots of Java programs I enjoy running like Azureus, Freenet Project, Netbeans (when I can't use kdevelop) and few others.. But one reoccuring theme is that, my machines are not top of the line, they already have programs running that take up huge amounts of RAM (can't avoid it with giant graphics) -- Java doesn't help the situation.

      The other issue is, I do not understand why Java UIs are less responsive. I tend to continuously notice when using any java program, the window being redrawn, buttons redrawn etc when I don't get this on native applications using MFC, GTK or QT. Something, is seriously wrong with Sun's JRE.

      And J2me, the subset of Java that you find on the phones, is particularly lightweight and speedy
      It's also a bastardized version of Java, where huge portions of Java were cut out to make the runtimes faster and lighter for mobile phones - I'm not impressed by that fact.

      I won't say Java is bad on the mobile phone, but on the desktop, I still don't find it works well for me. Despite quite a few favorite applications of mine use it.
      --
      Change is certain; progress is not obligatory.
  24. I don't know why we bother by cowwoc2001 · · Score: 1

    I don't know why people bother posting Java-related stories to Slashdot. Clearly the majority of its readers are still coding in Perl and have the nerve to suggest that Java's performance or UI is any slower or uglier than Perl. Please :)

    Secondly, it seems the majority of you are not aware of the fact that the vast majority of phones out there (~80%) runs JavaME. Pretty much every single one of you have been running Java applications for years on your phones without knowing it.

    Java isn't fast at everything, nor is it beautiful for everything, but for 90% of the applications out there it is both fast enough and beautiful enough out-of-the-box. You can always enhance performance or UI by using custom libraries but most developers are either too lazy to or they simply don't need to for their specific application.

    1. Re:I don't know why we bother by Eli+Gottlieb · · Score: 1

      We criticize it because, as a language, Java blows chunks. Its syntax and semantics come from C, which makes them good enough for many things, but it forces you to use object-orientation for absolutely everything.

      No, I will not use some obscure "design pattern" instead of commonsense language features like function pointers or truly global anythings or class pointers.

    2. Re:I don't know why we bother by cowwoc2001 · · Score: 0

      Funny, because most of the criticism I've read so far on Slashdot have nothing to do with the language itself. Rather, people are taking cheap shots at performance or UI when it is actually quite good in both departments.

      If you want to have a debate the language syntax then that is an entirely differently discussion.

    3. Re:I don't know why we bother by Eli+Gottlieb · · Score: 1

      True, though semantics concern me far more than syntax. C syntax is just fine for most things once you learn it.

  25. Couldn't be more wrong by bennini · · Score: 2, Informative

    Given that the only popular Java application on Mac OS X, Azureus, is universally regarded as being slow, bloated, and ugly, I'd say the GP's impression is not at all outdated.

    Azureus is the only popular Java app on OS X???....so you mean Eclipse, NetBeans, LimeWire, and JEdit are not popular?
    I think u meant to say that Swing sucks...not Java.

    With regards to the lack of an official Java 1.6 on OS X...
    What im wondering is how many of the people griping about this actually develop applications that leverage the features in Java 1.6 or how many of you require Java 1.6 to run an already existing Java application?

    The major features introduced by Java 1.5 such as generics, annotations, and AOP, are not even popular yet. How many developers even know what AOP is? Ok from that subset, how many of them design new applications that leverage cross-cutting behaviour? Ok since there are a few of you left, let's move to Java 1.6...we've now got runtime hot-patching at the class level (not just at the class loader level! woohoo)....so those of you with personal satellites with "always-on" software can now update ur buggy classes on the fly....additionally, we can embed Ruby and Groovy script languages inside of our java application and run them directly from within the JVM. Im sure IBM is quickly porting all their applications to take advantage of that feature.

    i still havent heard one real convincing argument as to why java 1.6 is so important to have RIGHT NOW. aside from being able to test your existing applications with java 1.6, i highly doubt anyone functionally necessitates the new features (and no, "because its cool to access your java objects from within ruby" is not a valid argument). if industrial companies like Mercedes are telling companies like IBM that they still arent ready to move away from 1.4.2, why on earth are basic computer users in a rush to jump to 1.6/1.7 ??
    1. Re:Couldn't be more wrong by Blakey+Rat · · Score: 2, Insightful

      I can't speak for the popularity of Limewire, but it's just as slow, bloated and ugly as Azureus. (Well, ok, probably less ugly-- but definitly slow and bloated!)

      The other examples you cite are all programmer's tools, so I can pretty much guarantee they're not "popular" among anybody except perhaps software developers. But software developers on Mac have XCode, so there you go.

  26. Why do you even care? by Anonymous Coward · · Score: 0

    What does Java 6 offer that you can't download a library to do in Java 5?

    There's nothing new in Java 6. All Sun did was increase the J2SE library bloat.

    You can download libraries to do anything you can do in Java 6 under Java 5. There's no reason to upgrade on a non-Apple platform and there's no reason for Apple to bother upgrading.

    1. Re:Why do you even care? by julesh · · Score: 1

      What does Java 6 offer that you can't download a library to do in Java 5?

      Subpixel rendering in AWT/Swing applications. java.io.Console. The annotation processing API. I'm sure there are others, but those are the only ones I've made use of.

    2. Re:Why do you even care? by Anonymous Coward · · Score: 0

      Annotations were added in 1.5, so I have no idea what you mean by "the annotation processing API". Having actually used java.io.Console, it's no better than System.in/System.out which have existed forever. Really it's a bit worse since you can't use it to send anything to STDERR.

      As for subpixel rendering, you have to be kidding. First, Java has supported anti-aliasing since 1.2, and secondly I'm fairly certain that Apple's Java used their font rendering in the Mac OS Swing PLAF anyway.

    3. Re:Why do you even care? by julesh · · Score: 1

      Annotations were added in 1.5, so I have no idea what you mean by "the annotation processing API".

      I mean the package javax.annotation.processing, used to produce compile-time annotation processor plugins.

      Having actually used java.io.Console, it's no better than System.in/System.out which have existed forever.

      Except that it provides a crucial capability that is not possible with System.in and System.out: reading of passwords with echo disabled. Seriously, this capability alone is enough to persuade those of using Java for writing command-line system applications to upgrade.

      As for subpixel rendering, you have to be kidding. First, Java has supported anti-aliasing since 1.2

      Subpixel rendering and anti-aliasing are very different systems.

      and secondly I'm fairly certain that Apple's Java used their font rendering in the Mac OS Swing PLAF anyway.

      If it does, it's highly unusual. None of the Windows, Solaris or Linux ports do this. I can't confirm either way, though, because I'm not using an Apple system. Here (where I use Windows and Linux predominantly), 1.6 is a clear improvement.

  27. Why do the work for free by Anonymous Coward · · Score: 0

    when apple makes big $$ fir iphones.

  28. Only applies to US operators by edxwelch · · Score: 1

    This restiction is only for operator supplied handsets in the US. In Europe the operators don't do this.
    If you want to write a multiply player game that uses bluetooth, for instance, you need a certificate supplied from the operator before your midlet will run.

    1. Re:Only applies to US operators by Lisias · · Score: 1

      Maybe nowadays. Not on that days. Europe was the main Siemens Mobile market on that time.

      --
      Lisias@Earth.SolarSystem.OrionArm.MilkyWay.Local.Virgo.Universe.org
  29. Kaffee by nurb432 · · Score: 1

    Im suprised this hasnt already been done.

    --
    ---- Booth was a patriot ----
  30. Apple + Java = Apple Coffee Cake! by Anonymous Coward · · Score: 0

    preview: http://www.101cookbooks.com/mt-static/images/food/applecoffeecake2.jpg

    time: 30 minutes or less
    ingredients:
    (4 portions)
    2 cups Bisquick mix
    2/3 cup of milk or water
    2 Tbsp sugar
    1 egg
    1 tart green apple, cored, peeled, sliced

    Topping:
    1/3 cup Bisquick mix
    1/3 cup packed brown sugar
    1/2 tsp ground cinnamon
    4 Tbsp butter

    Step 1: Preheat oven to 400 degrees F.

    Step 2: Grease 8" square pan or 9" round pan. Mix cake ingredients. Spread cake batter in pan. Insert apple slices into the batter evenly throughout the cake.

    Step 3: Mix the topping ingredients of Bisquick, brown sugar and cinnamon. Spread topping mix over top of batter in pan. Add slices of butter all over the top.

    Step 4: Bake 20 minutes or until golden brown, testing with a toothpick.

  31. java should have come in the box... by Anonymous Coward · · Score: 0

    jre - apple should do this themselves,
    safari is weak without the proper plug-ins to make websites work.

    java, flash, shockwave, pdf viewer, real player and ms media codecs [p.d. open source versions].

    the iphone is broken without them

  32. Java is extremely common on "modern" phones by SmallFurryCreature · · Score: 1

    There are javaless phones, that Motorola one with the primitive LCD display is one, but all "modern" gadget phones got it. If it can play mp3's and such, if basically it has the power to run downloadable games it has java because, well the games are java.

    I can understand your confusion because it is just as confusing from my view. Basically most phones that are capable have it. How else would you play games and such on it?

    To be fair, in holland and most of the EU, competition on the phones started with the mobile phones, before that the landlines were owned by semi-state industries on a national level. So perhaps the mobile phone companies that newly emerge with GSM just felt they had to compete on all fronts. In holland, the monopolist KPN was if I remember correctly also the one to most push their own content.

    My own recent phone came with software to convert music to ringtones and offcourse java so I could run my own browser.

    Basically, I never read a mobile phone companies press release saying it had java, only to find in store that it had been disabled. If Nokia, Sony-Ericsonn etc list the phone as java capable, then in holland at least, it is.

    Perhaps it is also because most phones are sold through third party stores, they typically display a phone and then the different subscriptions you can get it with from the different networks. Wouldn't help sales of your network if your chart read "no java" when everyone else did have it.

    --

    MMO Quests are like orgasms:

    You may solo them, I prefer them in a group.

  33. Expensive toys by Leon+Buijs · · Score: 1

    How many iPhone owners will give it to their 2-year old to play with, do you think?

    1. Re:Expensive toys by huckamania · · Score: 1

      How many of the new iPhone owners have an old cell phone that is gathering dust?

      I'm not an advocate for JavaME, but I like it infinitely more then alternatives that aren't as easy to develop for or that I have to pay to get their (I)DE.

      I'm clearly not the target audience for an iPhone. I've probably never been the target for any of Apples many wonderful products and I can honestly say they have never gotten a dime of my money.