Fresher to Expert

Smartphone

These days everyone owns a phone. Most of the those phones are touch screen based phones with advanced capbilities, called Smart phones. You may own or might have used one of those smartphone. Though most of the time, people use their phones to make calls, messaging or play games you can do more as developer. In this section we are going to discuss how owning a smartphone can improve you as a developer and add a new dimensions to you knowledge and productivity.

What is a smartphone?

Smartphone is a hand held computer which is normally operated using touchscreen interface. They are essentially limited version of desktop or laptop. They run operating system that are created from basis of computer operating system.Various mobile operating systems are android,iOS,blackberry,windows etc.

Which smartphone is better?

Android and iOS are the most popular smartphone operating system in market today. You may be wondering which phone you should buy, whether it is an iPhone running iOS or phones with Android OS. Both phones have similar user facing characteristics but they have different level of control for developer.

iOS is based on Apple's Mac operating system and Android is based on Linux operating system. As we have discussed earlier, linux is a viable operating system for a developer in Desktop and its same for Phone too. So if you want to explore the phone like you do with your computer then go with Android!

Why Android ?

The following are the few reasons which supports my decision for choosing Android smartphone.

  • Linux based

    Android is a mobile operating system based on linux kernel. It follows similar conventions for file system, process management etc like Ubuntu or any other linux based computer operating system. So its like carrying a linux system with you.

  • Open source

    Android is an open source project. This means you can look at the code and try to learn how a mobile operating system works. Not only you can play around code, if you feel adventurous you can create your custom operating system from this source code like thousands of other developer does. One of the most famous custom ROM is Cynogenmod. Here thousands of developers collaborate and create their own version of Android flavor. You can join them too!.

  • Apps

One of the best things about Smartphones are, they come with lot of great applications. It's true in case of Android too. You can download apps from Google Play store, which hosts more than millions of apps. Some of the must have apps on developers phones are:

  • Feedly - Allows you to read news anywhere
  • Pocket -Provides read it later service when you dont have enough time for bigger articles
  • Calendar - Keeps track of all your appointments
  • Google Keep - Todo app

These apps are highly useful to keep track of news and work right on the phone. They sync seamlessly on web so you don't have to put info in multiple places.

  • Java based Application development

Using apps developed by others are good. But how about writing your own android App? Well, if yes, then that's going to be awesome!. One of the good thing about Android is that it uses standard language like Java and IDE tools like Eclipse, Idea for mobile application development. Most of these tools you already know from previous sections, which means you are ready to build apps for your phone. Learn how to do android development here

  • Reading device

As we discussed earlier in section, reading books is important part of improving knowledge. E-books are great way to read books and your Android device is a good place to read your books. We will go more about reading device in next chapter.

Which Android phone to Buy?

Now you know the value of owning a Android smartphone, you may be wondering what phone you should buy?. People consider lot of things when they buy phone right from price to camera quality. So the recommendation here is based only on the developer friendliness. Normally I want to buy an Android phone which

  • Runs stock Android
  • Should be upgradable to newer OS
  • Should support custom ROM like Cynogenmod
  • Easy to customize both in OS and apps
  • Good developer community support

As you see I have no say on hardware features and price range. That's all up to you to decide . But if you want to own a great developer friendly phone I recommend you Google Nexus series phones.

As you know smartphone can be more than just phone or gaming device. Put your phone in use to improve your skills and have fun exploring it.