Learn to Code: What’s the Best Programming Language to Learn First?

Learn to Code: What’s the Best Programming Language to Learn First?

Whether you’re looking to build an app for a hobby, improve your career prospects or have a great startup idea learning to code is going to be an important skill to develop.

The problem is if you are a complete novice it can be difficult to know exactly where to start. Perhaps you’ve asked your developer friends for some ideas or even read a few blog posts to try and get your head around some of the best places to learn to code.

For example if you are looking to start a new career in 2017 then it might useful to see how likely are you going to get a job based on the programming language you know? Here’s a quick look at web developer and software job trends from indeed.com.

So to help you get to grips with learning to code and to help you make your mind up I’ve put together an infographic with helpful information for complete coding novices.


What code should I learn cheat sheet


Please feel free to share!

Check out my guide to the best laptops for coders. and gift idea for geeks and nerds guide.

The following two tabs change content below.


My name is Jamie Spencer and I have spent the past 5 years building money making blogs. After growing tired of the 9-5, commuting and never seeing my family I decided that I wanted to make some changes and launched my first blog. Since then I have launched lots of successful niche blogs and after selling my survivalist blog I decided to teach other people how to do the same.
  • Michael
    Posted at 14:13h, 20 January Reply

    This is the coolest infographic I have seen on the subject matter. It has helped answer my burning question on what programming language to learn. Thanks

  • David Sivocha
    Posted at 15:45h, 21 January Reply

    Your PHP section reuses the pros and cons of Ruby. Just a heads up

    • Jamie
      Posted at 17:07h, 21 January Reply

      Sorted. Thanks David

  • Joe
    Posted at 17:03h, 21 January Reply

    I like the infographic ;) Just one thing: In Java sheet You have Python job market.

    • Jamie
      Posted at 17:06h, 21 January Reply

      Amended. Thanks for the spot!

  • Kevin Flanagan
    Posted at 17:06h, 21 January Reply

    Where’s Clojure & ClojureScript?

  • Adam
    Posted at 01:31h, 22 January Reply

    Where’s Golang?

    • Jamie
      Posted at 12:57h, 22 January Reply

      We can’t add them all I’m afraid. We chose the most popular 9 languages to start with. We may do more in the next few months.

  • Donna
    Posted at 03:28h, 24 January Reply

    Thanks for the great infographic! I’m changing my vocation, and it’s great to know which language(s) I should learn next!

    • Jamie
      Posted at 14:32h, 26 January Reply

      Glad it’s helped you out Donna! All the best!

  • Son Vo
    Posted at 05:21h, 25 January Reply

    Hi! I’m Son from Vietnam. I’ve seen your Inforgraphics and it’s so great! Can I translate it into Vietnamese? Thanks a lot :)

  • Ikhbar Bismoko
    Posted at 16:27h, 06 February Reply

    Hi! I’m Ikhbar from Indonesia. I look it was so helped. I want to make a translation. May I?

    • Jamie
      Posted at 11:30h, 08 February Reply

      Yes! Please do! Let me know when it’s live. Would love to see it!

  • Alexis Brenon
    Posted at 14:32h, 12 February Reply

    Your ‘Mechanical language’ description is the same as the ‘Concurrent’ one.
    Very good infographics, it is a very good sum up of major languages.

  • George Murphy
    Posted at 23:05h, 05 March Reply

    A very helpful resource for someone who knows virtually nothing. Is it possible to get the graphic in individual segments? (I want to copy it into a Word doc for my son.)

    One bit of fine tuning on the periodic chart: the correct version is COBOL (two “O”‘s), not COBAL. COBOL is an acronym for Common Business Oriented Language and was popular in the 1960s and 1970s. It drew a lot of attention in the late 1990s in advance of the year 2000 when everyone was afraid that computers would go haywire in the changeover from 1999 to 2000 – the so-called “Y2K” problem. The Y2K problem arose because in the 1960 and 1970;s, memory was very expensive. To minimize its usage, the field for years in COBOL was a two-digit field. That raised the concern that, when 1999 became 2000, computers might not be able to distinguish between 1900 versus 2000.

    • Jamie
      Posted at 20:31h, 06 March Reply

      Thanks George. I’ll chop it up and add it later this week for you.

  • Nicole Vagt
    Posted at 13:20h, 19 March Reply

    Great resource to find some light in the jungle of programming languages! I will definitely share this to help other people find their favorite language. Thanks for this helpful infographic that deserves its name.

  • John Kozicke
    Posted at 18:56h, 05 April Reply

    I teach Computer Science at my school and would love to get a printout of these and make them into a poster. Any chance of being able to do that?

    • Jamie
      Posted at 19:01h, 05 April Reply

      Yeah no problem John. That would be great!
      I can make them into separate parts if that helps?

      • John Kozicke
        Posted at 18:34h, 15 August

        Thank you Jamie. Sorry I forgot about this post a long time ago. Do you have a link to the file?

  • Aakash
    Posted at 08:10h, 19 April Reply

    Thank you ! For sharing this valuable information all together.

  • Sebastian Sotto
    Posted at 18:31h, 28 July Reply

    Hi! Why isn’t the sql programming language in the infographic? I mean, don’t you think it is as important as the other 9?

    • Jamie
      Posted at 12:01h, 29 July Reply

      I’m planning to update the graphic to include SQL in the next few weeks.

    Posted at 09:01h, 25 August Reply

    Thanks for such a nice thing. I learned a lot from this and it helped me a lot. but can you tell me which programming language is best for making operating systems.

    • Jamie
      Posted at 07:42h, 29 August Reply

      Have a look at my infographic! the answer is there! :D

  • Jonathan Hiatt
    Posted at 22:06h, 01 September Reply

    This was very helpful to me, and fun to look at, too. Thanks for making it.

  • Muhammed younes
    Posted at 09:29h, 04 September Reply

    I’m Moe from Jordan. I’d like to know what is the best language for web development or mobile application development and the best language to learn to do it. The issue is i like working from home on computer but i need to learn and I don’t know how to go about it. I need your help.

    • Jamie
      Posted at 20:11h, 07 September Reply

      Hi Moe.

      Python or Ruby would be good for you. There’s loads of resources online. Try Treehouse.



  • Debora
    Posted at 20:17h, 05 September Reply

    Hello! Great infographic! Lots of info and I’m still very much in doubt, though. I think I like robotics, like useless machines and other fun things. Sensors, lights, things that react, you know? Like in museum installations. What language would that be? Many thanks!

  • Ashish Kothare
    Posted at 04:02h, 14 September Reply

    I’ve been involved with the Data Warehousing and Business Intelligence(SAP BO / MS-BI / Qlik / Tableau etc ) industry ever since I started (13 + yrs.) and haven’t touched a programming language yet apart from academics. I now need to learn a language in order to put it to use as I would like to develop an application that would include a good UI along with extensive data entry and editing. What do you think would be a good choice for this?

    • Jamie
      Posted at 09:46h, 15 September Reply

      I’d probably look to learn Python or Ruby for stuff like that. Ruby & Python is great for UI

  • jamallu
    Posted at 08:18h, 27 September Reply

    Write your comment here… Hi.

    I want to build an andriod application that work along with website something like saving user information….. which language should I learn????

    cuz I dont know where to start.

    I know HTML 5, CSS, n I m learning Javascript nw…

    • Jamie
      Posted at 08:29h, 28 September Reply

      Large parts of Android app development uses Java. That’s your best bet. Good luck!

  • Meliton
    Posted at 05:01h, 30 September Reply

    Nice, infographics! Way back 2007 when we graduated computer science, we are just fun of learning C, and C++, i don’t know if I can learn these new programming languages again. Thanks for the info sir.

  • manish kumar
    Posted at 06:30h, 11 October Reply

    hi i am manish kumar can i translate it in hindi for indian user easy to understand,,,,,

    • Jamie
      Posted at 09:16h, 11 October Reply

      Sure you can. Can you please send it to me once done and credit me with a link? Thanks Jamie

  • Peter Cheche
    Posted at 11:19h, 23 October Reply

    Best infographic, solved my confusion

    • Jamie
      Posted at 11:36h, 24 October Reply

      Great news! Just why I created it!

  • Ivo
    Posted at 18:26h, 23 October Reply

    Hey Jamie,

    Thanks for the list, lots info to consume ;). but what would you suggest for a beginner or what is a good combination?

    Ruby or Pythos with Java?


    • Jamie
      Posted at 11:36h, 24 October Reply

      I’d say Python is the easiest of the languages. PHP is good as well, coupled together with html and css. Its all dependent on what you want to do and achieve with coding. Good luck.

  • Michele Schmit
    Posted at 23:36h, 31 October Reply


    I’m looking at a career change and I’m very interested in programming. Can you send this to me so I can print out in Word doc for reference?


    • Jamie
      Posted at 20:41h, 01 November Reply

      I can do it as a PDF for you. Probably better than a word doc.

  • Michele Schmit
    Posted at 16:26h, 01 November Reply


    I am looking at a career change and I’m very interested in programming. Is there a way you can send I can get the infographic, so I can print it out?


    • Jamie
      Posted at 20:39h, 01 November Reply

      Hi Michele

      I will try and sort this out in the next week or so. I will email it to you as well as post it on this page.



  • GC
    Posted at 20:00h, 12 February Reply

    This is awesome!!! Thank you so much for sharing such an insightful infographic :D

  • Jigar Shah
    Posted at 06:47h, 18 March Reply

    Great Post. Awesome step by step graphical representation of programming language’s information.

    Easy guide to understanding that which programming language should use for web development. One of the best, attractive and understandable content forever. You just almost cover all the aspect for learning programming languages.

    Really Nice Work Jamie.

    I have also published an article about best programming languages to learn for web development.

    Please let me know your thoughts about it.

    Thanks for sharing.

  • Donald
    Posted at 17:03h, 26 March Reply

    Wow nice work man! I recently started out on my journey to be a website designer and i am loving it! I think my greatest achievement will be knowing how to build databases on php and python for app development. Thanks for all the cool content!

  • Renea De Castro
    Posted at 19:39h, 24 July Reply

    Hello! I am currently a college student and this information would help a lot for my peers. Do you have a pdf version of this to make posters for our school’s engineering room? Thank you!

    • Jamie
      Posted at 08:01h, 27 July Reply

      I’ll see what I can do Renea.

  • John McCormack
    Posted at 16:47h, 14 November Reply

    Good infographic.
    I found the star rating a little confusing at first. Generally, more stars would indicate something being better, but using it for a “difficulty rating” seemed to be not the best fit.
    Perhaps, a circle/filled disc would be clearer with regard to whether more stars meant “more difficult” or “easier to learn”?

    • Jamie
      Posted at 00:03h, 16 November Reply

      Good point. Thanks for the suggestion.

  • Patrick Uche
    Posted at 06:42h, 09 March Reply

    Nice Infographic.
    It helped me choose my first programming language. JAVA

  • P-Peerapat
    Posted at 09:24h, 19 April Reply

    Very good infographic.

    I am looking at a career change and I’m very interested in programming. Is there a way you can send I can get the infographic, so I can print it out?

    Thanks for sharing this. It is worth sharing the infographic.

    • Jamie
      Posted at 09:11h, 20 April Reply

      I’m working on an A4 version. Will link to the PDF once its done.

  • priya
    Posted at 05:33h, 27 June Reply

    Java, Python, Lisp, Prolog, and C++ are major AI programming language used for artificial intelligence capable of satisfying different needs in development and designing of different software. Many thanks for sharin this.

Post A Comment