Personally, I think that the big problem for RIM will be all the enterprise level companies that use Exchange/Outlook. They will be the ones that will see the ease of making the switch when it is time to upgrade the hardware. The employees won't really care as long as the phone and email works and management always likes to see complete solutions instead of peice meal. But maybe RIM has something that I don't know about.
As for software developement they are far behind others, but I think that RIM provides a good development enviroment (JDK) but falls short on the developer support. Just check out the RIM BlackBerry Developer forum, there is only 2 subforums and the format is weird. Columns are way to skinny across almost like it was meant to be read on a BlackBerry just makes for very bad reading. My advice to RIM just put a little more effort into the forums. Also, it wouldn't hurt to for them to allow time limited (say 5 days) code signatures for free or allow developers a 30 day trial where they can sign code without limits. They need to draw in developers and get them hooked without an entrance fee.