Looking for the Best Programming Languages? Start Here!
Pinterest Stumbleupon Whatsapp
Advertisement

Whether you’re completely new to programming or looking to jump into a new kind of programming you’ve never touched, one of the most important questions to ask is: “Which programming language is right for me?”

These days, you have so many languages to choose from, it can be quite overwhelming to pick one when you don’t have much experience. In this article, we’ll cover the best modern programming languages for web, mobile, desktop, game, embedded, and utility development. Treat this as an overview and a jumping-off point.

For Web Development

Looking for the Best Programming Languages? Start Here! programming language web development

Web development is unique in the programming realm, which presents its own unique challenges — but also some unique benefits. Web development is arguably the easiest kind of programming to pick up when you have no experience, and the web development community is huge, so we consider it a good choice for beginners.

To learn more about why and how web development differs from other kinds of coding, see our article on web development vs. programming Programming vs. Web Development: What's the Difference? Programming vs. Web Development: What's the Difference? You might think application programmers and web developers do the same job, but that's far from the truth. Here are the key differences between programmers and web developers. Read More .

For Mobile Development

Looking for the Best Programming Languages? Start Here! programming language mobile development

Mobile development has been the next big programming frontier for quite some time, and there are no signs of it slowing down anytime soon. People love their phones, and people need apps for their phones. It’s a cramped and competitive space, but breakout apps still show up every single day.

For Desktop Development

Looking for the Best Programming Languages? Start Here! programming language desktop development

Desktop apps aren’t so hot these days since the world moved on to web apps and mobile apps, but that doesn’t mean they’re obsolete. Many people, like myself, prefer offline desktop apps whenever possible. And the good news? Whereas desktop apps were once complicated to make, it’s become much easier lately.

For Game Development

Looking for the Best Programming Languages? Start Here! programming language game development

Game development has never been easier. With the abundance of free (and open source) game engines out there, you can pretty much pick any mainstream language and be able to create games with it. But some languages are obviously superior, and those are the ones we recommend if you’re new.

  • C#: Unity is the most newbie-friendly game engine out there and its primary language is C#. The engine supports both 2D and 3D game development, and it can export builds to dozens of platforms including Windows, Mac, Linux, Android, iOS, and HTML5. Start with our beginner’s guide to Unity Programming A Game With Unity: A Beginner's Guide Programming A Game With Unity: A Beginner's Guide In the evolving landscape of indie game development, Unity has emerged as something of a de-facto standard: its low cost, ease of use, and broad feature set make it ideal for rapid game development. Read More .
  • Java: Java programmers can use the open source LibGDX framework to quickly create games from scratch. The framework can export to any desktop platform that supports Java, plus Android and iOS. It’s a simple and straightforward framework that’s conducive to rapid development. Highly recommended.
  • Haxe: Haxe is a newer, modern language that can transpile to many other languages, including Java, C++, C#, and Python. Using a game engine like HaxeFlixel or Luxe, you can develop cross-platform 2D games much faster than in other languages. Unfortunately, no 3D Haxe engine exists as of this writing.
  • JavaScript: JavaScript has taken over Flash as the best and fastest way to develop web games. I highly recommend the Phaser engine. Even better, you can use a tool like NW.js to package web games for desktops and mobiles, allowing you to do desktop and mobile game development with JavaScript.

For Data, Scripts, and Utilities

Looking for the Best Programming Languages? Start Here! programming language terminal utility

A lot of times, programming isn’t even done to create software per se. Maybe you just need to crunch some data and model trends, or maybe you just need a utility script that automates otherwise tedious tasks. In those cases, there are two superbly useful languages that’ll come to the rescue.

Which Languages Do You Like?

First decide what kind of programming you want to do, then find out which languages are best suited that area. Once you have an overview, just pick whichever language you feel most comfortable with. You’ll be more productive and actually enjoy programming this way. Don’t go with the “best” language if you hate it!

What kind of programming are you interested in? Which languages do you like best? Did we miss any important ones? Let us know in the comments!

Image Credit: Makaule/Depositphotos

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. A41202813GMAIL
    November 14, 2017 at 7:07 am

    IBM AS400 COBOL FOREVER !

  2. John Brooking
    November 13, 2017 at 4:00 pm

    C?

    Sure, it's mostly used these days for low level stuff like OS's and hardware interfaces, but surely those count as a application category? And it's the syntactic forerunner of Java/JavaScript and C++/C#. Learn C syntax and those others will be easier to pick up.

    • John Brooking
      November 13, 2017 at 7:35 pm

      And Arduino etc!

  3. Nikey646
    November 7, 2017 at 11:13 pm

    I don't mean to be a fanboy here but it is disappointing to see that you ignored the fact that C# and .Net itself can be used for all the categories you've listed here. Not to mention, rather then mentioning .Net Core, which is an officially support runtime for Linux, Mac, and Windows, but Mono. It also has support for developing mobile application for Android and iOS via a third party framework, along with native support for (the now deprecated) windows phones... Let us not forget the entire reason that .Net Core came into existence, the fact that C# can be used to create server backends, and with webassembly might even be able to work on the front end itself... Oh and scripting? Rosyln and .Net Core also brought that forth...

    But hey, at least you found it for desktop and game development, but you didn't find out that there are plenty of new and upcoming game engines that use C# as the primary language...

  4. Emil Soder
    November 7, 2017 at 10:30 pm

    I must say that the author forgot about C# for web server side development, specifically .NET Core. It's an amazing cross-platform framework and is easy to get started with.

  5. Voc vach
    November 7, 2017 at 6:49 pm

    Golang: fast, simple and fun. Crossplatform!

  6. JUNAID
    November 7, 2017 at 6:14 pm

    You forgot Kotlin!!!

  7. PerlCoder
    November 7, 2017 at 8:49 am

    You forgotten Perl!

    • Dan
      November 7, 2017 at 4:27 pm

      If you want to work on legacy stuffs, perl is the way to go. If you want to work on anything current or new, python is the way to go.

      • PerlCoder
        November 8, 2017 at 5:57 pm

        You're really wrong or doesn't know about modern perl projects.

    • Tim
      November 13, 2017 at 6:55 pm

      Over the years, I have done an astonishingly wide variety of things in perl. Job control processes, database processes, spreadsheet creation, GUI screens for managing batch processes, reading data from all kinds of input formats (XLS/XLSX, CSV, XML, reports output to files, etc.), and on and on. It really is the Swiss Army knife of languages. It may not be the newest, but if it can get the job done without having to learn/use another "language of the day", it's worth it's weight in productivity.

  8. Amaury
    November 7, 2017 at 1:54 am

    Why it's not C++ in Game development?

  9. DrMP
    November 7, 2017 at 12:20 am

    Delphi is my favorite language to compile executables.
    Some pros:
    1. Compilation is incredibly fast, particularly compared to C++.
    2. Compiles to executable, not interpreted by runtime engine which is slower, may have security issues and is subject to change as engine is updated.
    3. Code is optimized to execute quickly.
    4. Was designed from the beginning to interface with databases. ("Delphi", "Oracle"?)
    5. True destructors, as opposed to garbage collection, ensures cleanup as the user wants.
    6. Easy to debug.
    Cons:
    1. Not as well known as MS products or Java.
    2. Not as easy to find work in it.

  10. Hildy J
    November 6, 2017 at 8:08 pm

    It's not sexy but it's stable - for corporate development and (even more so) maintenance, don't rule out COBOL. COBOL programmers (like me) are retiring but the programs on corporate mainframes aren't and corporations need people to keep them going. If you can combine COBOL with a more modern language, look to big consulting firms that work on conversion projects.