back to article Java won the smartphone wars (and nobody noticed)

Haven’t you noticed? Java, the red-headed stepchild of the phone world, has conquered the world by default. The platform written off just a few years ago as bloated, cumbersome and inefficient is now inescapable. It’s actually down to desperation by the two fallen stars of the handset world, Nokia and RIM. Android, another Java …

COMMENTS

This topic is closed for new posts.

Page:

Silver badge

Actually it's true

Unlike with iOS/Android/Blackberry/WPx Java ME actually works and even has a moderately sane software distribution model. You just plop the file onto your device and you are done.

3
12
Silver badge

Re: Actually it's true

And that is different to Android how?

3
1
Anonymous Coward

Re: Actually it's true

Nice downvotes for a valuable comments.

A java app has a single file copied to the phone handset, which can then be opened from the phone menu and just 'runs'. In many cases there are no other files used, unless it's a game or application that requires saved information; even then, there are now ways to save within the one file.

Android et al require directory structures and also require the file copied to actually be installed - the file is just an installation file.

For developing countries the above is a big bonus, not everybody has a PC in Africa, China and parts of Russia. Those people often require technology we used 10 years ago in mobile phones.

1
6
FAIL

You Must Be Kidding

All the J2ME implementations I have worked with had severe quality issues. Nokia's were the best, but even they had things like "cannot use a UDP socket to send and receive; must use two different sockets". Not obeying these rules would lock up the whole phone. Other vendor's J2ME runtimes were even more broken.

So Nokia and all the other "old" phone vendors just had 0% software competence. Their goal was to sell units, generate cashflow and then forget the phone and its software.

That is why Google and Apple eliminated them in a few years - they knew how to maintain software in the field.

7
0
Silver badge
Stop

Re: Actually it's true

And that's different from an Android APK file how? (hint, APK files are renamed ZIP files just like Java JAR files)

Neither Android or iOS require the user to have a PC. You can pick an app from the store and have it download and installed directly. Java makes life harder in this case.

4
0
Silver badge

Re: Actually it's true

Blackberry has always been Java; the BB stack is an extension of J2ME. It's part of what made it non-sucky. :)

1
0
Silver badge
FAIL

Re: Actually it's true

And in addition Dalvik actually allows a developer to write the app they want instead of having to use the complete joke gimp that is Java ME. The article doesn't address just how much different things would be today if Sun/Oracle's retarded artificial market segmentation hadn't insisted on the Java SE not being allowed on smart phones. The platform would really have been ubiquitous then.

3
0
Silver badge

@Christian

Actually what you're describing is only partly true.

Yes; you could easily create a midlet buy merely compiling your ME project in, say, NetBeans (personal favourite of mine). But with all the phones I worked with you could /not/ simply distribute it onto the phone like you could, for example, a war file onto a J2EE (Glassfish) server. Even if your phone would be recognized as USB storage.

Instead you had to make it available online, use the phone's browser to get to the program location (which always took /2/ files; one description explaining the whole online setup (you always needed to set this up /manually/) and the actual midlet itself) and only then would the midlet actually install.

I can't comment on Android because I don't use it, but its by /far/ as easy as some other development systems do this.

1
0
FAIL

"get their phones to last to teatime"?

I have a Galaxy Note N7000, and in standby, running GrooveIP and K9 push-mail, it draws about half a percent per hour on WiFi and 2% per hour on 3G (depending on celltower proximity). When running apps, 90% of the battery drain is the screen, which has nothing to do with Java.

I don't agree that Java is battery-hungry. Sloppy coding is battery-hungry.

Oh, I do have Samsung Media Hub, and all the other nice Samsung bloatware, disabled (frozen with Titanium Backup). Still using Gingerbread -- at least until they can make ICS drain less than 1% per hour (LOL)

6
1
Anonymous Coward

What you really mean is Java won the application programming environment war. Android is mostly native code. Guess what the Virtual Machines are written in? C++. Further down the stack is C.

Java performance has improved over the years, but its also become a target for hackers too.

4
1
Bronze badge

and I still get 3 days of mail & web with this E71 and its 5 year-old battery. No cool, no touch screen but a fine keyboard and fits well in my jeans.

But it does lack USB charging - arguably THE killer app for modern smartphones since it makes charging somewhat incidental to syncing and it's easier to carry a cable than a wallwart.

7
0
Anonymous Coward

E72?

Mine's solid as a rock, charges by USB and lasts a good 4-5 days of heavy duty use on a single charge (1hr+ on calls, texts, emails, internet, MP3 playing).

Battery is now 2 years old.

2
0
JDX
Gold badge

Presumably this is why WindowsPhone surprising runs so well on low-spec hardware... not that MS suddenly learned how to write fast code, but that Android is a bit slow compared to a C/C++-based OS?

What about iOS though - isn't OBJ-C also a fast compiled language?

