Most of us like to do things which can show immediate results like making a Paper Balls and throwing at each other! If you fall in this category MOBILE PROGRAMMING is the sub branch of Computers where you need to look at once.
Whenever a mobile is brought into market, marketing guys mainly focus on how to attract the youth, as they are the ones who change mobile phones on regular basis and why do they change it because they either want to witness some rapid change in Technology, where they are eager to see something "out of the Box" like Apple's iPhone or want to see some improvement in their phone like new features in Nokia's N-Series which were not there in Nokia's 6600, here the youth knows what else could have been done in their old phone. Now if you have COOL ideas in your mind, you are the one who should try to make new softwares for mobile phone.
Ok i am interested but HowTo do that? Answer is you need to follow 3 steps, pretty basic ones though
Step1-> Choose a Platform for Mobile Phone or in simple words Operating System (OS) for mobile phone where you want to do some coding. There are plenty of them like Symbian OS (Nokia's Phone uses it), Android (Google's Recently bought mobile Operating System), Openmoko Linux (An Open Source Option where you can modify the OS), Windows Mobile (Mainly seen in Pocket PC), iPhone OS (used in iPhone and iPod Touch) etc.
Step2-> Selected OS, now need to select programming language for that OS on which you could do programming.
Symbian OS supports,
- Symbian C++ which needs some Integrated Development Environment like Carbide.C++ but trust me if you are beginner you don't wanna work on it, its difficult to get used to if are not comfortable with Turbo C++.
- JAVA ME (Java to Micro Edition), Java ME is a popular option for creating games for cell phones, as they can be emulated on a PC during the development stage and easily uploaded to phones.
- Python for Symbian 60, I found it one of the easiest to work upon as Python as a language is very simple, almost close to writing a code in English Language. But some parts of Symbian OS can't be accessed through it, still as a beginner its best option available for you.
Now according to Wikipedia
Android Supports,
Coding in JAVA that utilizes Google-developed software libraries, but does not support programs developed in native code. Android only reuses the Java language syntax but does not provide the full class libraries and APIs bundled with Java SE or ME.
Windows Mobile Supports,
Writing native code with Visual C++, writing Managed code that works with the .NET Compact Framework, or Server-side code that can be deployed using Internet Explorer Mobile on the user's device.
Microsoft typically releases Windows Mobile Software development kits (SDKs) that work in conjunction with their Visual Studio development environment. These SDKs include emulator images for developers to test and debug their applications while writing them.
iPhone OS Developers,
Loading an application onto the devices is only possible after paying a US$99 Apple Developer Connection membership fee.
So obviously as a beginner you won't even think of it.
Step3-> Download the Emulator and test your Application
According to Wikipedia, An emulator duplicates (provides an emulation of) the functions of one system using a different system, so that the second system behaves like (and appears to be) the first system.
So if you don't have a Nokia Phone no need to worry as you can easily test your applications on the Emulator.
These were the 3 Steps you need to know before actually starting coding. More importantly "IDEAS" is what everyone is looking for, so just find the things you want your mobile phone to do and maybe everyone wants that feature in their mobile phone after you implement it, means lots and lots of $$$ in your pocket.