Choosing the Right Programming Language to Learn First
When it comes to choosing a programming language to learn first, many people are overwhelmed by the numerous options available. With languages like Python, C, C++, SQL, C#, Java, Swift, and many more, it can be difficult to decide which one to start with. However, in this article, we will explore why understanding the concept of language is essential before diving into programming, and how this applies to computer programming.
Understanding Language as a Human Being
Imagine a human being who has never known the concept of language. If such a person were to walk up to someone and ask for help, they would likely start with simple languages like Spanish or English, which are widely spoken and understood by many people. These languages may seem simpler than others, but they are still powerful tools for expressing emotions and ideas. The same applies to computer programming languages; the simplest language should be chosen first because once you learn the concept of language as a human being, you can transfer that knowledge to another language.
The Concept of Language in Computer Programming
In computer programming, the concept of language is used to express ideas to a computer. The idea behind this is not unlike how humans communicate with each other; we use words and syntax to convey our thoughts and emotions. Just as English or Spanish may seem simple compared to Japanese or Chinese, but still convey complex ideas, computer programming languages can also be easy to learn once you understand the basic concepts of language.
The Importance of Syntactical Difficulty
However, when it comes to choosing a programming language to learn first, some languages are more suitable than others. In particular, languages like C and C++ have syntactical difficulty levels that are much higher than other languages. This means that beginners may struggle with the tiny details of these languages, which can be frustrating and confusing. Additionally, just as learning grammar rules in a human language can help you understand complex ideas, understanding syntactical concepts in computer programming can make it easier to apply those same concepts to another language.
Focusing on Concepts Before Syntax
When choosing a programming language to learn first, it's essential to focus on the conceptual aspects before diving into syntax. Start with languages that have a lower syntactical difficulty level and concentrate on learning the basic concepts of language. This will help you develop a strong foundation in programming principles and make it easier to transfer your knowledge to other languages.
The Recommended Language: Python
Based on these principles, our recommendation for a first-language is Python. Python is considered one of the top-growing languages in the world, and many top universities are introducing it as an introductory language. The reason for this lies in its elegance and simplicity, making it an ideal choice for beginners. Additionally, Python has been used to build many popular applications and services, including Google, Dropbox, Pinterest, Reddit, Instagram, BitTorrent, and YouTube.
Conclusion
Choosing the right programming language to learn first can be daunting, but by understanding the concept of language as a human being and applying that knowledge to computer programming, you can make an informed decision. By focusing on concepts before syntax and choosing languages with lower syntactical difficulty levels, you'll set yourself up for success in learning programming principles. With Python being an excellent choice for beginners, start your programming journey today and explore the many exciting possibilities that it has to offer.
"WEBVTTKind: captionsLanguage: en- Hey guys, what is up?This is Qazi from CleverProgrammer.com.And today, I would liketo answer the questionof what programming languageshould I learn first.(static)Now, there are a ton ofprogramming languagesfor 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 hereand overwhelm you with thenumber of languages that exist,but it's important for you to understand,first of all, why thelanguages might existand, second of all,which language should youstart off with first, right,which is actually the mostimportant question for you,especially if you're watching this videoand you wanna know which language to pick.Okay, so if today a humanbeing walked up to mewho did not know theconcept of language, right?Let's say he walked up to meand he knew no languages whatsoever.What language would I liketo get him started off with?And I'd be like hmm,definitely not Japanese.Right?That's one language I probablywouldn't want to start him off with,simply because it's a little complicated,a little bit more complicatedthan say Spanish or English,which are, you know, on thelanguage 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 justbecause they're simplerdoesn't mean that they're very powerful.They're also spoken pretty worldwideand a lot of people understand them.So, even though they're simple,they're still pretty powerful.Now, let's transition thatover to computer programming.What language should I start off with?Well, to answer that question,I would say start off withthe simplest language, right?Definitely do not get started offwith a really complicated languagebecause here's the fact, okay.If you do not know the conceptof language at all, right,and I'm not saying you're a baby,where your neuroplasticity is so highthat you just pick up anything,let's say you're an adultand you just don't knowthe concept of languages.You wanna definitely startoff with the easiest languagebecause once you learn the conceptof language as a human being,it's a way to express your emotionsand 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 toactually look that upand learn something inreference to another thing.So, in terms of computer programming,if you know the simplest language,then when you go over toanother complicated language,you can just go,how do I do this thing that I doin this other language that I knowin this language that I'm trying to learn.Okay?So, your research processbecomes a lot simpler.And the ideas are all the same, you guys.For example, the emotionsthat American peopleor Italian people orSpanish people express,people in Japan or China expressthe same emotions, right?The tool that they use,the language syntax,the specificity of eachlanguage might differ,but at its very core,we're still trying to express emotionsof sadness, happiness, cherish,hopefulness, whatever, right?Computer programming languages,you are trying to expressideas to a computer,so it can translate it for you, right?It's a really smartfriend that is right therewho's listening to you.You just need to speak to him.Okay, now I wanna talkabout what languagesmaybe you should not start off with.I would recommend that you not start offwith C or C++ or C#,pretty much any of the C languages.And the reason is because theirsyntactical difficulty levelis much, much higher.So, you have to worry abouteach little, tiny detailor what you're saying to a computerwill make no sense whatsoever.So, not only are you bogged downby the conceptual difficultywhen you're first learningcomputer programming,you're also bogged down bythe syntactical difficulty,you know, which is literallyhow you're typing something.It needs a curly brace, it needs this,it needs that, embellishments, right?Almost like if you were writing Englishand you're first learning it,if you don't write commaor period or something,you're just not get understoodat all by another person.That would be very frustrating to youif English was your first languagebecause you'd be like, this is so...I don't know whether myproblem lies in the factthat I'm speaking my ideas correct,the way I'm expressing it,or am I having some kindof grammatical error.So, start with something that's...Just focus on the conceptualstuff first, okay?So, start with somethingthat has a syntacticaldifficulty that's lower.Understand the concepts, right?In computer programming,you have a concept of looping over things.So, if it's one taskthat you want to do over and over again,that's called a loop.Well, if you learn what aloop is in one language,you can very easily go to another languageand 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 learnto 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 youguys would be to start offwith the language Python, okay?And Python, there's a reasonwhy it's the top growing,one of the top growinglanguages in the world.And if you look at mostof the top universities,they're actually making thatthe introduction language.And the reason why they're doing thatis because of howelegant and simple it is.Now, don't get its simplicity confusedwith maybe that it can't do more.Remember, Google, Dropbox, Pinterest,Reddit, Instagram, and I can go on,but those were all builtoff of Python, okay?Even BitTorrent.So, all of these things wereactually built off of Python.Youtube was built off of Python.Sergey Brin, I think that'swho actually said it,the person who founded Google pretty much.He said \"Python where wecan, C where we must,\"which means, we want to usethe C programming languagewhere we have toand Python programminglanguage where we can.Okay?Now, in terms of the languagesand where they work...So, let's say you learnthe language Python, right,and you start off with that language.Now, you can always branchout and go to other languages.Once you understand theconceptual difficultyand the conceptual stuff,you can translate thatover to any other language.Now, Python is a powerful languagethat allows you to do prettymuch anything that you want.It's also important to understandsome of the differencesbetween why you shouldpick another language.Okay, now let's talkabout maybe once you're at alevel of certain proficiencyand you wanna transitionover to another language,why would you wanna choosebetween different languagesand work with one rather than the other?In reality, you're workingwith a lot of languagesat the same time, okay?Now, the reason why youwanna pick one languageand another is because of its benefits.For example,if you wanna do a lot of stuffrelated to web development,like front end, where nice graphics showand you click on something andthings respond really fast,that is called JavaScript.That's the beauty and magic of JavaScript,where you click onthings and they drag downand drop down menus andall this really fancy stuffthat you see on the web.That's done by JavaScript.So, for that, you wantto learn JavaScript.Should you start off with JavaScript?Maybe.I would still say youstart off with Python,then transition over to JavaScript.Just to give you an example,I worked on a projectthat was 30 hours long.It's called Agile Directions.I might just even link it below,so you guys actually canclick it and check it out.I did not know a singleletter of JavaScript,but since I knew Python so well,I just went on.I would go online and justlook up how to do thingsthat I would do in Python,how to do them in JavaScript,and I was able to bust outthat entire giant projectin two days.Okay?So, yeah.Now, web languages, you have JavaScript.For data science and a lotof data analytical stuffand scientific stuff,and even things likebuilding responsive websites,Python can help you.Python brings you atremendous amount of powerand it makes it very easy todo 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 tolearn those languagesif you're working in, say,you're doing algorithmic trading,where you have to make eachtrade within a nanosecond.You're making thousands oftrades in nanoseconds, right?You need something that'sreally freaking fast.So, C might actuallybe a good idea or C++.Linus Torvalds hates C++.He loves C, so that's whyI keep saying C first.So, that's why.Java, probably one of the same reasons.Video game design, verypopular, powerful language.Android applications,Java is very powerful.Okay guys, hopefully thatgives you a little bitof an overview about different languagesand why you should pick one of them.I would say start off witha very simple language.Python would be my go-to choice for you.And, other than that, thankyou guys for watching this.I love every single one of you.Do me a favor, subscribe,so you can get more information like this.I have a bunch of othervideos on tutorialsthat you can watch to startlearning Python today.Take care.I will see you guys in the next video.\n"