Find out which programming language is right for you from an expert
This question originally appeared on Quora: What are the best programming languages to learn today? Answer by Avi Flombaum, co-founder and dean at Flatiron School.
Want to learn coding? But before you do so, you need to know what sort of programming may be apt for you?
The answer is very simple. Start writing a code. Learn how to build a program and learn how to detect and fix flaws. Once you start doing this, you will realize whether you love writing code or not. In other words, the best way to find out what aspect of coding do you love is to learn to do it, fail and experiment. And by experiment, we mean by not watching lots of pre-recorded videos.
As a beginner, when you start, donโt worry about the language, or the framework, just begin to write the code. At the end of the day, it is important for you to have understood how to program, as programming is basically a way of how you think.
Having said that, there are also a few other aspects that will help you discover and sort out your programming journey. Ask yourself the following questions:
1. Are you interested in becoming a web developer or an iOS or Android developer? In other words, do you want to learn how to build web apps or mobile apps?
2. Do you enjoy front-end development (i.e. a web page- start with HTML, CSS and Javascript) or back-end development (i.e. logic/database side of things)? At the end of the day, you will want to learn both.
However, if you figure out that you actually enjoy front-end or back-end, then you can concentrate on learning as much as possible in that domain before moving on to another sphere.
Regarding back-end languages, you have a few primary choices.
- JavaโI believe Java is the most common programming language in use today. Itโs what the AP exam uses to teach computer science (CS), and is the lingua franca at most universities for those considering a CS degree. Itโs also the core language needed for Android development. So, if youโre looking to get a CS degree or build native Android apps, you may want to start here.
- PythonโPython is whatโs used at Google, and is also being increasingly taught at universities. Its true strength is in data, so if youโre looking to become a data scientist, youโll likely need to learn Python somewhere along the way. Aside from that, itโs got its own web framework (Django) which makes it a great option for building web applications.
- RubyโMy bias will shine through hereโI absolutely love Ruby. It was developed in the 1990s and exploded in popularity after the creation of Rails, which allowed people to easily build apps for the web. Ruby is very similar to Python in a lot of ways, but the small differences are what makes me love it (and make it such a great language for people starting out). First, Ruby has a tremendously active and welcoming open-source community. One of the core tenants of Ruby is โMINSWAN,โ which means Matz (creator of Ruby) Is Nice So We Are Nice. Additionally, Ruby is incredibly expressive. Where in Python it is viewed that there should be one, and only one, right way to do something, Rubyists believe that the way we write code is an expression of our values and individuality.
Finally, itโs incredibly readable. This is how one would write a simple โHello Worldโ program in Java:
- public class Main {
- public static void main(String[] args) {
- System.out.println(โHello, World!โ);
- }
- }
This is โHello Worldโ in Ruby:
Ultimately, though, the first language will be the hardest. Itโs like learning to play guitar for the first time. You have to train your brain to work in an entirely new way. After that, picking up another instrument is relatively trivial. So focus on whateverโs going to get you fired up and keep you motivated and youโll do great.