Which Programming Language Should You Learn To Make Money?

Posted 5 years ago

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:

Language Popular Use

Python/Ruby/PHP 

Server-side for websites and mobile apps.

Objective-C

IPhone

HTML

Client-side for websites. Markup language for building web sites, the 'building block' of websites.   

CSS

Client-side for websites. Presentation language for HTML.

JavaScript

Client-side for websites, used to manipulate HTML/CSS. jQuery is what you need to know here.

Java/.Net

Android 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.

Try my newest app, Job Bytes for iOS.
Your cheat sheet to the programming interview! Free, check it out now.
 

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 Role Skill 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 Programmer

HTML, CSS, JavaScript. Possibly has design skill.

Mobile Programmer

Objective-C or Java (for Android). HTML/CSS for mobile websites. Potentially has server-side knowledge.

3d Programmer/Game Programmer

C/C++, OpenGL, Animation. Possibly has good artistic skill.

High-Performance Programmer

C/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.

Also check out

 

 

 

About the author

Dev/Code/Hack is a technology and business blog by me, Par Trivedi. I'm a software engineer and I've been writing code and managing teams for over a decade. This blog serves as a way to share thoughts and ideas about the tech/startup community, and also to educate newcomers to software development.

162 Comments

  • Van you please teach us all these languages in another article

    9 hours ago   Reply

  • It's really helpful

    John 1 week ago   Reply

  • You won't beilive I just got a western union transfer of $20,000 from the Ethicalhackers,this is way better than getting a loan.for more information visit their website http://wp.me/P8ERCy-2 or email : ethicalhackers975@gmail.com

    Austin Madranno 1 month ago   Reply

  • You won't beilive I just got a western union transfer of $20,000 from the Ethicalhackers,this is way better than getting a loan.for more information visit their website http://wp.me/P8ERCy-2 or email : ethicalhackers975@gmail.com

    Austin Madranno 1 month ago   Reply

  • We make registering,hosting and managing domains for yourself or others easy and affordable because the internet needs people.

    Toledo Rosario Abalos 2 months ago   Reply

  • First of all you should choose what you want to do. Mobile apps, software, games, etc. You can make money on every program language. Also you can start from here and try this free libraries: https://www.cleveroad.com/blog/check-out-the-benefits-of-open-source-library-and-open-source-software

    Alexporubay 2 months ago   Reply

  • this is great... just asking?? i have knowledge on android, ionic, electron , html5 and php with little knowledge only on python basics and R programming lunguage. which should i expertise in??

    joshua 3 months ago   Reply

  • Sir,is there any online tutorial for learning to design website

    Radha 3 months ago   Reply

  • I suggest to first go for the c language and javascript because this two are the basic languages for programming. Thanks

    mrunal 4 months ago   Reply

  • wow... this article has completely helped me coz i had no idea what language to start with to program whatever i want to program and after reading it, im now gonna start with python

    @ernestjedidiah(twitter) 4 months ago   Reply

  • I have been programming with Python for many years dealing with industrial automation 3D motion control, byte coding and Gcode. Since being retrenched, I have begun learning HTML/CSS, JS Java, C/C++, will be looking at earning a living on the WWW in the future and the program language recommendations here, appear quite valid to me. I too agree that intuitive coding for the user is paramount. Thank you

    fred 4 months ago   Reply

  • linkhazif@hotmail.Im not busy,but whenever I get online i'll def get w/u Sr.

    hazif 5 months ago   Reply

  • Very important and very helpful information in this page.. Thank you so much

    Aarti choudhary 7 months ago   Reply

  • Thanks very helpful

    Proggggggg 8 months ago   Reply

  • Thanks for the article.. It gives me so much information...

    Gurpreet Singh 8 months ago   Reply

  • I prefer C++ , because a person with strong understanding on c++ and OOPs can easily learn any other language without much effort. Also C++ is still using for writing core components of a system.

    xmeans.com 9 months ago   Reply

  • I'm learning C# in order to make a video game project with my friends using Unity, is there a future for this languge for making money? Is it popular enough?

    Richard 11 months ago   Reply

  • I am fresher recently completed my graduation in CSE ...where started me ?

    Ankit patidar 1 year ago   Reply

  • How To Learn Java Programming Language : http://java.meritcampus.com/core-java-topics/java-programming-language?

    sivakumar 1 year ago   Reply

  • if you want to make Money, it is better to take a gun, leave the cannoli and avoid programming in the first place.

    don corleone 1 year ago   Reply

  • Programming is very interesting and creative thing if you do it with love. Your blog code helps a lot to beginners to learn programming from basic to advance level. I really love this blog because I learn a lot from here and this process is still continuing. Love from <a href="http://www.proprogrammer.net/"> Pro Programmer </a>

    leo 1 year ago   Reply

  • I am a student of calls of six.I have a question,that is how I start proggramming

    hamim 1 year ago   Reply

  • I would personally go with Ruby On Rails, but you can always see what's trending on codering http://codering.info

    Maksim 1 year ago   Reply

  • C++ because we can shift from C++ in any language nice Post If someone is C++ fan and want to learn C++ than he must follow the bellow website to learn C++ and enjoy the C++ Programs Posted in particular site. http://cppexamples.blogspot.com/

    Iqbal 1 year ago   Reply

  • You pick up bits and pieces of all of them eventually. You don't learn programming languages, you learn programming. Companies will likely test your skills anyway with something like the coding tests from TestDome: http://www.testdome.com/

    Kevin 1 year ago   Reply

  • i am also a begginer learning 4 languages at the moment your post was good but you maade it a bit more inspirational.

    mark daniels 1 year ago   Reply

  • This blog awesome and i learn a lot about programming from here.The best thing about this blog is that you doing from beginning to experts level. Love from <a href="http://cprogramminghub.blogspot.com/"> </a>

    leo 1 year ago   Reply

  • I am 16 years old.. and want to be a game maker...pc game... which language is for me..? plz..I want the ans..vry badly.

    Al Imran 1 year ago   Reply

    • c++

      gankz 8 months ago   Reply

    • sir you are retarded you can't even read

      john 1 year ago   Reply

      • don't be a deutch bag

        reaper 1 year ago   Reply

  • Great post. Thanks. Could you please give me some advice. I have no tech background but am willing to learn. I need to create a website for my business. People log in, choose the type of food they want from the menu, pay for it, and we deliver the food to their address. I want to become independent of foreigner programmers. I want to create an easy to use website, and as importantly, be able to use the customer data from the website for email marketing, promotions and etc. What is your suggestion for me? Python? Django? HTML? Thanks

    Sane 1 year ago   Reply

  • Great post! If you know one programming language than you can understand any programming language depend's on your interest.Every programming language has it's own place.In programming world you never know when the latest trend change.so it's better idea to keep learning and keep updated.sometimes you think you gets a feeling that you know everything and sometimes you get the feeling you still need so much knowledge.so keep learning and gets latest trend's i like to add one more artcle with this article<a href="http://adf.ly/1SSm62 ">which programming language to learn in 2015 read this </a>

    ankit 1 year ago   Reply

  • Great information for all programmers. This information is very hopeful, thanks

    Jjemba Kenneth 1 year ago   Reply

  • Guys if you need to learn some languages go to codecademy.com and see if the languages you need are there

    hi 1 year ago   Reply

  • I am a beginner pls help

    YUGESH 1 year ago   Reply

    • Go to Codeacademy.com it is for the absolute beginners and by the end you'll be an expert, trust me and guess what... IT'S FREE!

      You're Welcome 1 year ago   Reply

      • No. Not completely FREE. Many of the contents in the website need you to have PRO subscription.

        Musaddique Ali 1 year ago   Reply

  • the best website to learn how to program is www.thenewboston.com

    anonymous 1 year ago   Reply

  • Remove Objective-C Replace with Swift Dan talk to me I need a tutorial website for java pls help me...

    david dkena 1 year ago   Reply

  • Sir pls advice I never have chances to program...and I lack focus and discipline..pls need an advice on how to make a new live...chnge.

    davido 1 year ago   Reply

    • Meditate.

      Yuyang 1 year ago   Reply

  • Am realy in line nw Thnks alot

    patrick 1 year ago   Reply

  • Hello im Corey and id like to thank you i started learning programming already but i didnt understand that specific languages are used for applications,but now i understand pls put another straightfoward explanation of pseudocode and algorithms!!!!!pleeeese lol !!!And thanks again!!!!!

    Corey 2 years ago   Reply

  • Years ago I wrote COBOL, PL-1, assembler and others. A few years ago I built some web pages and apps. I am retired now and would like to get back into 'coding'. I wrote some pretty deep financial applications so I know how to make something work. Any suggestions?

    Lee used COBOL 2 years ago   Reply

    • You can find job for COBOL developer

      Jack 1 year ago   Reply

  • Thank You so much for your great and valuable article. Really appreciate your well explained details. May God Bless you and your Family Always. Amen

    omar 2 years ago   Reply

  • Badass and very helpful, thanks man.

    Jake 2 years ago   Reply

  • Many thanks from down here in Uganda! Very well articulated article. Let me embark on Python n JS for now. Will be back in a few weeks with a progress report :) Cheers!

    Josh Nambale 2 years ago   Reply

  • Informative and straight to the point - thank you Par!

    Alex 2 years ago   Reply

  • get lost

    faniota 2 years ago   Reply

  • which is the best programming language for making android apps and operating systems

    aman 2 years ago   Reply

    • learn java !

      ako 1 year ago   Reply

  • I recently covered this topic in depth. Here are the 10 most important languages for a programmer to master. In my view, a coder who does not know at least one of these is wasting his or her time on weak technologies: http://hackishword.com/blog/2014/the-10-most-important-programming-languages-ever Also, here's another decent post on the subject, but I highly recommend you go with my list of 10, spoken from someone with a lot of coding under my belt: http://www.businessinsider.com/best-programming-languages-2014-12#ixzz3NZpkvjuJ

    Tomahawk 2 years ago   Reply

  • I have good knowledge of HTML, CSS, JAVASCRIPT, and C++..... wahr do you suggest for me ?

    Paul Robert 2 years ago   Reply

  • .net is not a language c# is

    fred 2 years ago   Reply

  • I know zero about this field. This gives me some guidance. Thanks

    Baron 2 years ago   Reply

  • 2014 Update: Remove Objective-C Replace with Swift

    Dan 2 years ago   Reply

  • Java high performance????? HAHAHAHAHAHAHAHAHAHHAHAHAHAHAHAHAH

    Lazar Mitic 2 years ago   Reply

  • I recently blogged at length on the most important languages http://hackishword.com/blog/2014/the-10-most-important-programming-languages-ever

    Tomahawk 2 years ago   Reply

  • Great article, thank you.

    Nic 2 years ago   Reply

  • With JavaScript (JavaScript, jQuery, jQuery Mobile, Backbone.js, Underscore.js, Parse.com, Phonegap) you can do front-end and back-end development for web and native applications.

    Peter 2 years ago   Reply

    • yes I agree, this article is pretty old though. I wrote this before the node js heyday!

      par 2 years ago   Reply

  • Thanks a lot! This is very helpful!

    richard 2 years ago   Reply

  • wow your question implies you only have to learn one language, the reality is you need knolwedge of about 10 languages and 50 million frameworks before you can be employed and earn just enough money to pay rent, if your unlucky you'll end up with a huge uni debt and no job

    drew 3 years ago   Reply

  • Thank you so much, am a student of EEE but normaaly confused which language fit me well.

    JOSEPH OUMA 3 years ago   Reply

  • Languages are mostly irrelevant. Any Tom, Dick or Harriet can learn them. The skill is to be able to write algorithms. You can learn every programming language under the sun and still write rubbish code. If I am looking for a developer/programming I look for someone who is strong in 1. Mathematics 2. Ability to state a problem. 3. Can understand complicated and ambiguous things. 4. Works from the perspective of the user (it is amazing how easy it is to spot a program written by programmers without taking into account how the user might use it) 5. Constantly questions the specifications 6. Doesn't make assumptions. 7. Oh, and knowing some programming languages is an advantage!

    Brian 3 years ago   Reply

  • This is a damn relevant read. Thank you very much.

    Richard 3 years ago   Reply

  • Quite informative. Thank you very much!

    Cameron 3 years ago   Reply

  • There's still a ton of VB work out there, and wth the amountof legacy code out there it'll be years before this demand falls. You wouldn't think it looking online though. That's why I wrote http://www.visualbasictutorial.net. Take look and let me know what you think!

    Chris 3 years ago   Reply

  • Your post is a definite motivation I'm new in programming and I'm falling in love with it. I'm learning VB.NET at college but I feel like I needed something more filling or rather challenging so I've recently started learning(Self-teaching) C++ which is fun even though sometimes it kind of makes me feel like I have an endless way to go but after reading the post it made me think I can get there which I will. Thanks a lot for the break down.

    Zweli South Africa 3 years ago   Reply

  • Oh man I've been looking for a post like this for days. Thank you sir!

    Jim 3 years ago   Reply

  • Thanks a lot for sharing this. It covers a lot of questions that were bugging me for some time. I started a blog recently about my journey to become a professional programmer, decided that it might be cool for people to see the entire process. Please let me know what you think: www.syntaxthis.com.

    Syntax This 3 years ago   Reply

  • Thanks man i am inspire with this because first i was confuced that which language i should choose but now u makes it's easy for me all of above accourding to me php, and java both are best .once again thanks

    Laxman parmar 3 years ago   Reply

  • Thanks for ur encouragement i luv programming. i was confused on how and where to start from but today u gave me hope. i pray dat God will help me achieve my goals and gimme d strenght to push on. thanks once again u made my day.

    Amalu victor 3 years ago   Reply

  • Im thinking of creating a programme for PC's.which one wold you recommend?

    Soulja 3 years ago   Reply

  • This is generally accurate. Although, python and higher level languages tend to pay less since there is less of a learning curve (less 'barrier' to entry).

    Dr Truth 3 years ago   Reply

  • I've just started to learn C# from the very fundamental basics and I'm wondering if that could help me earn money in developing apps for mobile. Some help please?

    Hassan Rashid 3 years ago   Reply

  • node.js is would probably recommend as something to watch for.

    harshit 3 years ago   Reply

  • good post, some nutters in the comments

    backspace 3 years ago   Reply

  • its good to see people like u guiding students in right manner thnks a lot masy god bless u

    omkar 3 years ago   Reply

  • Thanks for a very useful information.

    mubeena 3 years ago   Reply

  • love this post!

    Newbie 3 years ago   Reply

  • Thanks a lot! Very very helpful for me!

    Noman 4 years ago   Reply

  • fuck you. (quiet voice). Hehehehe. - Egg.

    Egg 4 years ago   Reply

  • Thank you so much! I'm 14 and want to be a programmer some day.

    Zack L 4 years ago   Reply

  • I Have To Say That This Is By Far One Of The Best Articles I've Read As An Amateur Programmer :) ... Two Thumbs Up :) ...

    Knox 4 years ago   Reply

    • thank you!

      par 3 years ago   Reply

  • I have been working in the IT(storage and virtualization) but hardly any programming experience except for college. The next step I want to take is to add a programming language under my belt. And i think you really have put it into context. I was not sure which one...well between scripting or a full blown language.....thank you

    teddy 4 years ago   Reply

  • Nicely said..sensible advice

    tweeterr 4 years ago   Reply

  • Thanks man that was a good way for me to get started and no i need to learn the languages from the books. And i choose objective C for Apple apps because the country i come from there game apps for the store there.

    Ian Mubangizi 4 years ago   Reply

  • Good

    sakthivel 4 years ago   Reply

  • Great article thanks!

    Anonymous 4 years ago   Reply

  • I liked this article because it was short and it helps simplify the process of becoming a successful programmer. After reading this, a complete beginner can then decide what it is that they want to do. beginner web developers, or people interested in it - check out this collection of important blogs related to the industry. http://devurls.co

    bj 4 years ago   Reply

  • Thanks for this article! I have a background in Graphic Design for 5 years and I'm comfortable with HTML & CSS. JavaScript & jQuery are next on my language list

    Hiten 4 years ago   Reply

  • wow....thats the best info ave ever had

    fletcher 4 years ago   Reply

  • This article is really nicely organized.

    Bre Roz 4 years ago   Reply

  • Most of the information in this article is wrong. Python and Ruby are not for developing apps, neither is PHP and CSS is not even a language. My guess is the author has not learned any of them and is just repeating some half done internet research.

    Bewildered 4 years ago   Reply

    • CSS stands for Cacade Styling Sheet.Its not a language, its for customising and better look to the web sites. DHTML cobines all those in one..

      nitish 3 years ago   Reply

    • It is for the server side of the moble apps retard.

      Yoursostupid 4 years ago   Reply

  • Most of the information in this article is wrong. Python and Ruby are not for developing apps, neither is PHP and CSS is not even a language. My guess is the author has not learned any of them and is just repeating some half done internet research.

    Bewildered 4 years ago   Reply

  • bhgj

    4 years ago   Reply

  • TANKS MAN

    DREY FROM NIGERIA 4 years ago   Reply

  • Man! what you have gave that I was searching for 10months. Within 500 words you gave 555555555555555555555555555555555555555555555555 words' information. Thanks man

    Syed 4 years ago   Reply

  • languages to learn (in this order) assembler erlang prolog lisp algol languages to use fortran ada apl a+ j languages to ignore c java everything microsoft

    eh 4 years ago   Reply

    • lol not sure I would recommend most of those.

      wut 4 years ago   Reply

  • thanks

    tawfik 4 years ago   Reply

  • Great article. BTW, I don't think Onur can read. You certainly did mention .Net, which to my knowledge includes C#. ;) Thanks for writing and sharing.

    William 4 years ago   Reply

  • Thanks for the great information! I've looked at several blogs to answer the question "what programming language to learn first" and yours is the first to answer so thoroughly with my needs in mind. Thank you!

    Dan Oliver 4 years ago   Reply

  • Hi Thanks for your nice instruction about freelancing I found a good way to make money too a good place to exposure yourself as a freelancer to employers any skill's in programming or designing or any other skills are Good to make money this is my weblog: http://howcanifindwork.wordpress.com/ I wrote something about that in there. something to share experiences in this work with others.

    aveyond 4 years ago   Reply

  • I'm happy. Thanks. Now, I'm ready to learn my first language. C/c++

    David 4 years ago   Reply

  • and no single word of C# and .net, lol you surely live in another planet or a parallel universe

    Onur 5 years ago   Reply

    • He DID mention .net, which includes c#.

      dumbbutt 4 years ago   Reply

  • Try VBA and VB.Net to be specific....I've seen more job opportunities avail themselves than any other language - period.

    Brice Richard 5 years ago   Reply

  • I'm inspired. Thanks. Now, I'm ready to learn my first language.

    Jean Frederique 5 years ago   Reply

    • Thanks for useful info . GREAT !!!

      T S 4 years ago   Reply