How to START PROGRAMMING in 2021! 😱🔥


2020 has been such a hard year for all of us and I hope everybody is doing fine with this virus going on. Anyhow, there are only a few hours left and we will be stepping into 2021. So new year, new workflow right? Everything aside, today we will talk about how you can enter the developers’ game in 2021. 

Now, this video is purely focused on beginners, who have none to very little experience in programming. But if you need a more detailed, advanced version let me know in the comments below.


Not these guys 😉

So, I’d like to breakdown this video into 3 parts.

  1. Common Fields in Programming
  2. Popular Programming Languages to learn in 2021
  3. My recommendations for How and Where to start your journey

These 3 topics should give you the knowledge to proceed to become a successful developer in the year 2021.

So, what are the common fields in programming? So, programming is divided into few fields based on its usage and technologies used.

  • Desktop Development
  • Mobile Development
  • Web Development
  • Embedded Systems

Out of these 4, Web Development is by far the most popular field you can enter. Since everything is connected through the web, making a web app means you can target all sorts of audiences including both who use mobiles and desktops. But this also has its cons. A web app is an app that runs inside a web browser. This means that the user has to first download the entire web page and then interact with it through an internet connection. This simply means that web apps are not very efficient. They are useful for small tasks like each and every website you see online. But making a high-efficient program using web development is nearly impossible. I don’t think you play a lot of games inside your web browser right? For stuff like games, you would download it on your computer or mobile and then play it without the use of a web browser or such interpreter (for the most part).

This is because those apps are developed to run on desktop or mobile platforms only using technologies that can be used only for such applications. 

So that brings us to Desktop and Mobile Development. So first let’s focus on the more popular one: Mobile Development. So, as you already know, there are tons of apps out there for mobile devices. And about 1500 apps are published to Google Play Store every day. So, this means that you really have the potential to become a successful developer and earn money because it should be really simple right? Yeah, it is and all you need to learn is one of few languages which we will talk about later in this video and create a great portfolio. But also because of this, a huge number of developers are focused on this field, it is also quite crowded, and getting that dream job could be a bit tough. But when focused correctly nothing is impossible. LOL!



So next up is Desktop Development. The Giant we didn’t talk yet! So why did desktop development come in 3rd place?? Well, to be honest, desktop development is such a big deal and is really a great field (greatest of them all as I think). While the number of “users” inside the desktop market is comparatively low, it can also be considered THE highest paying field. Desktop development is what makes everything possible. All those high-end games you play, that software you used to edit that photo and that web browser that interpreted the web app for you are all results of desktop development. So, the idea here is that, if you are to get into the desktop development business, what you build should be worth a whole Desktop and should be able to gain the interest of those 32-cores in that high-end machine. Just kidding! But you get the idea. 



Next up are embedded systems. This field is a quite fun field to explore and it is also one that is available in our everyday lives. Devices like ATMs are possible thanks to embedded systems technologies. Simply put, embedded systems are just tiny computers that are designed to perform one or a few simple tasks. So, having the knowledge of programming and designing embedded systems can help you greatly but the downside is, it is quite hard to get in and start developing. Because you would need more equipment to make these and this could become harder to grasp for a young developer.

So simply put, the most popular one is web development and it is popular for making small web apps that can run anywhere. Mobile apps are a great choice and a great place to start earning a good income. Desktop Development is the one where all the heavy work is put into. And then we have embedded systems which is a whole next level of things and should be explored on your own to understand your ability and interest in the subject.

Now that the intro to Development fields is out of the way we can talk about languages!

There are lots of programming languages designed for various fields. So, we need to understand which language relates to which field before we start learning it.

So, first up is JavaScript. One of my favorites by the way. 

Many languages came and disappear but JavaScript is one of those few renowned languages that is enjoying a high run and demand in the programming world. JavaScript has been ranked under the top 10 programming languages for several years consistently. In fact, the Stack Overflow survey depicts that JavaScript is the most popular language among developers. Meanwhile, some of the renowned companies in the tech world that are using JavaScript are Facebook, Google, Microsoft, Uber, etc.

