Featured image of post How can Stackoverflow make you a better developer

How can Stackoverflow make you a better developer

Improve your productivity, career, coding skills, and become a better developer

“Time is the most valuable resource because you cannot get more of it.”

There isn’t a single developer who doesn’t use Stackoverflow. Most of us use it daily. How many times a day have you googled an error, and reached Stackoverflow? It is such a valuable resource that improves productivity every single day. Consider the amount of debugging time it saved you. Yet, the majority of the developers I know don’t even own an account, nevertheless trying to answer other people’s questions.

How easy and convenient it is to find a solution to the problem you faced. In this post, I’ll share with you the benefits I found of being a contributor on Stackoverflow.

Most of the experienced developers will probably stop reading right now. Individuals look to improve their coding and problem-solving skills, I hope you will own an account (and contribute) after reading this post.

If you’re not familiar with where it started, the site was introduced by Jeff Atwood on his blog codinghorror:

“Stackoverflow is sort of like the anti-experts-exchange (minus the nausea-inducing sleaze and quasi-legal search engine gaming) meets Wikipedia meets programming Reddit. It is by programmers, for programmers, with the ultimate intent of collectively increasing the sum total of good programming knowledge in the world. No matter what programming language you use, or what operating system you call home. Better programming is our goal.”

Learn something new

When I started learning Python about five years ago, I built my curriculum that was made of few books and online courses. I put the time and effort (about four months) to practice. As most of us, when I had faced challenges I couldn’t solve by myself, I used Google and found an answer on .. you guessed it right, Stackoverflow. After a couple of iterations of this scenario, I thought to myself,

“If I find answers to my questions on Stackoverflow, let’s take a peek at the most upvoted questions tagged with Python and see what it reveals”.

It was like a goldmine for me. Clear, refined questions with detailed answers and examples, for free. No subscription, no money-back guarantee, plain simple. I started checking all of them, reading thoroughly all the answers to nail the subject in question. These are practical questions with high-quality answers from experienced professionals.

Next time you plan to learn something new, give it a try. Go to Stackoverflow and look for the most upvoted questions and answers. If you haven’t ever done it before, you’re gonna be amazed.

I then challenged myself. I pulled my sleeves and decided I will try to answer questions.

Why would I spend my precious time solving other people’s problems?

That’s a damn good question. When I took the challenge, I was selfish. I wanted to gain confidence in my knowledge. I liked to solve problems using the things I have learned. I looked for new questions that I had a solution for and tried to help using the gained knowledge. I did this to improve myself as a programmer.

I feel the time I spent, was paid back double. It made me a better programmer, problem-solver, and contributed to my professional career.

“Knowledge is like money: to be of value it must circulate, and in circulating it can increase in quality and, hopefully, in value” – Louis L’Amour

Why YOU should contribute

  • Improve your coding and problem-solving skills: I can’t stress enough the value of spending time on this site, reading through popular questions, and try to solve them yourself. Answering other people’s questions strengthens your knowledge and confidence in the topic

  • Improve your debugging capabilities: It’s one of the most valuable skills of a software engineer. By helping other people, you practice debugging their code, which is harder than debugging your own

  • If you don’t find the question you’re looking for - ask: Let the community help, and help other people in the future who encounters the same problem as you did

  • Learn something new, solve a new problem, dig deeper into a topic you’re familiar with, and expand your knowledge

  • Use your Stackoverflow profile to promote yourself. By accurately answering questions, you demonstrate your experience in a topic

Where to start?

This blog post aimed to get you started. First and foremost, if you don’t have an account, sign up.

I recommend checking these two threads, “How do I contribute to Stackoverflow” and “How does a new user get started”. Spend the time reading to understand how this platform works and how to use it.

Either you’re learning something new, or want to improve any of your coding skills, try to participate and answer questions:

  • Search for the tags of interest to see only these kinds of questions (e.g, python, go, linux)
  • Spend ~30-60min a day for 14 days. It doesn’t need to be contiguous, you can check it while you’re waiting for the compilation or deployment to finish
  • Make it a habit

That’s all it takes.

Conclusion

I found that actively participating on Stackoverflow of great value, for my development skills and career. Every beginner and experienced developers alike will benefit from it if used correctly. I tried to share my own experience, what works for me, and I encourage you to share your knowledge. And have fun.

Stay humble, be kind.