If you belong to the generation that had cell phone in the pocket, the question may sound quite valid to you. What do we really need in our pockets, a phone to make phone calls or a tiny computer? Modern mobile phones, better known as smartphones, are really complex devices with full featured operating systems, various applications and a lot of functionality. But do we need all that?
I like changing mobile devices every three or four months. My current device, Fujitsu-Siemens Pocket Loox T830 is an extremely advanced device with almost all possible means of cummunications (Wi-Fi, Bluetooth, GPRS, 3G, GPS) present on-board. The hardware is quite fast and the device runs a Windows Mobile 5.0 from Microsoft. Unfortunately, often in critical moments the device simply crashes or halts and I'm simply unable to do the major function of the device - to make a phone call - without restarting the device.
I believe this is what Steve Jobs meant when he explained why there would be no Java present in iPhone. Yes, it's true that Java development (especially gaming) may be a multi-billion dollar industry and it also may be true that Jobs has lost his grasp on reality again but he is right. Java is slow, bloated and not very reliable. On the other hand, we cannot simply ignore the fact that Java is an extremely widespread development platform for mobile devices.
So the big question is what we really need. If you need a simply cool multimedia phone and third party applications are irrelevant to you go for iPhone. If you need an all-in one device (yes yes, FTP client, Newsreader, Remote Desktop, even a Bittorent client are some of the applications that I have on my mobile phone) then go for a Windows Mobile or Symbian device.