Though the language is primarily known for adding responsive elements on web pages it has a wide range of applications such as in web development, game development, mobile application development, and many more. Moreover, the language is being used for both – Front End Development and Back End Development. Also, its compatibility with some prominent frameworks like React, Vue, Node, etc. makes it more preferable among the developers. As there are millions of websites already existing over the web that are heavily relying on JavaScript and on top of that, looking at the demand & dominance of the language, it won’t be wrong to say that JavaScript will rule in 2021 as well!

Now the next one you should have heard somewhere. It’s Python. A Giant in the Development business. Python has been the favorite language of almost every individual who is just starting with the programming domain for the last many years. The primary reason behind this is quite simple syntax that makes it easy to read, learn, and use. The language is extensively used for web development, software development, etc., and with several trending technologies such as Machine Learning, Artificial Intelligence, Data Science, etc. 

As per the RedMonk Ranking report for the year 2020, Python outranks JAVA to become the second most popular programming language. The language has experienced tremendous growth of around 18-19% in the last 5 years. At the PYPL index, Python is ranking at the #1 position for December 2020 index. The language ranks among the most popular programming languages in several other renowned platforms also such as Stack Overflow, Github, etc. Also, the compatibility of Python with trending technologies like AI & ML makes it more preferable among the developers.

Next up are the grandfathers of programming. You could say these are like wine since their demand is increasing significantly with time! You guessed it: C and C++.

If we particularly talk about C language, the general-purpose procedural programming language is majorly used in the development of low-level systems like operating systems, kernel development, and others. And many other programming languages inherit the properties of this particular language. On the other hand, C++ is an object-oriented programming language (primarily developed as an extension of C). The language is widely used in Game Development, GUI & Desktop applications, and Competitive Programming along with several other fields.

Both C and C++ are occupying a considerable portion of the tech world and currently ranking at the top positions on various indexes. At the TIOBE index of 2020, C and C++ are ranking under the top 5 programming languages at first and fourth position respectively. At the PYPL index, C/C++ has seen an upward trend of around 0.1 % and is ranking at the #5 position. Numerous big tech companies hire C/C++ developers with some decent salary packages such as Adobe, Oracle, Microsoft, Nvidia, etc. And to learn C/C++ in 2021 is not only beneficial from the career perspectives but it also somehow makes it easier for you to learn other programming languages afterward.  

Haha, we can’t exclude Java! Can we.

The object-oriented programming language comes up with a much-celebrated principle of Write Once Run Anywhere that allows the Java code to be executed on other platforms, that supports JAVA, without doing recompilation. The language is widely used in Android development along with Web Applications, Desktop Applications, Scientific Applications, etc. Also, top-notch companies like Adobe, Amazon, Flipkart, and many others are using JAVA and offering ravishing career opportunities to Java developers. Its significant demand in the tech world, huge community support, popular frameworks such as Spring & Hibernate and several enriching features like multithreading, automatic memory allocation & garbage collection, platform independency, etc. ensures that JAVA will provide you with a lot of worthwhile career opportunities in the upcoming years as well.

Many times, it seems out that JAVA is losing its charm but when we look at the actual stats – every year JAVA ends up with a really good ranking that proves the particular language is still doing well and in-demand in the tech world. There are around 8 million JAVA developers across the world – maybe this number can help you to assess the demand & popularity of this particular language. Also, the language is enjoying a top-second position among all the programming languages in the ranking of TIOBE and PYPL. As per the RedMonk reports, JAVA is ranking at 3rd position below JavaScript and Python only. 

And there is that fun to explore and wonderful programming language: Arduino

Arduino is an open-source hardware and software company, project and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices. Arduino derives from C++ and is the starting point of most embedded system developers. Arduino is a great introduction to microprocessor development, and it allows really quick prototyping. Arduino is also easy to learn and control which makes it the best programming platform for kids to experiment with. 

And, to be honest I started with Arduino and those days was really fun!

