DEV Community

Cover image for How to learn Programming in 2021
Rishabhraghwendra18
Rishabhraghwendra18

Posted on • Updated on

How to learn Programming in 2021

Computer Programming is one of the hot industries in the world. It not only pays good salary but also gives job security during pandemic too .This industry has grown 66% in the US in 10 years and expected to grow 20% annually.

You want to be a part of Programming industry, but don’t know how to program or code?
In this blog, I will share some tips provided by my mentors when I started, this will be useful for the beginners.

Throughout the blog, I will use the programming and coding words interchangeably, for sake of simplicity.

1. Focus on one programming language or technology to start with.

Beginners think that they have to learn every programming language to become a good programmer, but it's not true, follow below steps which will prevent you from burnout.

Even Professionals, don’t learn each and every language/technology.

How to Start Programming

Step 1: Hang out with people with the same interest (learn program/code)
People in a group
This is the most important step than directly jumping into learning any new programming language.

  • What’s the benefit of this?

Most of the beginners when they start learning any programming language, initially they are very enthusiastic but as they continue learning they get bored. They don’t have much enthusiasm and as a result, they start procrastinating. That is when your coding buddies will help and support! Learning in a group brings more enthusiasm and motivation. Discussing the programming issues and coming up with a solution together will make you work harder with more energy and motivation. Most important thing is the people you hang out with , more likely you will become like them.

  • How to find coding buddies 🤔?

You can start following professional programmers on social media like YouTube, Twitter, Instagram, etc. Most of them have discord servers, you can join their servers (for free) and make them your coding buddies. Another way to find coding buddies is to go to programming events or online events and meet people or you can make a WhatsApp group of your college classmates, who are passionate about coding, in there you may find a mentor as well!

Step 2: Decide what you want to learn
Decision Making
There are a lot of technologies in the market for different domains - Web development, Cloud Computing, Blockchain, etc.. and it’s not possible to learn all these technologies at one time, so first decide what you want to become and your end goal. 

You can search about different domains of computer science or I will also write a blog on this topic with salary expectations, on your demand.

Below are some ideas -

  • Want a job within a year?

To get a job within a year or two, the focus should be on one programming language preferably C++ because it’s faster than other languages. Know some basics about the language and then learn Data Structures & Algorithms (DSA).

Most of the companies don’t usually see how many projects you worked on, but they see your problem solving capabilities . DSA is the key point that can prove that you are a problem solver.

Learn DSA through free or paid DSA courses on the internet. Practice DSA skills using sites like LeetCode, InterviewBit, etc. These are interview-based sites which will help with the coding interview round for different product or service-based companies. The more you practice the more confidence you get, in cracking an interview.

  • Want to develop Apps just for fun?

For a Mobile app or a Web app or Social networking sites like Instagram/Facebook, then learn Python or JavaScript, HTML, CSS also learn SQL or MongoDB databases, these are the common requirements for a Web or an Android app.

Python and JavaScript are used as the backend for any application to run continuously on a server.

HTML, CSS are used to create frontend interface for an application, whereas JavaScript is used to make frontend interactive. We can learn Frontend in a month or so. Later on we can learn Reactjs, Angular.js, Vue.js - these are frontend libraries and frameworks, to enhance our front-end skills.

  • Want to be a software developer?

To be a software developer first learn a programming language and make a stronghold on it. Learn C++ first as it fastest programming language and as well many other programming languages like Java has evolved from C++. Many other programming language or run-time environment also uses C++ under the hood like CPython, Node.js.

Fun Fact: C++ developer has a higher salary than any other programming language developer!

2.Learn one Language at a time

Don’t try to learn more than one programming language simultaneously, spend time on learning one language, the more time you spend, the more benefit in the long run. Choose a small project to get hands on experience.

Choose a project

This is the most crucial step. If you don’t do this, then no one can believe you that you know to program.

3.Learn technologies as per your project requirements.

It’s impossible to learn every Technology, learn technologies as per project requirements. To learn every technology will take ages and we won’t be able to learn or implement anything.

  • Start with a simple project

Start with a small project like a Calculator, a Coffee ordering app or a Game..
After making some simple projects, make 2-3 medium-level projects from which you can learn something new while developing it.

4. Practice makes everyone perfect…. Practice, Practice & Practice!
Follow your dreams to become a great Programmer by practicing hard.

I will also post a roadmap for learning your first programming language, so stay in tune 😉

Thanks for reading ,
Written with ❤️ & passion 🔥by Rishabh Raghwendra

Top comments (6)

Collapse
 
roteski1 profile image
oladapo rotimi

I don't think c++ is a simple language to start learning programming with.

Collapse
 
rishabhraghwendra profile image
Rishabhraghwendra18

Ya,I agree . I suggested C++ because it's fast ( will be useful in coding rounds) and it will also clear lots of basic concepts . Like about pointers and about Primitive data types - what is an int,string,float data type ,etc. If in future , we learn any new language or technology then we can get a feel of what's going under the hood , because somewhere the language uses concepts of c++ or even uses c++ like in case of nodejs runtime environment for JavaScript.

Collapse
 
rukky22 profile image
Randolph Rukevwe Oghwe

Awesome content for beginners. Thank so much!

Collapse
 
rishabhraghwendra profile image
Rishabhraghwendra18

Glad to hear that you loved the blog . Thanks a lot for your comment . It really motivated me to write more such blogs.

Collapse
 
adarshcoder397 profile image
Adarsh kumar

Nice it helped me a lot!

Collapse
 
rishabhraghwendra profile image
Rishabhraghwendra18

Thanks alot for your comment . It really motivated me to write more.