Skills needed to develop Android apps?


Mar 9, 2010
Reaction score
I'm going back to school soon and since becoming an Android addict I've decided to take whatever classes necessary to create Android apps. I know whatever skills I learn can be used in other ways, so I'm not looking to make it my career, but something fun to do on the side.

Obviously I know I need to learn Java, but I know that can't be all. Do most android app developers do their own graphic work as well? Should I include a graphic design course? I have zero programming knowledge but I've read that once you learn one language, learning a second is much easier. Is this true?

Are there plenty of jobs out there for Java programmers? Like I said, I know for the most part only the best app developers make a living from apps only, and I don't expect that. I want to make sure there's a career out there somewhere for someone with a java skillset before I commit to this.

What other skills will I need?
You should go for CS or EE and make sure you are required to take java.

Id say java and c++ are the two most popular languages at the moment. Don't expect things to be easy once you know java making an app requires many skills beyond programming and graphics
Start with Java. Most Android books and tutorials assume you know Java and won't go into any depth about what "this" is. You'll spare yourself a lot of confusion if you go through one or two general Java books first. Even if you learn enough to just make a simple form that adds two numbers by clicking a button you'll be doing yourself a favor.

Then pick up an Android book and go through the Google docs and tutorials. Since you know Java now this stuff will come pretty easily. Eventually you hit a point where you know how to learn and you adding different parts of the Android APIs comes easily.

You'll probably pick up some graphics stuff along the way but unless you're doing things 100% by yourself you don't need to know this stuff. But even if you don't even know how to open Photoshop you will need to know how to use graphics resources to develop apps, so you might as well learn some basic stuff along the way.

If you're registered for classes at this point you'll have a bit more direction as to where to go career wise. C++ is still extremely valuable to know. Scripting langues like Perl and PHP are great to know and easy to learn. You really don't need to be too focused on Java to have a career as a programmer. But it's a great place to start and widely used.

The most important skill for any programmer is knowing how to learn. You never know 100% of a language and you'll always be adding bits and pieces of various APIs to your brain.