I have played around with smart phone development (windows ce), and it seemed pretty straight forward using vs.net and having a nice emulator etc.
How is blackberry development? Seeing as it uses JavaME I am guessing learning the SDK/syntax for a .net developer wouldn't be that hard to get going with.
But what about the development IDE, debugging, emulators etc.?
I actually just purchased a blackberry for this very reason. You can use the Eclipse IDE and then install the JDE plugin. The JDE plugin includes the blackberry sdk as well as some emulators.
EDIT - http://na.blackberry.com/eng/developers/javaappdev/
I encountered a snag a couple weeks ago when I was setting up the environment, however, I found my solution in the blackberry forums. YMMV
I have very limited experience with the Blackberry, but from what I do have, it is fairly user friendly. Java is fairly similar to C# which you would have probably used for CE development.
You will probably use Eclipse for the IDE which is good once you get used to it. It will probably frustrate you a bit coming from Visual Studio, but give it a chance.
As for debugging and emulators, from my limited experience, no problems there. Actually, I find the Blackberry a much nicer platform than any of the CE devices in many ways.
There is a Visual Studio plugin for Blackberry development too, but it requires that a runtime be installed on the Blackberries that use the programs developed, so it is only really useful for Enterprise apps where you have control over the users' phones.
BlackBerry provides a Java Development Environment that has a number of integrated tools (notably coverage, memory usage and profiling) in addition to a syntax highlighting and "smart insertion" editor, compiler and debugger. The BlackBerry code signing tools, JAD and COD generation are also included.
I found that it was much easier for me to develop code in Eclipse, compile it with Ant (using etaras' RAPC ant tasks, but they seem to be gone -- BlackBerry Ant Tools seem to be a suitable replacement) and use the JDE for debugging/profiling, etc.
I've not used the new RIM Eclipse Plugin.
The MDS Studio has both Eclipse and Visual Studio based environments. I found it handy for prototyping UIs but rather cumbersome for doing any custom development. BB markets it as "Rapid Application Development", and it has that paradigms strengths and weaknesses.
I found BlackBerry development to be much like other specialized Java based applications -- if you develop standard J2ME Midlet Apps, you don't need to know much more. If you really want to take advantage of the BlackBerry's unique features, integrate with BB applications, etc., then you need to learn the BlackBerry specific APIs - the javadoc is pretty good, the forums and whitepapers help, but there are few real "overview" documents or papers to tell you how to put it all together.
Caveat Emptor, YMMV, etc, ad nauseum.
The support community are pretty quick to respond to well-written questions from people who've obviously put some thought into what they are writing. RIM are also quick to release new simulator updates for new phones, which I've had problems with in the past from other manufacturers.
There's also a another Blackberry development environment called "Blackberry MDS studio" It's an alternative to Java. I know for some of my colleagues who are Lotus Notes developers favor this IDE as it's more visual. Personally I prefer the Java one being a Java developer.