StackOverflow VC, SQL Server, and Whuffie

Stack Overflow

Yesterday StackOverflow announced that they’d accepted $6 million in venture capital funding.  Joel Spolsky held a quick public chat to discuss it, and there were some interesting questions from the audience.  I’m going to paraphrase some of the questions and give my own answers.

Q: Now that StackOverflow is going to be big, will they need to dump SQL Server for NoSQL?

If you were going to write a list of things you should never do to SQL Server that needs to perform fast, StackOverflow would check a lot of the boxes:

  • Using LINQ and Full Text Search heavily for queries
  • Storing data on SATA drives
  • Putting both data and logs on the same drive (not to mention the full text catalogs)
  • Using one server, no fancy replication for load balancing

And SQL Server handles the load just fine.

Q: What? I thought M$$QL was the suxx0rz?

Two things make all the difference.  First, it’s not really all that much load.  StackOverflow is the smallest SQL Server database I work with by an order of magnitude.  Most of my SQL DBA readers manage much bigger databases on a daily basis and yet consider themselves to be junior DBAs.  There’s a disconnect between what programmers see as big data versus what enterprises see as big data.  For example, in the last two weekends, I’ve done performance tuning gigs for two separate companies that had data more than 20x the size of StackOverflow’s, yet didn’t have a full time database administrator.

Second, the staff really knows what they’re doing.  They know you’re supposed to cache frequently reused data in the app tier, for example – sounds obvious, but it’s trickier than it sounds.  If you’re really good – and I don’t mean “I’ve got a blog” good – you can build amazing stuff with just about any tool.  You could build something of StackOverflow’s size on any database platform out there.

If you think the reason your code can’t scale is because of the language or database, you’re probably doin’ it wrong.

Q: How much of that $6 million did you get?

None.  I’ve never been paid by StackOverflow.  If I was Joel and Jeff, I’d give money/stock/cocaine to the community moderators long before I gave it to Brent Ozar.  My work is tiny compared to the moderators, and I’m glad (although a little sad) that they recently revamped the StackOverflow About page to reflect that.

That’s right – I get paid in pixels.

Q: Awesome, here’s a picture of bacon. Now I need your help with…

No.  I help with DBA work at StackOverflow for the same reason you answer questions there.  When you post an answer, add tags, or help clarify questions, your reputation score goes up.  You don’t make money on directly – it’s just fun doing it.

But as your score gets higher, you can use that for things in ways that don’t seem immediately obvious to you yet.  I touched on this in my recent Rock Stars, Normal People, and You post.  Jon Skeet is an extreme example – he can probably walk into any geek gathering, show his ID, and people will start buying him drinks.  If he posted a tweet saying he was looking for work, you’d better not hope you have anything pending at the printer, because an army of programmers will be printing up Jon’s resume immediately to run into their boss’s office and say, “WE GOTTA HIRE THIS GUY!”

The Whuffie Factor
The Whuffie Factor Explains Everything

Your StackOverflow score is your living resume.  It’s like whuffie in Down & Out in the Magic Kingdom – it’s a currency that you can use to get things.  When you get to a high enough score, you can trade it for things – things like consulting gigs.  Companies will look at something like StackOverflow, look up the C# tag, and find the highest rated people.  They’ll review your answers, see the high votes from your peers, and then check your availability for short-term consulting – perhaps even just a single hour.

Not every question can be asked in public, and not every answer can be given without spending time in the client’s systems.  Most importantly, those questions and answers are where the most money changes hands.

Q: But your StackOverflow score sucks.

Yep, I’m part of the old guard.  I’m 36.  My generation had/has a different way of measuring reputation, and frankly, it sucks.  We gauge reputations based on personal relationships with people we’ve met, usually in person but sometimes through social networks.  We’re limited to a smaller group of experts on any given topic.  When I need help with something, I have a fairly limited number of trusted people I can call on.

I work (a little) on StackOverflow for free because it’s the old-school equivalent of a reputation score.  People have come to me and said, “I hear you’re the database guy for StackOverflow – what would it take to get you to help me with ___?”  That’s why I’m quite happy to take my pay in pixels, and why I know that your high StackOverflow or ServerFault reputation score will be worth money down the road.

How much would you pay for one hour of Jon Skeet’s time?

What if you had a tough C# question and you couldn’t show your code in public?  What if you wanted to listen to him do training presentations about what he knows?  Would you pay real money for that?  I know that you would, because people are paying to attend SQLCruise with me and Tim Ford, and people lined up to pay $99 to get into StackOverflow DevDays.  What if you had a really high StackOverflow/ServerFault reputation for a given tag, and you organized an event like SQLCruise or DevDays for your own tech interest?

Reputation is everything.  This is why I get so excited about StackOverflow’s reputation scores – conventional forums failed not just because they’re painful to navigate, but because they didn’t measure things.  When you measure reputation, you enable all kinds of ways to make money.

Previous Post
I ___ with Brent
Next Post
I Know Kung Fu

11 Comments. Leave new

  • It was great to see you in the chat yesterday, Brent. I sincerely appreciate all the help you’ve given to Jeff and Joel, and to Stack Overflow in general.

  • Brent,

    I really like StackOverflow, and since I learned about it, it is the place for me to go whether I want to ask a question or to answer one. Basically I stopped visiting other forums and newsgroups such as Google Groups and MSDN forums, because StackOverflow is so very much better.

    Thank you and all the StackOverflow crew much for setting up this wonderful site!

  • Brent,

    Everything you touch is gold. How can I invest in some of that Brent Ozar stock. It is on the up up up trend. 🙂

    Seriously though, great write up.


  • Lee Grissom
    May 5, 2010 11:39 am

    I can attest to the virtue of online reputation. In my heyday (before Quest), I had free time to read tech newsgroups, and slowly but surely I became an expert simply b/c I would take it upon myself to research and answer lots of questions. It becomes a snowball after a while… the more you answer, the smarter you get. I ended up making some amazing network contacts. I was the “goto” guy at work for a couple of years… and then I stopped being as involved in communities. 🙁 You can figure out the rest. My advice is the same as yours: If you want to be a successful tech person, get on StackOverflow and build up your reputation! Tip: If you work for a full-time job, figure out how to schedule time for yourself to do this.

  • 36?! Huh?
    I thought you were younger than I was.

  • I’m with ya on the database size thing. If only I had a nickel for every time someone came up to me and said “but this table has 40,000 rows, we HAVE TO denormalize it to make it perform”. I remind them that nifty response time they are waiving at me is reported in milliseconds, not minutes.

    If the database is returning all your data in 200 ms, denormalizing the table isn’t going to solve your 4 minutes response time in the application problem.

    How many pixels have you earned over the years would you guess? Did you declare them on your taxes?

  • Good to see some of the SQL questions and answers here that were cut of of the public transcript!

  • Great post. I think the last two questions-and-answers should be mandatory reading for those running a community, and even more so for those who don’t get why people contribute to social forums.

    I once was interviewing someone who said that traditional old-boys-club networking activities like golf were being partially replaced by the ability to play Scrabble on Facebook, but I think what you said about reputation and relationship building via making the world a better place is both more inspiring and practical at the same time.


Leave a Reply

Your email address will not be published. Required fields are marked *

Fill out this field
Fill out this field
Please enter a valid email address.