Going live in 2008, Stack Overflow has evolved alongside Facebook, Twitter, and a host of other tools that have served to disrupt and shape how companies can interact with developers. But, with user numbers in the millions and countless more answers to sift through besides, the user experience can be variable, to say the least. In his upcoming DevRelCon London talk, Square developer advocacy team lead Tristan Sokol will be offering some ideas for smoothing the path, and collecting some useful metrics along the way.
A Bay Area dev rel meet-up regular, Tristan has noticed that the topic of Stack Overflow invariably tends to crop-up at most gatherings. One recurrent strand to this conversation is around developer support and the challenge of giving developers a high-quality experience, whilst keeping things manageable for the team on the other side. Square’s dev rel team have spent a fair amount of time digging into figuring out how to do this, both in terms of making sure that questions are properly answered, and in getting the most out of the data the site yields.
Ahead of his talk, Tristan has shared some way to make Stack Overflow interactions not only helpful and enjoyable for your community, but useful for you too;
One big issue when it comes to developer experience on Stack Overflow is the quality of the answers they find there. As with elsewhere on the net, trolls and marketing spam can easily sully any search. For this, Tristan advises both vigilance and responsiveness;
“The way I think to combat these on Stack Overflow is to try to make sure that you are supporting your community. Either by answering questions quickly, or doing the appropriate flagging when people do something inappropriate. I think that are specific areas that trolls go for, whether it’s flashy unanswered questions or questions that don’t have specific attributes. Being a champion for the community and editing your questions or answering them quickly, or getting others to pitch in, I think, is one of the best ways you can combat that.”
A lot of people consider scalable content things like blog posts or videos, which can be published at a set cadence, and users can peruse at their leisure. With Stack Overflow, however, many users are drawn in at sporadic intervals. And, usually, it’s with a sense of resignation – because they need to tackle a problem, or something just doesn’t make sense. However, viewing Stack Overflow as a scalable content platform can actually prove very helpful;
“Think about it from a developer perspective – when do you find Stack Overflow? It’s when you’re Googling an error message that you have or some other diagnostic information that you’re presented with. And so, thinking about the SEO on your questions and what terms are in the actual questions and answers can be an incredible tool to help you get those questions and answers in front of the right people.
There’s a lot you can do around editing here – whether that’s questions or other people’s answers, particularly outdated questions and answers. With our APIs, we’ve released new versions and new features that used to be impossible. As a result, there are older questions where we’ve answered ‘no’ that now should be ‘yes.’ In those cases, we’ve updated them to then say things like, ‘It’s possible as of May 2015.’ I think keeping your mind on the fact that most people who are reading answers are going be coming in from a search query can be a really helpful perspective to have.
The built-in tagging functionality of Stack Overflow is also important here. To ensure people feel connected, you need to have a good tagging system for your questions. You need recognized community leaders who are willing to answer questions.”
As with your traditional published content, there’s a wealth of data you can extract from the platform to help you understand more about your users;
“Stack Overflow provides an API connection which allows you to access all their content, as well as a cool tool called the Stack Exchange Data Explorer. This allows you to have a SQL interface into all the Stack Exchange networks – not just Stack Overflow. And so with a little bit of SQL know-how, you can get quite a lot of different information.
As well as research into how quickly people’s questions are being answered, we’ve done queries around question volume at different times of day and days of the week. We’ve done some analysis to try to figure out where our developers are working nine to five. We’ve looked into if they’re trying to build a product as part of their work, or just hacking on something on the weekends and evenings. There are some really interesting insights you can get from that.
There’s really just a wealth of other data that you have access to. We’ve looked at our information in a competitive analysis context – looking at other companies that do things similar to us, and seeing how does their question volume compare. What words are more common and what are some of the most common terms that people are asking us about? It was particularly surprising to us what concepts seem to be causing the most confusion, or are driving the highest volume of traffic.”
Finally, as with any outreach opportunity, you really do get out what you put in – even if that can sometimes feel like a lot of legwork for your side;
“If you treat Stack Overflow as some barren wasteland that you don’t interact with, then obviously your responses and user interactions are going to be quite poor. But, if you take some time to actually engage with people and answer questions and help them out, then I think your users will have a much better time.
If you’re only answering your own questions, or helping people who use your own product, you aren’t getting the full experience. It’s important to engage with the community and other places and try to make it better for people.”
Come see Tristan’s talk at DevRelCon London 2017 on December 6th.
The distinction between external and internal developers is largely artificial, at least when it comes to how you build APIs, according to Adobe’s Matt Asay.
Creating a developer outreach strategy means having a thorough understanding of where you want to be and where you’re starting out from.