DEV Community

Cover image for How to become an effective programmer?
Rishabh Singh ⚡
Rishabh Singh ⚡

Posted on

How to become an effective programmer?

How to become an effective programmer?

I know many of has have this question in our minds especially students and people who are new to coding. Now just like any other skill, coding doesn't have a right or wrong way of learning. This is one of the reasons it's easy to get misguided as a beginner.

So what it actually takes to be an effective programmer?

Alt Text

My take on this


Here are few tips which have helped me to improve both as a dev & as a student:

  • Start learning about Data Structures & Algorithms early (start with basics)
  • Don't skip the maths (knowing basics can go a long way)
  • Start building things (learn as you go)
  • Collaborate & Code
  • Participate in coding competitions & hackathons
  • Build an online presence with a developer profile

Discuss


Feel free to share your own tips which have helped you to improve as a developer in the discussion/comments.

Discussion (9)

Collapse
rinkton profile image
Rinkton

It's interesting. You said several points, which very controversial for opinions, that I heard.
You said: "Start with basics, with algorythms" and "Don't skip the maths".
How do you argue this? Generally, people it's vice versa disprove.

Collapse
mindninjax profile image
Rishabh Singh ⚡ Author

Great question Rinkton!

Also I think you may have misunderstood some of the points. Let me clarify :

  1. Data structures and algorithms are very important for improving problem solving skills which is much needed in programming. Also it helps us tp understand a language better and get comfortable with it. Also it's always good to start learning DSA early so that by the time you reach the interview period, you'll have a strong understanding of the language and cracking technical round becomes easier.

  2. Maths is very important in programming. As it's also said that "programming is the modern day mathematics"! It helps us to build logic and understand the problem or bug in a mathematical perspective. Again advanced maths is not always required, but there are certain concepts which you need to know for logic-building. Again that depends what kind of work you do. Maths is the foundation of ML, AI and Data Science. Having basic knowledge of maths is always beneficial in programming.

I hope this answers your concerns :D

Collapse
rinkton profile image
Rinkton

Ok, I just remember this opinion. Thank's for describe!

Collapse
mindninjax profile image
Rishabh Singh ⚡ Author

Also since you mentioned about controversy, I highly recommend you to check out 5 worst misconceptions people have about programmers here - dev.to/mindninjax/5-worst-misconce...

Collapse
crazybusycreative profile image
Info Comment hidden by post author - thread only accessible via permalink
CrazyBusyCreative

A few thoughts in response:

  1. If you're really a beginner - you've never coded anything before - Data Structures and Algorithms are going to be a bit confusing. There's a reason "Hello World" is the first thing anyone ever creates.

Start by choosing a language. It doesn't matter all that much which one. Then learn the basics - data types, variables, etc.

  1. I'm confused by the idea that a new programmer should focus on the maths...since I started learning C in the mid-1990's, through 20 years of professional experience, I've never needed more than basic arithmetic. Caveat: It depends on what you want to create. If you're creating a physics engine, I'd imagine you'd need math. But in general programming, I question the need to spend limited focus on math. (Prove me wrong!)

Math is one way to learn logic, but it's not the only way. As in most things, there is no One True Way. Better to be clear on the outcome and encourage multiple learning styles as a way to get there. Doing otherwise gets exclusionary fast.

  1. Find a good set of resources, then start building things. Move between learning mode and building mode and back again. Get comfortable with frustration, learn to research and find answers.

  2. Build stuff you're excited about. Solve problems that bug you.

  3. Get clear on why you want to learn programming. Is it to get a job as a developer? Great - start researching job listings and get the skills/experience companies are looking for. Maybe you want to be a freelance developer - start building portfolio projects and an online platform. Or maybe you just want to create something for yourself. That's great too. Go for it!

Again, there's no one-size-fits-all path. Do what works for you and your individual goals.

Collapse
mohit789 profile image
Info Comment hidden by post author - thread only accessible via permalink
mohit vishwakarma

you have raised valid points...

Collapse
33nano profile image
Manyong'oments

If you love something, automate it and you never have to a work a day in your life.

Some comments have been hidden by the post's author - find out more