Nokia, says Java developers looking to 'go mobile' need a lot more help from the Java vendor community. Integration Developer News spoke with Nokia's tools execs, who outlined their plans for: (1) better cross-platform tools, (2) more unified APIs, (3) quicker app certification, and (4) better support for 3rd party IDEs from Java (and even .NET).
- Posted by: Tom Donoghue
- Posted on: June 14 2004 15:34 EDT
Read the full story: Nokia Looks to Jumpstart Enterprise Mobile
- About Time by Matt Giacomini on June 15 2004 11:51 EDT
- Nokia wants to Jumpstart Java for Enterprise Mobile by John Davies on June 16 2004 00:13 EDT
- Re: Nokia wants to Jumpstart Java for Enterprise Mobile by Bertrand Fontaine on June 16 2004 07:07 EDT
- Nokia wants to Jumpstart Java for Enterprise Mobile by Karl Banke on June 16 2004 06:24 EDT
I'm glad that one of the major cell phone vendors is going to step in and try to standardize things a bit, maybe even provide a little better development path. It is very hard for new developers (even Java Developers) to get up to speed with J2ME.
IMO J2ME has left the door wide open for Flash and .NET
One of the biggest "issues" that puts me off programming with J2ME is the fact that you have to use Java 1.1. I've got so used to 1.2-1.4 features over the years that it's like trying to work in Windows 3.1 or DOS once you've got used to XP/Linux. Yes I know there are good reasons but with PDAs and mobiles now coming out with upwards of 64M RAM and decent 3G internet access (in Europe anyway) they could easily handle a nice J2SE 1.4+ implementation. My Zaurus has a 640x480 screen, reasonably good CPU, Bluetooth/802.11/Ethernet via the SD socket but it only runs J2ME. My Nokia phone has GPRS, Bluetooth and a small colour screen, I'm waiting for the new Nokia 9500 but even that still only runs J2ME. It's very hard to think in 90s technology terms.
FYI, the Savaje OS was an operating system that you could install on your iPaq instead of Pocket PC. JDK 1.3.x, including Swing, was supported natively. I played with it over 2 years ago and it was working great. So, it is definitely possible to port a modern JDK to an iPaq-style PDA. AFAIK, the project was proven a commercial failure. Nowadays, Savaje has refocussed were the money is... on MIDP-style technology. Cf. www.savaje.com
On the PDA and smartphones, the right mobile Java technology should be the much more capable Personal Profile and not MIDP. The problem is that SUN doesn't consider the PDA market compelling enough to even provide a reference implementation for the Pocket PC. Cf. this open letter from developers to SUN on the CDC - Personal Profile forum:
In a few months, Windows Mobile 2003 SE will be available on smartphones. With .NET Compact Framework (installed in ROM), it will be possible to make the same program run for both the Pocket PC and smartphones. And .NET CF is much more capable than MIDP or even Personal Profile.
It is good that Nokia and al. start to wake up. But my feeling is that the situation is almost over for (Enterprise) Java on the mobile.
Thanks for the info about the Savaje OS, I'll try that out. When I mentioned "J2ME" I included the who "Personal Java", "MDIP" set in that group.
This is a big mistake by Sun, already the PDA market is almost dead due to "smart phones", I hear several PDA vendors are thinking of dropping their line due to bad sales. Imagine what a decent 1.3.x or 1.4 implementation of Java could do on a Symbian (or other) smart phone!
-John- (waiting patiently for my Nokia 9500)
I liked Savaje OS as well --- however, they do not make much progress in bundling their OS with brand name devices. In terms of J2SE versus J2ME, yes, for high end devices like Nokia 9500 and high-res pocket pc, J2SE is much better. However, not everyone can afford $1000 devices. ;) The vast majority of devices in the market will not be able to run J2SE. You can argue that, within 5 years, today's high end will become the middle ground. But by then, J2SE has moved on as well. Just look at the hardware requirement for Longhorn!!
On the other hand, development effort in J2ME could provide alternatives to desktop developers who think J2SE is way too bloated. For example,
1. The J2ME Generic Connection Framework is ported back to J2SE to provide a lightweight network framework;
2. The 3-D graphics API in J2ME is only 100k as oppose to the 40MB beast in J2SE. The J2ME API is suitable for *most* 3-D game applications;
3. On the server side, the red hot "light weight container" has been developed in J2ME years ago (OSGi) and is now widely used from cars to copy machines.
All in all, I think a big problem J2SE faces is its bloated API. J2ME might just provide some alternatives even for desktop and server development.
I both agree and disagree with you. I used Saveje OS on an iPaq 3630: 32Mb RAM, 16Mb ROM, 206Mhz processor. If you compare to modern devices, we are far from the 1000$ you mention: a low end Pocket PC such as the iPaq 1945 that makes a x2 in RAM, x2 in ROM and has a better processor than the 3630 can be found for less than 300$ nowadays.
I agree with you on the rest of your analysis. However, PersonalJava was merely JDK 1.1, so Personal Profile, its successor, is supposed to be the "J2SE light" for mobile that you are talking about.
IMHO, the problem with Java on the mobile is that SUN, Nokia and the others have too long counted on the initial success of MIDP and haven't invested enough in higer-level profiles such as the PDA profile or Personal Profile. Now that devices with specs more in-line with these profiles than MIDP become available on the market, Java starts looking under-powered...
PS: I have bought your book on Enterprise J2ME and found it really good. Congratulations.
more unified APIsThat's probably key. Or should one say "More APIs in the first place". If there is no way of using the telephony, the address book, the calendar, the multimedia etc etc of the phone there is only very limited sense in building the stuff. Oh, and unified installation that actually works would be a big plus as well....