The Internet is awesome. Information is right at your fingertips. Always-available help from people all over the world is one of humanity’s dreams come true.
I’m not sure if the philosophers of antiquity included copy and pasting of code snippets in this dream, but hey, it’s a fact of daily developer life.
Copy and pasting is awesome, and so very convenient.
But this is not how you learn and become great at thinking for yourself, finding solutions for solving programming problems and most importantly to be creative.
Over-using sites like Stack Overflow will not make you a better developer. It will only make you very good at clicking up-vote buttons and copy & pasting.
You owe it to your brain and future self that you try to find a solution first, and not give up just because something doesn’t work the first time you try it.
Especially when you don’t feel comfortable or knowledgeable, because you’re working on a new project, with a new programming language or different development environment.
Humans are built for exploration. For understanding by doing.
Your brain will reward you for discovering things. And the rewards are higher as the problem is harder for you to solve.
“For the things we have to learn before we can do them, we learn by doing them.”—Aristotle
That doesn’t mean to ban forums and question & answer sites from your bookmarks. You can and should share your discoveries and see how others solved similar problems. You’ll probably find that there’s—hope my cats won’t hear this—more than one way to skin a cat. Sharing will likely lead to new, better ways to tackle a specific problem, potentially benefiting lots of people.
And all that because you spent 10 minutes thinking about a problem and not just copy & pasting the first answer that appears to work. Try it!
P.S. Don’t think you have enough time do to this? Use Noko to track where your time really goes. You’ll be surprised how much of a typical workday is spent on non-productive work. Trade in some of those meetings that you don’t really have to attend for some brain-exercising time!