I keep reading in the blogosphere that coding in Java ME (J2ME) is a pain… And I've a theory why some developers
complain about it… Developers who have come from the embedded and/or low-level software development side of computing find Java ME development not as bad, because of the development environments they have been exposed to. But developers who have come from the comfort of higher-level environments, where the number of variables are much less than in the restricted, multi-vendor mobility environments, just find it hard and not as easy to adapt… Yes, sure, there are pains when developing in Java ME (and other mobility platforms), but pretty advanced applications can be developed today. It could be worst, and it will get better – the space is still evolving,

So that's it! It is all relative! 🙂