What's the best way to learn Java/J2ME to build mobile applications?
martythemaniak: First, what you really wanna do is learn the basics of Java itself - primitive types, flow structures, conditionals, classes, inheritance, basic data types (vectors, maps) etc. You'll find the syntax has much in common with php and perl, so it won't be alien, although you'll have to adjust to the static typing.Second, you'll have to learn the specific mobile environment you want to develop for - J2ME, Blackberry or Android. What they all have in common is that they implement the basic java language (which I mentioned above) along with a set of packages/classes that allow your app to run the device.J2ME is very basic and is meant to run on a very wide range of cellphones (mostly featurephones) and its also quite hard to get access to the nicer APIs (contact info, internet access etc). It is specified by Sun working with phone manufacturers.Blackberry has its own set of APIs which allow you to access BB specific functions (email, gps, phone etc) and UI elements. This one is defined and implemented by RIM and does not have anything in common with J2ME.Android, like the BB also has its own set of APIs that allow you to use its UI elements, access its data, etc etc and is driven by Google.Since you're interested in BB development, most of you apps should be developed (and in many cases will have to be) using the BB API. The BB has the ability to run J2ME apps, but I think that's mostly for compatibility reasons.Anyway, good luck.