It’s part of the basic flow of software development that you get ‘stuck’: an error that doesn’t make sense, a bug you can’t figure out or lack of understanding of the framework you’re using.
When I started my career in software development when this happened you had three choices:
- Keep trying to debug and diagnose
- Ask a colleague
- Read the manual (usually a fat great dog eared book printed on really thin paper), or other books you had to hand.
If you got really desperate, you might see if the library had any other resources that would help. It was painful. Once I got (dial up) access to the Internet things got a little easier - you would search Usenet and hope that someone had had a similar problem, and if really desperate, post a question.
While more of the documentation went online (think MSDN), things pretty much stayed the same until 2008 when Jeff Atwood and Joel Spolsky launched Stack Overflow (SO): here was a Wikipedia of computing questions and answers that, for me and many others, has become the goto resource for solving programming problems.
As Jeff ably explains in his post, SO is not where you go to learn programming, but it is the fastest place to solve whatever problem you have: usually found through a quick Google search. In my mind, SO has done more to increase developer productivity than anything else. It’s an incredible resource and I would be deeply skeptical of any developer who claimed they didn’t need it.
I’ve tried to play it forward, and answer a few questions over the years. I know a few domain experts who rightly use their SO profiles as part of their resume. So here’s to another 10 years of helping each other out of nasty bugs and corner cases. Thank you Jeff and Joel.