Mobile app development is a particularly enticing area. Uploaded to a suitable app store your creation can be seen and downloaded by millions of users.
Novel app ideas, when combined with some focussed coding effort, can result in monetary return. In fact some app developers earn enough to fund a comfortable lifestyle.
Nevertheless, creating high quality apps isn't a trivial exercise. So don't expect to create an engaging, interactive game with quality graphics, multiple levels and so on in a couple of days.
Apple iPhone, iPad and iPod development might seem an obvious choice. After all, the large Apple community regularly checks the Apple App Store for new apps. However, there are a few points to consider.
Firstly, you'll need an Apple Mac PC to install the Xcode development environment plus the iOS SDK. Secondly, native iOS apps are coded in the Objective-C language. And thirdly, you'll need to register with the iOS Developer Program to upload apps to the App Store, something that costs $99 per year.
Google AndroidGoogle's Android development environment is just as comprehensive. But there are a couple of key differences. Firstly, it uses the cross-platform Java language, which means you're free to use a Windows, Mac OSX or Linux PC for the development. And secondly, the Google Play app store registration has a single upfront cost of just $25.
Windows Mobile and Firefox Mobile OS
If you're already familiar with Microsoft technology you might want to consider creating Windows Mobile smartphone apps. The registration cost can be a low as $19. And as the Windows Mobile app store is much smaller the Apple App Store or Google Play there's far more chance of your app being noticed.
A dedicated, platform-specific development environment isn't the only way to start mobile app coding. There's also a number of powerful third-party frameworks.
The big difference is that don't have to learn a different language or new set of tools for each platform. The only slight snag it that you'll still need to use an Apple Mac PC to create iOS apps.