Which Programming Language Should I Learn First?

Which Programming Language Should I Learn First?


Hey, guys, Sylvester Morgan here with SylvesterMorgan.com. So, you’re just starting out on your journey
to become a software developer or learning how to write code. Which programming language should you learn
first? This is a question that you’re going to face. If you do any research you’re going to see
that there are so many programming languages. C#, C++, C, Objective C, Python, Ruby, JavaScript,
Java, PHP, SQL, there are so many different languages. Now, all of these different languages were
created to make it easier to solve different kinds of problems, and to solve problems in
different ways. But with so many different choices, it can
be very overwhelming for somebody getting started to know: Which languages should I
learn first? You want to know which language is easiest
to learn, which language can you learn in the least amount of time, which language is
the most popular and widespread so you’ll have job security. I spent a lot of time researching this question
when I got started. I spend too much time researching this question. I’ve had a lot of exposure to different programming
languages over the years so I’m going to help you guys out. I’ll share with you guys the advice that I
would give myself years ago when I got started so that you can just go ahead and just pick
language and get started learning with confidence. Ok, so just like with anything, you’re going
to hear a lot of different opinions about this question: which language should you learn
first? You’ll hear things like such and such a language,
PHP for example, Java, those languages are dead, nobody uses those languages anymore,
when in reality, a lot of companies still use those languages and those languages are
popular and are not going anywhere anytime soon. So, let me tell you guys my background. The first language I ever wrote any code in
was Python. I did a search for a tutorial on programming,
and I found a video where the guy was teaching the basics using Python. Next, I had a basic Programming Design and
Logic class and in this class we used Visual Basic. Then, I took a web development class and we
used HTML, CSS and JavaScript. I also took a database design class where
we used Sequel, or SQL. Then I went on to take a C++ class. And then at the same time I took a more advanced
C++ class while taking a Java class. Then I learned C# using PluralSight and other
online resources. There was also a time that I interviewed for
a WordPress developer position and they asked me if I knew PHP. I didn’t but the developer said, “If you can
learn C++, you’ll have no problem learning PHP.” So I said, “Here, I’ll go to a bookstore after
this interview and get a PHP book and I’ll let you guys know how familiar I am and how
long I think it will take me to learn.” So, I went to the bookstore right after the
interview. The bookstore was right around the corner. I purchased a PHP book. As I was flipping through, the language looked
very similar to what I had already learned and I let the company know that I could learn
PHP in no time. I’ve also had exposure to VB Scripting and
currently, we also use a language called MDX, or Multi-Dimensional Expressions, which is
a language that allows you to query multidimensional cubes in business intelligence and data warehousing. So the point is that I’ve had a lot of exposure
to a lot of different languages. After learning and being exposed to and working
with so many different languages, the biggest thing you can take away from this video is
that it probably does not matter that much which language you learn first. Yes, there are a lot of very specialized languages
that are not very popular or widely used but the majority of the languages mentioned in
this video and a few more are very popular and you’ll find that the basics transfer from
language to language. Once you learn one of these languages, it’s
going to be very easy for you to pick up the next and to learn more languages after that. So, with that being said, if you have any
idea what kind of programming you want to do, or you already know whether you want to work
for a big company or a small company, or you know what kind of job you’re already interested
in, then go ahead and use the language that is most popular for that job or your industry
or that location. You can find this out by doing just a little
bit of research if you do a search for the particular job postings, or you can look at
job posting for a particular company to find out pretty quickly what kind of languages
they use at that company. Or if you already work for a company and you
just want to learn how to write the code, so maybe you can do some work within that
company, then it’s easy to find out what languages they use, and you can go ahead and start with
one of those languages. But if you have no idea what kind of job you
want to get, what kind of developer you want to be, or if you don’t even know what the
different kind of developers there are, this is ok also. It’s awesome that you’re interested in learning
and you have to start somewhere. What are some of the things to consider when
evaluating a programming language? The first thing that I’ll tell you about the
popular programming languages that I’m referring to is that they’re all what are called high
level languages. This means that the languages used today are
human readable. The average person can look at some code and
kind of get an understanding of what the code is doing. The code that you’ll write, that developers
write, is not something that your computer actually understands. The code is run through something called a
compiler or interpreter that takes your code that looks pretty, a lot like English in many
cases, and then it translates that code into something that the computer can understand. This is why I say that it doesn’t matter all
that much which one you start with because all of these languages are high level languages. Another consideration is language syntax. Syntax is kind of the grammar of the language,
or how you say the things that you want to say, what keywords there are and what those
keywords mean in that language. It’s kind of like the rules of how you go
about saying what it is you want the computer to do. Some of the languages are very picky about
what you say so you have to be very specific about what it is you want the computer to
do. Where in other languages you can say something that’s
kind of vague, and it just assumes it knows what you’re talking about, which can be good or bad. Some of the languages can be very verbose. Some of them are very forgiving. Some languages are case-sensitive, so Sylvester
with a lower-case “s” means something different than Sylvester with an uppercase “s”. Some languages, the white space matters. If you have indentation, that means something. Whereas other languages, you can format the
code however you want. The white space or the spaces and tabs and
everything don’t mean anything. In some languages, you tell the computer what
you want it to do, but you don’t specify how it should go about doing it. So you just tell it what to do and it finds
the best way to do it, the most efficient way to do it. Whereas in some languages, you have to specify
not only what you want it to do, but how it should do it, step by step. Tell it what order it should do things in
so you have to be very specific. If you’re interested in digging deeper into
this stuff, you can do a search on what are programming
paradigms or what are the different ways of going about solving a problem. Another factor is how easy is it to get started. When you’re writing code, you’re going to
do it in what’s called a text editor or some kind of development environment. Some of these development environments or
text editors are very easy to download in a matter of minutes and just start coding,
whereas some of the development environments offer a lot more features, so they can be
a little bit confusing at first. You just have to give a little bit more effort
up front to learn what kind of project you’re creating, depending on what kind of application
or piece of software that you’re trying to create. All of this can be very overwhelming. I spent so much time, when I got started I
spent so much time trying to find the prefect language to learn. I did a lot of overthinking and over-analyzing. I had analysis paralysis. I spent a lot of time that I could have been
learning. After working with all these different languages,
the syntax, the way you say things in these languages is not that different so it doesn’t
really matter. Like I said, if you know what you want to
do, or have an idea of what path you want to take, like if you’re interested in becoming
a web developer, then the first thing you’ll learn is HTML. And then from there, you’ll learn CSS and
then JavaScript. If you’re interested in developing iPhone
apps, you’ll learn Objective C or Swift. And if you’re interested in working for a
big enterprise company, then you’re going to know C# or SQL or Java. But if you’re not sure where to start, my
recommendation is just to pick any one of these languages. They’re all high level and the development
environments and other tools that you use to develop will help you. Some people do recommend Python as a first
language. I know some top universities use Python as
the language for introductory programming classes. This is because of how easy it is to install
Python and start working with it and how simple it is to start coding. But Python is also a very powerful language,
so with that power and that freedom come responsibility. You will have to learn because you can run
into bugs and other issues if you’re writing some simple code and it’s making assumptions
about what you’re saying rather than forcing you to be specific about it. You do still have to learn. It is easier up front but you have to be more
disciplined about some of that stuff later. With some of the languages like C#, which
I also recommend as a language to start with, it doesn’t take a little bit more work up
front to get started, but it doesn’t take that much more work, and it’ll teach you how
to be specific about what you’re saying. These are things that you’re going to have
to eventually learn anyway. And some of the arguments against some of
these languages like, you have to be so specific; you have to include a semicolon at the end
of each statement. The development environments that you use
are very helpful at pointing these things out. So, if you’re missing a semicolon, the development
environment is going to tell you which line of code you’re having the issue with and you’ll
be able to quickly identify that you need a semicolon or something. And pretty much any error or issue you run
into while coding if you get any error message and you troubleshoot it and you’re not able
to figure it out, you can copy the error message and paste it into Google and you’ll find a
lot of resources that will be able to help you solve the issue. This is why I say that it doesn’t really matter. I do get the arguments for starting with Python. I also do recommend starting with Python. But the other languages, C#, SQL, these are
also languages that I recommend. They’re all high level and the development
environments are very helpful. They may take a little more work following
along on a tutorial but it’s worth it and you have to learn that stuff anyway. If you’re really committed to it, you can
take any one of these languages and get started with it. Then after learning that first language, like
I said, you can learn each language after that very quickly. In the real world, you’re going to be interacting
with multiple languages anyway. As you learn your second language and third
language later on down the years, you’ll learn the strength and the weaknesses of each particular
language and how they are better or worse at solving different kinds of problems. But don’t let all that hold you up. Just pick one of those languages and get started
today. Thank you guys for watching. Click the thumbs up if you like the video. Please subscribe if you want to continue receiving
this content. Thank you guys and I’ll see you in the next video.