3
5
Silver badge

Obj-C is indeed a fast compiled language. It does have a runtime component that handles the messaging and reflection aspects, but Objective-C is also a pure superset of C, so you can write C code too. It's "C with OOP" done right. (Yes, C++, I'm looking at you.)

Java? Meh. I've had reason to use it in the past and it's everything that's wrong with BDP*: you're endlessly subclassing and subclassing just to get even the most trivial of things to happen. Look at how much easier it is with Objective-C (and Cocoa) and you'll soon be wondering precisely which fresh circle of hell Java and C++'s designers will be given when their time comes.

The main reason I stay away from Android is because its development tools are so poor and the ROI is terrible. Eclipse is no substitute for a proper IDE that doesn't suck.

* ("Buzzword-Driven Programming".)

2
4
Bronze badge
Boffin

A little bad rep goes a long way

Early Java programmers were kind of over-excited with this inheritance thing, and tended to overuse it, as evidenced in many books and frameworks from the time. Today the Java community favors composition and interfaces (which enable much more flexible architectures) over class inheritance – but I guess that for those who haven't kept up, the damage is already done.

I agree that Enterprise Java is hopelessly cluttered with buzzwords and decrepit FUBAR frameworks (hello TIBCO), but I have always found the Java language and its base API very straightforward. In terms of ease of use it runs rings around C++; performance might not be as good, but as in the case of scripting languages, it's often good enough that having something that works now trumps having something perfect later.

4
0
Bronze badge
Windows

@Sean Timarco Baggaley

Not sure whether to up vote or down vote your post.

I'd up vote you for the remark on the horror that is C++, but down vote on the java critique. Loved java, hated C++, never found found sub classing a problem in my Java code, but have encountered C++ code with endless levels of subclasses.

C++ made me crazy and old before my time.

1
0
Anonymous Coward

Re: A little bad rep goes a long way

@xperroni: Too right. I still endure the flashbacks to a time I once looked at a team-mates project code that sported factory-fascade-subclassed-abstract (not an exact structure you understand) nonsense. I point out it wasn't very readable and made debugging problems a pain in the arse with its interwoven "where's it implemented" bs. He retorted that this was "enterprise level strategic coding" and I should get back to my simplistic tactical World.

I've never forgotten that spaghetti mess and will probably never return to Java as the damage has been done. I moved on to the (shock horror) other Java-like language and prefer it.

0
0
Bronze badge
Gimp

Re: A little bad rep goes a long way

It's alright. It's not like I'd want to use it or anything, but I worked on a C# project a few years back, and as far as Microsoft products go, I found it particularly hard to hate – harder than VB6 at any rate.

0
0
Silver badge
Joke

Accenture working on bug fixes

Has it been made ABSOLUTELY CLEAR to them that by 'fixing bugs', it is meant that the bugs should be corrected so that they do not occur, as opposed to improving the bugs so that they do more?

4
0
Anonymous Coward

Re: Accenture working on bug fixes

Teams have been disbanded and knowledge transferred, so no.

2
0
Bronze badge
FAIL

Re: Accenture working on bug fixes

Has it been made ABSOLUTELY CLEAR to them that by 'fixing bugs', it is meant that the bugs should be corrected so that they do not occur, as opposed to improving the bugs so that they do more?

You mean them hacks could actually correct bugs if only management told them in clear terms that's what's wanted?

Either way it's hopeless.

1
0
Silver badge
Stop

The last time I checked

Nokia + RIM < 20% of the smartphone market. How does that equate to Java winning the smartphone wars?

Android is only a Java-like platform (and has the results of a court case to prove it)

iOS is based on Objective C/C++

Combined they own the other 80% of the market and look like the winners to me.

7
2
Silver badge

Re: The last time I checked

I agree the claim was overblown, but Nokia still sell loads of their S40 based phones around the world. I suppose other mass market manufacturers sell loads of Java based phones as well.

1
0

Re: The last time I checked

Out of mobiles in total smart phones are the minority and afaik java me is still the primary language for dumb phone apps so in theory it has a larger market share. I'm not sure who buys apps for dumb phones these days though.

1
0
Angel

Depends on the definition of a smart phone

Symbian and Symbian Lovers (which Andrew has always been a bit guilty of) considered the Series 60 platform to be a smart phone operating system. Nokia made it possible for every grandmother on the planet to get a Series 60 telephone with a large keypad for free with a cheap 12 month contract (or is it cataract hehe) and therefore, if you consider that installing Series 60 onto a telephone which eventually ends up with a consumer in the end a smart phone, then Nokia probably has 3/4 of a billion units out there. Those phones however were generally preferred over the Series 40 for grannies because they had a screen which made dialing all 3 people they called by mobile phone easier. I personally have 4 or 5 Series 60 phones I used for trying to test application development on... got them for like 10 euro unlocked from junk bins weeks after they were released.

