In coding hubs all over cyberspace techies are holding conversations that are solving problems or making breakthroughs and is where people are just having brainwaves.
Much of this is technological gold-dust, but unfortunately too much of it is lost as unrecorded desk-side conversations, IM exchanges or Skype conversations. Possibly, some of it is recorded but then stored as the intellectual property of a big enterprise and isn’t available to the wider tech community. There are gigs of this intel generated everyday. What if there was a global repository for it all?
Stack Overflow is one attempt to build such a repository; it was created by Jeff Atwood and Joel Spolsky in 2008 and it isn’t so much a directory of information as a site with a project and that project is to improve the quality of programming throughout the industry.
Stack Overflow is part of Stack Exchange which itself is a “network of 129 communities” offering libraries of answers on a range of specific topics.
The website allows account holders to ask a question on coding and contributors from the stack community to provide answers. And the questioner can mark one answer as accepted. As answers are required to be concise, questions must be direct and give as much information as possible about the problem.
As a library of answers, Stack operates with a mini-search engine, so just like online content being optimised for search engines, questions posted on Stack must be tagged for effective categorisation and also to be easily found by people researching that particular topic. A user can add a max of 5 tags to a question.
There’s no separate body of coding experts on hand to vouchsafe some infallible wisdom. The idea of the collaborative community assumes that everyone’s got a piece of the puzzle and should be encouraged to make their contribution.
There’s a healthy collaborative spirit out there in the programming world so there isn’t any shortage of contributors. But just to create an incentive for people and to attract high quality contributions, contributing to Stack Overflow is gamified.
There’s far too much great programming information trapped in forums, buried in online help, or hidden away in books that nobody buys any more. We’d like to unlock all that.
Jeff Atwood Co-Founder Stack Overflow
Gaining points is called gaining reputation on Stack: the contributor’s reputation is gained by asking good questions and responding with useful answers.
The points awarded for each are based on the votes you win from the Stack community. The maximum reputation points you can earn in a day is 200, but there are bonus point schemes that would allow you to win even more in the same period.
If you gain enough points you can win privileges, like being able to vote on an answer, being able to edit other users’ posts or posting your own comments. Comments of course must clarify information in a post as opposed to generating conversation or controversy
And the users with the highest reputations can get access to moderation tools, and help moderate posts.
The original idea did develop from the founder’s own blogs and Stack Overflow also has features in common with Wikis because account holders can edit answers to questions and also at a distance Stack could be mistaken for a forum.
The diagram below produced by Stack itself attempts to give a graphical definition of the site. It’s situated at the nexus of a Wiki, a Forum a blog and the Digg/Reddit platforms.
But Stack differentiates itself by asserting that it’s a site focused on questions and answers, digressionary discussion isn’t encouraged presumably because users are engineers who simply don’t have the time. There could be a range of answers to a single question but the one that gets the most votes by community members gets top ranking.
Ostensibly, Stack Overflow seems like the paragon of a new civic culture in the tech economy: more can be gained by collaboration and altruism than competition between coders working for different software firms.
But there’s a critique of this approach: Michael T. Richter, a blogger and contributor to the site, argues that providing answers to coding questions means that the questioners don’t have to do the research themselves online or using other resources. As a result their learning experience in getting the answer won’t be as deep or as well founded. Effectively, so the critique goes, Stack Overflow will fail in its mission to create better programming.
This position isn’t without value but the counter-argument could be that much of the learning experience for the questioner is applying the solution that’s posted on Stack Overflow and getting it to work. Also, a coherent body of answers to IT problems in one easily navigated website is a resource for posterity. It might not provide the total solution but is incredibly useful in finally getting there.
Peter Lawrey, CEO at OpenHFT, made an excellent point about Stack Overflow in an interview with jclarity.com on the 8th October. He said that he learned a lot about Java by answering questions in the site. Possibly, supporting Richter’s point that much of the valuable learning experience is in searching for the solution on Google itself.
Posting in The Long Tail
For ubiquitous languages like Java and C this would be true but research published in July by Redmonk’s Donnie Berkholz. He found that Stack really adds value in the long tail of Information Technology: the highest ranking technologies in Stack’s 20 most popular ones contain some that are virtually non-existent on the rest of the internet.
They’re really obscure and ultra-niche platforms like Arduino, VHDL, and Verilog (these are in the top 5 on Stack). It’s unlikely they’re going to get much coverage in the tech press but their communities have found a home in Stack.
In the weird world of hipster hackers they give Stack extra layers of cool, introducing Arduino into a chat at the Web Summit will stump more than a view coder aficionados.
Look No Clouds!
The Quancast website shows in the month ending 18th October that Stack Exchange had over 40 million unique impressions, almost 163 million visits and over 390 million page views. And they release new patches 5 times a day (see presentation above).
And according to Marco Cecconi, Software Engineer at Stack, they do all this with just 25 servers, no cloud infrastructure and just a few engineers. One of the secrets according to Nick Craver, another Stack Exchange developer, is efficient code, every line has a clearly defined function and if it’s not doing anything it doesn’t get written into the programme. And of course engineers who constantly drive performance.
Quancast also ranks Stack Overflow in the Top 50 sites visited by Irish techies. The number of monthly Irish visitors is just under 127,000. It’s also interesting to note the demographics behind the statistics (see the image below).
Regardless of the critics and their championing of obscure technologies, the model for Stack Overflow seems to be working and its huge inward traffic flows would confirm that it’s adding value to the working lives of millions of coders. Including plenty of Irish coders.