So that’s a huge amount of data to digest. I know right! But now that you have a good understanding of the programming world, languages, fields, and their popularity we can discuss how you can deal with it as a whole and start your journey in 2021.

Just to give you a quick story about how I started programming, I started researching a lot and none of those popular programming languages hit me. But then I saw my friend using an Arduino Board. Then I wondered how stuff really worked and then I started watching a lot of YouTube videos about Arduino and after I got my first Arduino Uno, I was able to make LED patterns within a few days. Then I had to learn more about Programming, in general, to learn how things actually worked because until then all I knew was that writing the digital write command could activate a pin on the Arduino. So then I found out that Arduino is based on this popular language called C++ and I really wanted to learn C++ because it looked a lot like my Arduino Code (well Arduino looked like C++ actually). So that’s when I stepped into the Programming world. I learned about how things actually work when you write, compile, and run a program. All of those complex details made sense. It became my foundation and it was quite easy for me to learn other languages later like Python and JavaScript.

So, what I believe is learning the hard bits of things first and then getting into the easier parts. Because then you will have not only a good understanding of how programming works but also how to write good and efficient code. This is like learning how to add numbers when you were a small kid and then learning how to use that calculator to solve a complex algorithm. If you don’t know how addition is really done, you would not be able to understand what happens in that calculation.

Anyhow, I would recommend 3 paths for you to quickly get into the programming world in 2021. 

The first one is Web Development. You can learn HTML, CSS, and JavaScript and start in the Web Development Field and continue in that field where you can make a lot of money if you put in the hard work. Web Development is a really good field to start making an income since you can do freelancing and even get hired by companies easily if you have the talent and the talent is not that hard to achieve. Learning Web Development has never been easier with new technologies and tons of YouTube tutorials. I will have a link to a video from Traversy Media in the description where he talks about everything you need to know to get an understanding of technologies in Web Development. 

The next 2 are for Desktop Development but starting with 2 programming languages. I would suggest learning Java or C++ as one option and Python like the other one. Both Java and C++ have a similar syntax and most of their features look similar. Java is a language that is written once and run anywhere thanks to its Virtual Machine System. And most importantly it is also the main language used in Android app development. So, learning Java could be a good investment in 2021. 


C++ on the other hand is a compiled language which means that you would have to write separate codes and compile them to make native apps that can run only on the platform you compile it for. Hence C++ is much complex and a bit tough to learn but it also will not lose its place as said previously. C++ will be used extensively in High Tech Companies and if you ever had a dream of getting into one of them, you should give C++ ago. (As I said previously, my first programming language was C++, except Arduino). With C++ you can also write mobile apps which will be significantly faster than apps written in other languages but it will also be quite difficult to develop and maintain your code through various platforms. 


After learning C++ or Java you can easily grasp other popular languages like Python, JavaScript, and much more. Learning a programming language is actually 10 times easier than learning an actual language. So why not try a few!

Last but not least is Python. You could say Python is THE most popular Language in Web AND Desktop development. Python has gained popularity due to its simple syntax and huge support libraries. Also, Python has a huge community which means that any problem you encounter has been fixed by someone else earlier. And there is also a ton of Video Tutorials on YouTube for you to learn Python and get to a professional level developer. But unlike C++ or Java, most programming concepts have been abstracted away and that’s what makes Python so simple. But this simplicity makes it quite difficult for a Python only developer to learn other languages. You may have seen this meme and I think this explains a lot!

And Python is an interpreted language meaning that when you write python code, it is not compiled. It is interpreted through the Python interpreter at Runtime to suit the OS you are running. This means that Python is more like a scripting language like those .bat files in Windows. This makes Python code so slow and hence Python is not used to write CPU intensive high-end programs because interpretation at runtime can waste a lot of CPU power. So, if you are planning to enter game development, C++ would be the best choice, and other languages like C# could also do this job better than Python.


So, with all that information, you should be able to find your way in 2021 to become a successful software developer. Of course, we did not cover a lot in this video but the videos have already been running so long. I will link some articles and some other videos in the description as well. 

And that’s it for this video and I hope you a bright future! Happy New Year!


2 comments: