Which Programming Language Should You Learn To Make Money?

I often hear people ask what programming language they should learn first. But the question should be: why do you want to program in the first place? If you are interested in it because it seems fun, then any language will do.

But I have a feeling some of you have bills to pay, and you’re thinking it wouldn’t be so bad if programming could foot some of that.

Now the question is more specific: which programming language should you learn to make money? Now the question is ponderable, but be warned, the answer won’t be the same for everybody.

The good news is that all popular languages are pretty fair in terms of compensation. The median pay today with 3-5 years of experience is around $60-80k/year, but that number can vary wildly, and can be much higher, particularly for folks on the east or west coast, or in consulting. YMMV.

The popular languages today are: Ruby, Python, PHP, Objective-C, HTML, CSS, JavaScript, Java, .Net, C/C++. Google all of those.

Each language has its popular uses:

LanguagePopular Use
Python/Ruby/PHP Server-side for websites and mobile apps.
Objective-CIPhone
HTMLClient-side for websites. Markup language for building web sites, the ‘building block’ of websites.
CSSClient-side for websites. Presentation language for HTML.
JavaScriptClient-side for websites, used to manipulate HTML/CSS. jQuery is what you need to know here.
Java/.NetAndroid programming. Server-side for websites, more popular with big businesses.
C/C++High performance (stock trading) or graphics (video games).

Which programming language should you learn to make money? The bad news is probably not just one. The good news is you don’t need to learn everything about every language, just enough to accomplish your goals.

So which one of these should you pick up first? As you can see, it really depends on how you want to make money.

If you don’t care how you’ll make money, then my opinion would be this, in order: Python, Objective-C, JavaScript, HTML, CSS. You’ll also need to get some kind of database (MySQL, MongoDB), and learn how to program with it, although that’s not a big problem.

If you want to program video games or high-frequency trading apps, then C++ is probably the way for you. If you want to make websites, Python, Ruby or PHP are great, along with HTML/CSS/JS. If you want to program IPhone then Objective-C is the way.

JavaScript, HTML and CSS are used together and is used for making stuff look good in your web browser. They will always be used in conjunction with a server-side language such as Python, Ruby or PHP.

In the job market, you would not likely not be using all the languages I suggested, rather jobs are generally broken out by skills:

Job RoleSkill Set
Back-end/Server-side Programmer Usually uses one of the following: Python, Ruby, PHP, Java or .Net. Has database knowledge. Possibly has some sysadmin knowledge.
Front-end/Client-side ProgrammerHTML, CSS, JavaScript. Possibly has design skill.
Mobile ProgrammerObjective-C or Java (for Android). HTML/CSS for mobile websites. Potentially has server-side knowledge.
3d Programmer/Game ProgrammerC/C++, OpenGL, Animation. Possibly has good artistic skill.
High-Performance ProgrammerC/C++, Java. May have background in mathematics or quantitative analysis.

Typically, there are folks who deal with the back-end and folks who deal with the front-end. These days there is a new crop of people who do mobile. Sometimes you can find people who do all of the above, but generally when you look for a job you will fill just one of those roles.

When learning these languages, start small. Don’t start by wanting to build the next Facebook, it’s not going to happen. Start with small projects and find tutorials. Google ‘hello world python’ or ‘hello world javascript’ to find simple tutorials to get started. Once you can program projects for yourself and friends, then you will be ready to put a portfolio together to try to get a job, or start with some freelance work to build up that portfolio. You can definitely do it.

Leave a comment