43 thoughts on “Which Programming Language Should I Learn First?”

  1. Java probably the best language to start. Because you can find books from Elementary Programming to Data structures, algorithms and compilers.

    A good book to learn is Introduction to Java Programming by Y. Daniel Liang.

  2. Great content I've been watching all of your videos so far & I love them all! Great insight & info thanks for sharing!

  3. I am trying ti learn Python for while, I use the bok learn python the hard way and i am half way through the book
    But someone told me that i should learn c++ as it is more useful and efficient, should i lear python first or go to c++

  4. Never learn python first.
    It contains no semicolon and curly braces and basic syntax.

    It will confuses newbs to structural programming.

    I would recommend c++, c# or java cuz it has oop done easy like:

    Constructor (i know python has _init_ but its really confusing for newbs),

    Easy access modifier and class naming and method naming.

  5. Hi what do you think about this plan
    1) ill complete the programming logic and design book and your python tutorials
    2) pluralsight

  6. Orlando Productions

    Yes where does someone start……..do we need a program ? Do we need a book ? So Sylvester has named almost or all of the computer languages in this video and suggested to go to a book store ….. why not amazon ? lol

    What did we learn in this video ? There are a lot of computer languages and maybe get a php code book at a book store near you. Some languages are good some languages are bad. C'mon Sylvester get to the the language we need to start with. Start with Python.

    Web developer HTML, CSS, Javascript. Learn these.

    Iphone apps Objective C, Swift.

    Big company C# , SQL, Java.

    So if you don't know where to start go watch another video. OK so how do we go about learning those languages ???????

  7. Check out this new vid to find out how I became a software engineer without a degree: https://www.youtube.com/watch?v=hUwMY5LwaqA. And why I created this channel! Thanks for the love and support!

  8. Now-a-days web code learning is very popular among the young generation. So learn code please stay with us. https://www.facebook.com/CodesView/

  9. geraldine pearson

    I’m really loving your video. I just found you and I’m on my 4th video. Please excuse my lack of knowledge. Am I understanding that you don’t have to start at language A to get to language Z. If there is a certain career I want I can start with language G ?
    This is exciting. If that is exactly what you’re saying. I’ve looked into bootcamps which I will do later down the road.
    A coworker on a contract I had in dec was a developer with a computer science degree and some other degree. He’s working in the area I wanted to work in. Which is reports, build, analyst. I told him of my interest in going to bootcamp and he said I don’t need to. I just need to understand Sql/Microsoft sql/Oracle like the back of my hand.
    He pulled up some of his code and I lit up like Christmas 🤗.
    Do you feel that one of those languages would a great place to start ?
    Thank you for sharing and great continent.

  10. Thank you for your video im in the same situation that you started end thank you for the motivation to continue my education

  11. We shouldn't be learning a bunch of languages, it's easy t learn them after looking over all the commands and recognizing how they are used when they are applied. We should be learning more stuff about what files to use how the file changes things. I learned C++ just to find out I am stunned because Win32 changes a buch of stuff.

  12. Thank you so much again. I really enjoy your channel. I am currently in the process getting ready for a boot camp. Referring to your video I am one of those who are fortunate enough to not have any obligations. I was in school for awhile studying to become a teacher. Because of my program I kept getting juggled around and was tried of it. I cannot wait to get started. I have a little over a month to prepare. Any suggestions?

  13. I am senior electrical engineering student and Know C programming and interested in working as a software developer, I started Python last week and I founded it very easy compare to C should I continue that or I should start on C++ or C# or Java??
    Thanks in advance

  14. harold khaled trendings

    i mean its not too late for me to learn ..thanks man i think you have a good heart i hope you can still do more videos.

  15. I have been watching your vlogs, I understand you have started your own company, is it possible to tell what kind of coding your doing?

  16. Hi,

    Are you a software developer, data scientist, IT professional or student?

    Have you taken the new @DevEconomics survey? 40,000+ developers from 160+ countries participate every year. Don’t miss a chance to learn about new technologies, share your views and leave your mark on the global dev community! Take the @DevEconomics survey and have your say about your favourite programming language/platform!

    And yes, also stand a chance to win exciting prizes such as a Samsung S9 Plus, Oculus Rift, Axure RP8 Pro one year license, Udemy vouchers, and other cash rewards!

    https://survey.developereconomics.com/surveys/de16

    Take new Developer Economics Survey Q4 2018 and leave your mark on the global dev community!

  17. I would recommend plain old C for my first language. It will really expose a lot. Anyone who says PHP is dead is misinformed… Something like 86% of the sites on the Internet run PHP.

  18. If you never programmed a line in your life: python. It will give you an understand of a lot of things very quickly, and it is was is taught in schools. Next I'd suggest C, because it is so influental. The rest is up to you.

Leave a Reply

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