What Programming Language Should I Learn First?
Today, I would like to answer the question of what programming language should I learn first.
Now, there are a ton of programming languages for you to choose from. You have Python, you have C,
you have C++, you have SQL, you have C#, you have Java, Swift. And the list goes on forever.
However, my point is not to sit here and overwhelm you with the number of languages that exist, but it's important for you to understand, first of all, why the languages might exist and, second of all, which language should you start off with first, right, which is actually the most important question for you
and you wanna know which language to pick.
Okay, so if today a human being walked up to me who did not know the concept of language, right? Let's say he walked up to me and he knew no languages whatsoever. What language would I like to get him started off with? And I'd be like hmm, definitely not Japanese. Right? That's one language I probably wouldn't want to start him off with, simply because it's a little complicated, a little bit more complicated than say Spanish or English, which are, you know, on the language difficulty spectrum, they're on level one. But at the same time, if you think about this human language, like English and Spanish, you can't say that just because they're simpler doesn't mean that they're very powerful. They're also spoken pretty worldwide and a lot of people understand them.
So, even though they're simple, they're still pretty powerful. Now, let's transition that over to computer programming. What language should I start off with? Well, to answer that question, I would say start off with the simplest language, right? Definitely do not get started off with a really complicated language because here's the fact, okay.
If you do not know the concept of language at all, right, and I'm not saying you're a baby, where your neuroplasticity is so high that you just pick up anything, let's say you're an adult and you just don't know the concept of languages. You wanna definitely start off with the easiest language because once you learn the concept of language as a human being, it's a way to express your emotions and ideas to other people.
Once you learn that at its very core, you can transfer over to another language, like say, Japanese, and go how do you say banana in Japanese, how do you say this in Japanese. At least you can look it up. You have the tools to actually look that up and learn something in reference to another thing.
I don't know whether my problem lies in the fact that I'm speaking my ideas correct, the way I'm expressing it, or am I having some kind of grammatical error.
So, start with something that's... Just focus on the conceptual stuff first, okay? So, start with something
that has a syntactical difficulty that's lower. Understand the concepts, right? In computer programming,
you have a concept of looping over things. So, if it's one task that you want to do over and over again, that's called a loop.
Well, if you learn what a loop is in one language, you can very easily go to another language and apply the same loop. If you learn what a if condition is, if this, then that, right? If Johnny worked over 40 hours, Johnny gets paid overtime.
Now, don't get its simplicity confused with maybe that it can't do more. Remember, Google, Dropbox, Pinterest, Reddit, Instagram, and I can go on, but those were all built off of Python, okay? Even BitTorrent. So, all of these things were actually built off of Python. Youtube was built off of Python.
Sergey Brin, I think that's who actually said it, the person who founded Google pretty much. He said "Python where we can, C where we must," which means, we want to use the C programming language
where we have to and Python programming language where we can. Okay?
Now, you can always branch out and go to other languages. Once you understand the conceptual difficulty and the conceptual stuff, you can translate that over to any other language. Now, Python is a powerful language that allows you to do pretty much anything that you want.
That's the beauty and magic of JavaScript, where you click on things and they drag down and drop down menus and all this really fancy stuff that you see on the web. That's done by JavaScript. So, for that, you want to learn JavaScript. Should you start off with JavaScript? Maybe. I would still say you start off with Python, then transition over to JavaScript. Just to give you an example, I worked on a project that was 30 hours long. It's called Agile Directions. I might just even link it below, so you guys actually can click it and check it out.
Now, web languages, you have JavaScript. For data science and a lot of data analytical stuff and scientific stuff, and even things like building responsive websites, Python can help you. Python brings you a tremendous amount of power and it makes it very easy to do really complicated things.
You're making thousands of trades in nanoseconds, right? You need something that's really freaking fast. So, C might actually be a good idea or C++. Linus Torvalds hates C++. He loves C, so that's why I keep saying C first. So, that's why. Java, probably one of the same reasons. Video game design, very popular, powerful language. Android applications, Java is very powerful.
Now, there are a ton of programming languages for you to choose from. You have Python, you have C,
you have C++, you have SQL, you have C#, you have Java, Swift. And the list goes on forever.
However, my point is not to sit here and overwhelm you with the number of languages that exist, but it's important for you to understand, first of all, why the languages might exist and, second of all, which language should you start off with first, right, which is actually the most important question for you
and you wanna know which language to pick.
Okay, so if today a human being walked up to me who did not know the concept of language, right? Let's say he walked up to me and he knew no languages whatsoever. What language would I like to get him started off with? And I'd be like hmm, definitely not Japanese. Right? That's one language I probably wouldn't want to start him off with, simply because it's a little complicated, a little bit more complicated than say Spanish or English, which are, you know, on the language difficulty spectrum, they're on level one. But at the same time, if you think about this human language, like English and Spanish, you can't say that just because they're simpler doesn't mean that they're very powerful. They're also spoken pretty worldwide and a lot of people understand them.
So, even though they're simple, they're still pretty powerful. Now, let's transition that over to computer programming. What language should I start off with? Well, to answer that question, I would say start off with the simplest language, right? Definitely do not get started off with a really complicated language because here's the fact, okay.
If you do not know the concept of language at all, right, and I'm not saying you're a baby, where your neuroplasticity is so high that you just pick up anything, let's say you're an adult and you just don't know the concept of languages. You wanna definitely start off with the easiest language because once you learn the concept of language as a human being, it's a way to express your emotions and ideas to other people.
Once you learn that at its very core, you can transfer over to another language, like say, Japanese, and go how do you say banana in Japanese, how do you say this in Japanese. At least you can look it up. You have the tools to actually look that up and learn something in reference to another thing.
So, in terms of computer programming, if you know the simplest language, then when you go over to another complicated language, you can just go, how do I do this thing that I do in this other language that I know in this language that I'm trying to learn. Okay? So, your research process becomes a lot simpler. And the ideas are all the same, you guys. For example, the emotions that American people or Italian people or Spanish people express, people in Japan or China express the same emotions, right? The tool that they use, the language syntax, the specificity of each language might differ, but at its very core, we're still trying to express emotions of sadness, happiness, cherish, hopefulness, whatever, right? Computer programming languages, you are trying to express ideas to a computer, so it can translate it for you, right? It's a really smart friend that is right there who's listening to you. You just need to speak to him.
Okay, now I wanna talk about what languages maybe you should not start off with. I would recommend that you not start off with C or C++ or C#, pretty much any of the C languages. And the reason is because their syntactical difficulty level is much, much higher. So, you have to worry about each little, tiny detail or what you're saying to a computer will make no sense whatsoever. So, not only are you bogged down by the conceptual difficulty when you're first learning computer programming, you're also bogged down by the syntactical difficulty, you know, which is literally how you're typing something. It needs a curly brace, it needs this, it needs that, embellishments, right? Almost like if you were writing English and you're first learning it, if you don't write comma or period or something, you're just not get understood at all by another person. That would be very frustrating to you
if English was your first language because you'd be like, this is so...
if English was your first language because you'd be like, this is so...
I don't know whether my problem lies in the fact that I'm speaking my ideas correct, the way I'm expressing it, or am I having some kind of grammatical error.
So, start with something that's... Just focus on the conceptual stuff first, okay? So, start with something
that has a syntactical difficulty that's lower. Understand the concepts, right? In computer programming,
you have a concept of looping over things. So, if it's one task that you want to do over and over again, that's called a loop.
Well, if you learn what a loop is in one language, you can very easily go to another language and apply the same loop. If you learn what a if condition is, if this, then that, right? If Johnny worked over 40 hours, Johnny gets paid overtime.
That idea, if you can learn to express it in one language, you can very easily express it in another. So, my recommendation to you guys, there are a lot of languages to learn, but my recommendation to you guys would be to start off with the language Python, okay? And Python, there's a reason why it's the top growing, one of the top growing languages in the world. And if you look at most of the top universities,
they're actually making that the introduction language. And the reason why they're doing that is because of how elegant and simple it is.
they're actually making that the introduction language. And the reason why they're doing that is because of how elegant and simple it is.
Now, don't get its simplicity confused with maybe that it can't do more. Remember, Google, Dropbox, Pinterest, Reddit, Instagram, and I can go on, but those were all built off of Python, okay? Even BitTorrent. So, all of these things were actually built off of Python. Youtube was built off of Python.
Sergey Brin, I think that's who actually said it, the person who founded Google pretty much. He said "Python where we can, C where we must," which means, we want to use the C programming language
where we have to and Python programming language where we can. Okay?
Now, in terms of the languages and where they work... So, let's say you learn the language Python, right, and you start off with that language.
Now, you can always branch out and go to other languages. Once you understand the conceptual difficulty and the conceptual stuff, you can translate that over to any other language. Now, Python is a powerful language that allows you to do pretty much anything that you want.
It's also important to understand some of the differences between why you should pick another language. Okay, now let's talk about maybe once you're at a level of certain proficiency and you wanna transition over to another language, why would you wanna choose between different languages and work with one rather than the other?
In reality, you're working with a lot of languages at the same time, okay? Now, the reason why you wanna pick one language and another is because of its benefits. For example, if you wanna do a lot of stuff related to web development, like front end, where nice graphics show and you click on something and things respond really fast, that is called JavaScript.
That's the beauty and magic of JavaScript, where you click on things and they drag down and drop down menus and all this really fancy stuff that you see on the web. That's done by JavaScript. So, for that, you want to learn JavaScript. Should you start off with JavaScript? Maybe. I would still say you start off with Python, then transition over to JavaScript. Just to give you an example, I worked on a project that was 30 hours long. It's called Agile Directions. I might just even link it below, so you guys actually can click it and check it out.
I did not know a single letter of JavaScript, but since I knew Python so well, I just went on. I would go online and just look up how to do things that I would do in Python, how to do them in JavaScript, and I was able to bust out that entire giant project in two days. Okay? So, yeah.
Now, web languages, you have JavaScript. For data science and a lot of data analytical stuff and scientific stuff, and even things like building responsive websites, Python can help you. Python brings you a tremendous amount of power and it makes it very easy to do really complicated things.
Why you might wanna learn C or C++ may be based on the speed that you need. C is really known for its efficiency. So, you might want to learn those languages if you're working in, say, you're doing algorithmic trading, where you have to make each trade within a nanosecond.
You're making thousands of trades in nanoseconds, right? You need something that's really freaking fast. So, C might actually be a good idea or C++. Linus Torvalds hates C++. He loves C, so that's why I keep saying C first. So, that's why. Java, probably one of the same reasons. Video game design, very popular, powerful language. Android applications, Java is very powerful.
Okay guys, hopefully that gives you a little bit of an overview about different languages and why you should pick one of them. I would say start off with a very simple language. Python would be my go-to choice for you. And, other than that, thank you guys for watching this.
Comments
Post a Comment