Happy 10th birthday Stackoverflow (my alter alma mater)

 5 years ago
source link: https://www.tuicool.com/articles/hit/ZRfe22I
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

If you’re a developer, you can’t have failed to spot that Stackoverflow is celebrating its tenth birthday . Similarly, I’m sure I’m not alone in owing a great deal to Stackoverflow in terms of my professional development. I thought about sending an eCard, but decided that a blog post might be a more fitting tribute. In today’s post, I want to share my memories of how transformative Stackoverflow was and the impact it had on me personally.

Memory lane

Ten years feels simultaneously like a very long time ago, and like it was yesterday. In 2008 I was studying at university and paying the bills with web development. They were an exciting time in my life and my memories of it are vivid. Paradoxically though, Stackoverflow is now so much a part of my internet furniture that it’s sometimes hard to remember what it was like in the time before. It’s been such a central and transformative part of my professional life over the past decade that it feels like it’s always been there.

The reverse was true in the beginning, too… If I stretch my memory back, I remember initially struggling to fully comprehend the problem that Stackoverflow was trying to solve. I had first heard about the new site through a post on Jeff Atwood’s blog and was initially ambivalent. The big names (Joel and Jeff were already very well known) meant there was automatically going to be some hype, but I also remember a fair few people openly predicting it would flop / sell out / whatever.


Joel & Jeff at MIX09 ( photo by D.Begley )

And it’s not like there weren’t places to get answers to your programming questions already. I had taught myself PHP and Javascript development (the 2000’s version of full-stack, I suppose) on a diet of blogs, forums, and email groups. I also remember trading tips on how to get around the paywall on (the rather unfortunately named) Experts Exchange, so that I could view answers to other people’s questions. Thin gruel by today’s standards, but it was what we had.

Against this unpromising backdrop, it’s worth considering the factors that contributed to Stackoverflow’s success. (Because it quickly did become clear that Stackoverflow was making an impact.) Looking back, my take is that it came down to three main things:

  1. Unlike the email lists and forums that preceded it, Stackoverflow didn’t just occupy one niche but cut across all sorts of communities. It acted like a lightning rod and attracted people from all over the web.
  2. Although in recent years Stackoverflow has attracted some criticism for being unwelcoming to new users , this definitely wasn’t the atmosphere in the beginning. In the early days, there was a distinct aura of excitement around answered questions – a certain camaraderie that stemmed (I think) from a sense of being on the “winning team”.
  3. Stackoverflow was just plain nicer to use than a lot of other sites. It’s easy to overlook this today, but in comparison to what we had then, Stackoverflow was a revelation to use. This was partly due to the design and UX, but to my mind, the more significant contributor was the emphasis on high-quality content.

Today Stackoverflow is among the top-ranked sites on the internet in terms of visitors and ranks highly in Google for just about anything related to software development. The success story is one I’m excited to recount (from my individual perspective at least) because it feels inextricably intertwined with my own story.

What it meant for me

I mentioned above that I was at university in 2008, but what I didn’t say is that my degree wasn’t computer science. Likewise, I mentioned that I was a self-taught web developer, but the bit I missed out is that in 2009 I found myself needing to learn C# development in a bit of a hurry. I came at this from a position of never having used C# (or Java) and with my only experience of development on Windows (which C# almost exclusively was back then) being a little bit of Visual Basic. Without Stackoverflow the years 2009 – 2013 would have been a complete disaster and I’m sure I wouldn’t be a professional C# developer today.


We all started somewhere, right?

Don’t get me wrong, it was entirely possible to teach oneself programming prior to Stackoverflow. Indeed, I was (sorta, kinda) proficient with VB, PHP and Javascript well before 2008 without any sort of training at all. What Stackoverflow did was to take a lot of the pain out of that self-tuition and allowed the process of exploration to be accelerated.

In fact, as someone who has self-taught two separate stacks, I can confidently say that Stackoverflow changed the game beyond just making it quicker. With hindsight, I credit Stackoverflow with helping me to gain a much deeper, richer understanding of software development that I’d ever managed to piece together from the fleeting interactions that I’d had before.

If I had to pick just one example of this, I think it would have to be Eric Lippert’s answer to my 2010 question on the use of threads. It’s long by SO standards, but well worth it. (Go on – I don’t mind waiting.) I love how Eric blends analogy with example to perfectly answer both the explicit and implicit questions. I love his entertaining and engaging style. And I love that the community responded by bestowing him with upvotes and friendly praise.

My alter alma mater

Can I imagine any other environment where I’d have received such a high-quality and memorable answer to a technical question? The only thing that has come close in my life was university.

Whilst a website can’t ever fully replace a centre of tertiary education, Eric’s answer has all the hallmarks of the best seminars, lectures, and tutorials that I’ve attended. His response imparts knowledge in a memorable way, with a sprinkling of wisdom to make the knowledge as useful as possible.

Of course, universities do have their strengths, but Stackoverflow has a few unique advantages:

  1. No fees: I’m still paying off the student loan I took out to learn neuroscience. I’m not knocking my original degree – I really enjoyed it, even if I don’t use the knowledge on a daily basis – but damn, it was expensive!
  2. Immediacy: Got a question? Stick it on Stackoverflow. No need to wait until school starts again, or for the next seminar, or even for the next morning. Got a question at midnight on a Saturday night? Ask it whilst the problem is fresh.
  3. Archived by default: At university, I’d always stress about the quality of my notes. On Stackoverflow everything is automatically saved for me to refer back to later on. Oh, and everyone’s “notes” are public, so I can learn from someone else’s question without having to ask it again.
  4. Careers: My university’s careers service were lovely, well-meaning people, but they just couldn’t possibly be experts in all the varied fields in which my classmates and I would aspire to end up. In contrast, I landed my last job through a posting on Stackoverflow Jobs .

It isn’t a properly fair comparison and I’ve deliberately neglected a lot of the other aspects of university that had a massive impact on my life. The point stands, however: Stackoverflow did a remarkably good job of educating me in the dark arts of software development. And significantly, it continues to.

Life as an alumnus

Over the years, I’ve found myself leaning on Stackoverflow less and less. I suppose this is in inverse proportion to my increased proficiency and is a strange sort of testament to the pedagogical success of the site. As well as simply knowing more about my craft, I’m also better equipped these days to do my own primary research.

When I do still use Stackoverflow, I’m likely to be doing so in less observable ways. For instance, I regularly find myself using it for my own form of rubber duck debugging (it seems a lot of people do ). I also find that many of my new questions have already been asked – Google invariably returns a Stackoverflow if one exists!

Yet whilst my visible activity has been in decline, this decline is bottoming out. The landscape of software development is always changing, so there’s always more to learn. And it’s in my nature to seek out new technologies to play with. I’ve recently found myself learning both Haskell and React Native, so there will no doubt be a steady stream of questions on these subjects over the coming months.

I’d also like to start answering more questions. My enemies here are threefold: confidence, time and speed. I hate answering questions off the cuff and prefer to properly research my responses where possible. Unfortunately, this takes time that I (as the primary carer of a two-year-old) don’t often have and others don’t seem to need . Excuses aside, I really do need to get into answering. Not just to give back to the community either, but because teaching is the best form of learning .

In other words, my Stackoverflow story is far from over. If anything, I’ve only just finished the start.

Happy birthday Stackoverflow!

Stackoverflow helped me move from script-kiddie to the sort of software developer I now enjoy working with. I owe a lot to Stackoverflow and the community it has fostered. So…

Thank you Stackoverflow and happy 10th birthday! Here’s to the next 10.

About Joyk

Aggregate valuable and interesting links.
Joyk means Joy of geeK