I have seen a handful of people with Nokia "Smart Phones" being carried by the same cheeky looking people who do things like wear a noose to work because it's the only way they can show they're important. The same types of people who carry blackberrys in the states.

Just remember, Nokia isn't the "Granny Phone Company" for no reason.

P.S. - If Nokia wants to start trying to be a lot less lame, they should dump their entire "Big Button Phone" portfolio which pays their bills and get rid of the lame assed fat guy who thinks he's cool on stage when it comes to presenting the phones. The fact that he says it's cool and hip and such is enough reason to call them lame.

0
3
Bronze badge
Joke

Re: The last time I checked

>Out of mobiles in total smart phones are the minority and afaik java me is still the primary language for dumb phone apps....

Might want to check the title of this article again.

0
0
Unhappy

A pity though...

...because Java is the one language I've programmed in that I hated every minute of.

What a relief Android (maybe others, I haven't looked yet) can have pretty rich HTML5 apps with the SQLite database engine to provide storage. A whole app with only a dozen lines of Java.

Now if they'd only put Perl on them all...

7
5
Bronze badge
Linux

re: next disaster will be:

check out

http://code.google.com/p/android-scripting/

There IS a perl interface (but I have only tested the python one)

1
1
Vic
Silver badge

Re: re: next disaster will be:

> There IS a perl interface (but I have only tested the python one)

I've written some perl for mine.

It takes a little finding-your-way-around, but it's a good setup. Documentation's a bit poo, but the demo app tells you pretty much all you need to know...

Vic.

0
0
Joke

Java won the smartphone wars (and nobody noticed) .

Or in the context of smartphones: Java won the smartphone wars (and nobody cared) .

4
0
FAIL

The reason Java failed

The main reason that J2ME failed to gain traction in the early noughties was due to platform fragmentation. An app that would run fine on one device would lock up on another, and every handset manufacturer would have a different API for audio functions. The bulk of work would be porting code between phones.

On top of that the operators would only allow sales through their individual stores, and would take the bulk of the revenue for the privilege. Then there was a (now-defunct) games publisher notorious for not paying its third party developers. The economics didn't add up.

What's changed things is Apple's app store, which has allowed an ecosystem to build up around the iPhone. This has been largely copied by other platforms, some of whom use Java based platforms.

5
1
Devil

amazing how...

every Java app I've downloaded for ages (computer based, server based, phone based...) is generally released with a different version for each platform. It's crazy how the write once run anywhere turned quickly into write once, run anywhere so long as it has this OS, this browser version, this Java version etc...

5
0
Silver badge

Huh? Nokia, RIM?

You are seriously basing your argument on the fact that Nokia and RIM, who are both fast becoming irrelevant, have turned to Java?

It's a bit like saying "Tories have won the elections" because two small, remote counties have voted for Tories…

1
2

Re: Huh? Nokia, RIM?

Funny how people only look at the US market, when making broad statements.

RIM is doing pretty well in the 'developing markets' (or whatever negative euphemisms analysts use nowadays) such as Asia, Africa.

Lower-spec phones with a good OS are still good phones for what they need to do in those areas.

Not everywhere is the phone system as 'advanced' as in the US / Europe. And not everywhere in the US / Europe is the phone system as 'advanced' as in other parts of that same area.

The fact remains that a large number of phones use one form or another of Java.

2
0
FAIL

Re: Huh? Nokia, RIM?

....And your point was...?

Last time I looked that was precisely what had happened - leading said to go cap in hand to the liberals. Dont you just love fair democratic elections based on the actual voting...

Oh wait...

0
0
Silver badge
Stop

To hell with 'the market'. I care about battery life. That's why I replaced the original battery on my Desire with a 3aH monster. Okay so it doubles depth of the phone but since it's stepped in a bit I find it actually makes it easier to hold. It also means that the phone props itself up when sat on a desk sideways which is nearly perfect for watching videos.

As for batter life: Damn near a week between charges for me. Admittedly I don't make or receive many phone calls nor browse the web. However I do use it for an hour every day to play music and when I drove to North Wales a couple of weeks ago it powered the GPS for the entire 3.5 hour journey. The battery indicator was red on arrival but it managed it.

Sadly it seems that newer phones are all one piece shells so the options for replacing the batter are limited. Guess I'll just have to stick with my Desire instead of giving more money to HTC. Ho hum.

4
1

you just said that out loud.

1
0
Silver badge

Conclusion missing?

How does the post demonstrate Java winning in the end? Or is just an oblique reference to victory of the Java-like Dalvik on Android? Java doesn't run legally on IOS as far as I know.

3
0

Jasper

holy crap, look how old that looks. And it's only been 6 years. Progress ftw!

2
0

Someone doesn't know their history

I think someone might have forgotten that RIM pretty much started out with Java, almost from the beginning, rather than tagging it on later. After all, the RIM 957 (year 2000!) used JDE for app development. The first GPRS capable device RIM launched (BlackBerry 5810) was fully Java. That's hardly adding it on at a later date "to remain competitive"!

4
0

"the market doesn’t seem care about call quality or battery life"

I care very much about battery life, its just the phone producers seem to think we don't. I would much rather a thicker phone with a great battery than the thinest phone in the world (which is what the all try to do) and have to charge it multiple times a day. I used to have a P800, otherwise known as 'the brick'. It was a massive chunky device, but at least the battery was decent.

6
1
Happy

> The platform written off just a few years ago as bloated, cumbersome and inefficient

By nobody with a well-informed opinion.

4
0
Silver badge
Thumb Up

Does anyone else remember those tacky adverts for Java ringtones, screensavers, games, etc. that were on the back of magazines? That is something else the iPhone has robbed us of.

3
1
WTF?

This story makes no sense at all.

Nokia, a long-term supporter of Java ME, continues to have an interest, but has shifted its focus to Windows mobile. Likewise beleaguered BlackBerry manufacturer RIM, who is shifting away from Java ME to a new OS based on QNX with native C/C++ as the preferred development language.

iOS apps are mostly objective-c.

Android sort of means Java has a presence on smart phones, but it uses Google's own proprietary and incompatible version of Java which therefore isn't really Java at all.

5
0
Gold badge
WTF?

Re: This story makes no sense at all.

"....uses Google's own proprietary and incompatible version of Java which therefore isn't really Java at all."

I was of the impression that the whole Oracle / Google shitfight was over the Java TCKs. You can't say it's "Java" without it getting the Test Compatibility Kit seal of approval and the TCKs are proprietary to Oracle, who reckon mobile devices should be restricted to the Mobile Edition and won't license 'em for testing on Android, so they're not allowed to run 'em........officially.

Nowhere have I seen it said that Android Java won't run the TCKs correctly, only that they're not allowed to stick the magic badge on it to say that it will.

What did I get wrong?

5
0
Vic
Silver badge

Re: This story makes no sense at all.

> What did I get wrong?

You confused Java the language with Java the VM.

Some parts of Android apps are typically programmed in the Java language, but Android handsets have no Java VM on them. They use the Dalvik VM, which is entirely different, being a register-based machine rather than the Java stack-based one. Think Z80 vs. 6502...

Vic.

2
0
Silver badge

Qt

Is battery life the reason RIM told everyone they were going to have to rewrite all heir apps in Qt come BB10? Nokia were pushing Qt too before they jumped the shark.

0
0
Anonymous Coward

Simple answer...

A quad core Android or (if you must) an iPhone for Facebork and videoing stuff, and a Nokia 8210 for (discretely) making calls on, preferably with a wired headset. (Y'know, in case anyone saw it and thought you were some sort of pauper or something.) Match book sized and 3 week battery life FTW.

0
0
Bronze badge

Why I carry two phones

Battery life. One bog simple one with a battery life measured in weeks for voice and texts, and an Android smartphone with a battery life of hours for shiny stuff.

1
1
Silver badge

Call quality

I honestly don't get all the vitriol against current phone call quality. Most of the problems are due to the networks, not the phones themselves.

Actual call quality, in terms of sound, is no different here than it is in Viterbo or Rome. In Viterbo, I'm more likely to get a dropped call, but so is everybody else: the city is extremely hilly and there just aren't enough masts yet.

I live in a rural part of the Lazio region, between those two cities. The geography is similar to the Welsh Highlands, with added earthquakes. I get decent enough sound quality in a large town or city, but out in the small village where I live, the signal is dire. I don't even get an "E" symbol on my iPhone 4, let alone a "3G": it's just plain old Mk. 1 GSM.

But I had far worse problems with my Nokia 6310, which was literally the cheapest phone I could find with Bluetooth support. Nokia had a reputation for great call quality, but my iPhone 4 sounds a hell of a lot better than my old Nokia ever did. (And it's better at finding a signal too, which gives the lie to that "Antennagate" bollocks.) I've noticed any notable difference in sound and call quality with my brother's Samsung and his wife's LG. Both are pretty old "feature phones", bought around 2009.

It doesn't help that many landlines in Italy have been converted to Telecom Italia's awful VOIP system. Phoning a landline today often results in a nightmare of blips, clicks, dropouts, and weird Autotune-esque audio artefacts. Phoning a mobile usually sounds a lot better.

Battery life? Okay, I'll grant that I'd like my iPhone 4 to last more than a day, but 24 hours is a pretty good battery life for what is, after all, a computer more powerful than any of the desktop PCs you could buy just ten years ago.

0
0

Page:

This topic is closed for new posts.

Forums