Skip to main content

Who could do the most to end Java ME fragmentation?

Handset makers
38% (132 votes)
Mobile carriers
11% (39 votes)
10% (34 votes)
30% (104 votes)
7% (26 votes)
3% (9 votes)
Someone else (please comment)
2% (8 votes)
Total votes: 352


prevent JME fragmentation by using the JSE model

That is, have a deep and broad specification that doesn't leave things out, complement that with a deep and broad compatibility test suite and independent verification.

Failure to be independently verified would result in the product not being able to call itself JME. It seems that, so far, the push has been to get a large number of JME devices, and compatibility hasn't been enforced... It seems that it is overdue for this to change...

In the event of gaps, the rule would be to behave like the reference implementation (and file a bug report).

JME will always be more challenging due to the larger number of independent implementations out there, relative to JSE, thus the specification and the test suite will be need to be more exhaustive.

And, of course, the wide variations in the capabilities of the devices makes it challenging in a second dimension; again, unlike JSE.

Finally, the larger number of players relative to JSE (Sun, the JME implementors, hardware manufacturers) makes coordination more challenging.

But with some potential tightening up and verification, possibly supplemented with some delicate enforcement, the fragmentation problem is eminently solvable.

prevent JME fragmentation by using the JSE model

JME is already fragmented. Different devices even from the same manufacturer can't even use the same classfiles, often needing source level changes to make things work on them all. Only the handset makers, through pressure on mobile device OS and firmware manufacturers, can change that. It's up to them to require a standard to be adhered to. While developers can all refuse to write Java software unless it's for a specific "standard" (whichever we choose) that won't mean a thing to the handset makers, nor to their suppliers. Their devices sell anyway, and their customers aren't going to demand they comply with a specific Java version as they don't know or care that something is Java. They just see that they can't run software X so they choose a competing product that will work with their device.