A Case Study of “Designed By Developers”: Stack Overflow

July 21, 2010

Stack Overflow was set up by two successful high-profile businessmen, attracts over 7 million unique visitors a month, and has received $6 million in funding. So I found it a little jarring when I visited the site to see this:

How Stack Overflow Looks on First Use

My eyes puked from the motion sickness of not-knowing-where-to-look-oh-my-god-everything-is-everywhere-ness of the page. It’s a typical case of ‘designed for developers, by developers’, and I’m sure most regular Stack Overflow users have got used to it and don’t mind. Perhaps they even like it. But a little bit of care over the design could make a huge impact on usability for newcomers, and regular users too.

Before I get to the details, some caveats:

  1. The site may very well be designed for optimum revenue rather than optimum usability. I’d like to think that there is a connection between the two, but I have no idea if Jeff and Joel have somehow proved that this is the best design for profits. Those guys know what they’re doing.
  2. I don’t know what percentage of visitors are new vs returning, how successful the adverts are in their current guise, or any other analytics which could be used to influence design improvements.
  3. I don’t know what the edge cases or constraints are; maybe there are some underlying reasons behind some of the apparent design ‘mistakes’.

With those caveats in mind, I’ll continue with my public-complaining-because-it’s-easier-to-complain-than-create.

Here are my initial concerns, with just the part of the page I can see on my MacBook – there are uglier things, like a second banner, lurking just under the bottom edge:

Stack Overflow, with labels showing questionable design decisions

  1. This is unnecessary noise. I’d hazard a guess that not many people click that link, and it doesn’t even fade out automatically – you have to click the close button. This is based on an assumption that most of their traffic arrives via search engines, and the visitors are interested in the main question and answer on the page, not about the site. On a rather pedantic note, the typography needs work – we haven’t needed double-dashes since the typewriter, and the exclamation mark is tacky.
  2. The search box looks like I’ve already typed something in. If it’s not obvious that it’s a search box, and you don’t want to use a search button or a proper form label, the default text should be greyed-out to hint at its status. And the ‘careers’ link in this top menu has nothing to do with the Q&A site – it’s basically a hidden advert, and shouldn’t be sandwiched between ‘log in’ and ‘about’. That’s just sneaky.
  3. This menu is visually one of the highest priority elements on the page, but contains things that are ambiguous (Badges) or almost pointless (Users) to most visitors. And why have they been styled to look almost like buttons?
  4. It would be nice to use some grammar here (“Ask a Question”), and maybe also visually differentiate it from the other menu items, as it seems to serve a different purpose (i.e. things that do different things should look different).
  5. This is one of the most important parts of the page. As a user following a Google search result, you need the validation when you open a page that it matches your expectation (search query). Unfortunately, the lack of negative space undoes any work that the typography does of highlighting it. It’s hidden.
  6. This seems to be the highest priority visual element on the screen: the colour yellow jumps to the foreground, and it’s the largest block of full colour on the page. It sucks the eye up to the top-right of the screen. At this point, yellow has been used for three purposes: to illustrate a notification message at the top, to show the current navigation, and as a background to the site introduction. Yellow is also increasingly known as the colour that represents ‘temporary’ information on the web (a la yellow fade, 37 Signals), which jars a little with this permanent, non-disappearing block. I know, from using the site, that it disappears on subsequent visits, but a new visitor doesn’t.
  7. This is a big assumption, but my market research to-date shows developers as being a particularly bad audience for advert click-throughs, so I’m surprised by the insistence on ads for revenue. Not only are there ads, but they are purposefully placed to be as intrusive as possible (there’s another one just below the fold), which I guess is because that’s the only way to squeeze out any revenue from the little-clicking developer crowd. If their revenue is based on impression numbers and not clicks, it would be nice to re-position them slightly.
  8. The second most important element of the page (the original question), and it’s completely hidden.
  9. What do these huge numbers mean? Okay, I’m being a bit pedantic here, and will assume the first one is some kind of voting system, and the other is a favourites mechanism. They are greyed-out though, so I can’t use them. Or can I?
  10. This is just a whole bunch of meaningless information, and needs serious editing.
  11. Is ‘tagged’ a heading? Or just a random word? It seems to be the same typography as the main body text.
  12. I’m happy to be proved wrong on this, but who actually clicks on these tags? Oh yes, I had a specific question on prototyping, and now I’d LOVE to see exactly 6,412 more questions about ‘subjective’ please. I’m not a fan of tag clouds (except for SEO purposes), but if you must show this information, cut out the unnecessary precision and just show relative sizes or another visual indicator of popularity, if you need it at all. And why do they look like buttons?
  13. Really? A tab device to choose ordering options? This decision blows my mind.
  14. I’m being facetious again, but these words have no context or meaning, and are greyed-out disabled. Having said that, the target audience (developers) probably understand their meaning.
  15. As per J, this is probably too much information.
  16. Ego stats. I can get a good sense of the popularity/likelihood of a correct answer from the number of responses and votes; I don’t need page views. I’m also not sure why this information, which is closely related to the main question and answer, is so visually disconnected way over on the right.
  17. It took me a while to get my head around what these mini-sentences were. Even now, I’m just going on the assumption that they’re replies to the answer above.

Anyway. Enough complaining. Let’s get physical… physical. I mean constructive.

Here’s what I’ve come up with so far (click the image for a full-size version). Please note that this is NOT a re-design, but a first step towards solving some of the problems. A real re-design would:

  1. Use existing analytics to identify what is and isn’t working.
  2. Be designed by a real designer and user experience expert.
  3. Take more than an hour.
  4. Most importantly: be based on real user research, and user tested.

A first step towards a better Stack Overflow

My suggestion hasn’t included all the functional elements yet, and is using shades of grey where a final design might use color.

What I have tried to show in the suggestion is:

  1. A better use of negative space.
  2. A defined grid system, based off the existing body text size (a grid should be based around the most important element of the page, which in this case, is the answer text).
  3. A defined typography hierarchy (four discrete sizes, consistent use of weight).
  4. A better visual hierarchy – important things are big and dark, less important things are smaller and lighter.
  5. A consistent and accessible use of complementary colors.
  6. Getting things ‘out of the way’ of the vertical eye line that don’t form part of the solution narrative (user profiles, replies to answers).
  7. A better grouping of elements that belong together.

As I said, this doesn’t yet include all the information (e.g. a link to flag inappropriate content, which would probably be a low priority icon), so it’s not really fair to compare like-for-like.

Even so, what I hope this shows is some of the basic rules of design composition, which non-designers (such as myself) should be able to use to improve their web app layout.

Dealing With Those Adverts

I can’t help but desperately want to remove those intrusive, ugly, ill-fitting adverts from the Stack Overflow design. Great business models should be beneficial to everyone, not based on irritation.

There are some so-so variations that would offer a slightly better user experience.

Companies could ‘sponsor’ keywords/sections; for example, Zend might have their branding integrated (but not intrusively) into pages that display questions tagged to PHP. The problem with this model is the overhead of selling-to and managing the sponsorship deals. (EDIT: It appears they already offer a variation of this)

Alternatively, the popularity of the site is large enough to support a Facebook/AdSense style proprietary ad-bidding system, where smaller companies could create their own adverts against specific keywords. This would have the benefit of being able to dictate the advert format, so that it can be more naturally integrated into the interface. Still, that’s a big piece of work.

We need to look beyond adverts, and capitalize on the real value of Stack Overflow.

The real competitive, hard-to-imitate value is not the traffic numbers, nor is it the question and answer content. The real value is twofold:

  1. The brand/position as being the place to go for answers to technical questions.
  2. Most importantly, the peer-reviewed database of personal expertise, for thousands of technologies and software skills.

Once you realize these core values, a new business model becomes clear.

Stack Overflow should become the broker of commercial technical customer support for generic languages and skills.

There are tens of thousands of companies, agencies, and software-houses globally that can purchase expensive support for packaged software, but not easily for the languages or frameworks that they use: PHP, Java, Ruby, Javascript or even specialist topics like Artificial Intelligence.

When developers in these companies need to solve a language-level problem (‘How do I do X in PHP 5?’), they can of course ask it on a public forum. But with that comes no guaranteed response rate or quality of response, and also the public ‘outing’ of inexperience. For many companies, they need the answer NOW – every minute is wasted money – and they’d prefer to get it directly, from a known expert, rather than in a flurry of mixed-quality responses on a public forum.

That’s where Stack Overflow comes in.

The users with the highest ratings can opt-in to provide customer support for languages or skills that they have proven expertise in. Badges and Points are no longer just a status symbol, but a route to being given this opportunity.

Companies then pay a monthly fee for technical support in the subject(s) of their choosing. For the sake of argument, let’s say $100 for 10 questions a month about PHP (there would of course be a stepped pricing model for the number of questions and topics covered). A simple web application/dashboard (or an AIR app, etc.) allows the company employees to privately ask questions, which are relayed in real-time to approved ‘community support assistants’. Whoever picks it up first and answers it satisfactorily receives $5 – not a bad payment for potentially five minutes of typing an answer. Stack Overflow gets to keep a healthy 50% of the revenue to cover costs and invest in growth.

Everyone wins, and those pesky ads can be removed.

Tags: , , , , , , , ,

62 Responses to “ A Case Study of “Designed By Developers”: Stack Overflow ”

  1. Ben Lumley on July 21, 2010 at 2:11 pm

    I won’t comment on the design etc, not really my thing. I agree that elements of your proposal are improvements though!

    But re ads – they already have sponsored tags – see:


  2. Jon on July 21, 2010 at 2:45 pm

    Maybe I’m alone on this, but I’m actually a big fan of the tags in the lower right of the page. I use them often actually.

  3. Justin Rudd on July 21, 2010 at 3:00 pm

    As part of the target audience of StackOverflow, I’ve gotten to the point where I can block out what I don’t need to see (or care to see). But I work in a room with 6 other developers, so blocking stuff out is a necessary skill 🙂

    But with StackExchange (the software that runs StackOverflow) opening up to non-technical markets, they probably should hire a usability person. Take a look at http://cooking.stackexchange.com/ as an example.

  4. WayneB on July 21, 2010 at 3:01 pm

    Advertisements? What advertisements?

  5. Jeff Atwood on July 21, 2010 at 3:01 pm

    Hi Phil!

    Thanks for putting this together. A few issues:

    – deeply disagree that the user needs to be the “first item” on every line. I don’t really care who the user is, I care what the information is they can give to me.

    – voting needs to be more prominent since it’s the primary sort order and the focus of how information is presented and how reputation is earned in our system

    – prefer to take Tufte’s advice about using whitespace effectively rather than putting everything into grey boxes

    – badges / tags are almost invisible in your screenshot and they’re major parts of our “economy”

    Be careful, because you’re seeing the one-time new user screen layout. Note that registered users won’t see the new user stuff, and registered users with > 200 rep have some ads suppressed.


    You might also be interested in these, which I thought were more fruitful UI discussions:



  6. Jeff Atwood on July 21, 2010 at 3:03 pm

    er, please change “Phil” to “Dan”. my apologies 🙁

  7. Dan on July 21, 2010 at 3:20 pm

    Hi Jeff,

    Thanks so much for replying – much appreciated!

    1. The user may be the ‘first thing’ on every line, but that doesn’t mean it’s the highest priority. It’s out of the way of the main eye-line (like a navigation menu might be) – the ‘left’ column isn’t the most important area of the screen.

    2. The grey boxes, as I said in the post, are not necessarily meant to be grey, but are just a design ‘feature’ in the mockup to represent a design device to hold-together the components of each response. A final design might use lines, or some other device.

    3. I appreciate that the ‘registered user’ experience is vastly different. It would be interesting to know the stats of registered users vs non-registered for the site. It seems that the usability, functionality (like you say, badges/tags) are geared specifically towards the registered community, and not towards the non-registered/first-time/search-referrer visitor. This may be a good idea, but I do feel there may be a better compromise somewhere in the design. At the moment, it’s very confusing for a first-time visitor.

    Thanks again,


  8. Caleb Cushing ( xenoterracide ) on July 21, 2010 at 3:24 pm

    Tags are actually useful. I’ve started using them to filter the languages I know since using ‘unanswered’ doesn’t give me an option to display the newest unanswered with tags I’m ‘interested’ in.

    yes I think badges are important but those buttons are way bigger than they need to be.

  9. Steven on July 21, 2010 at 3:25 pm

    Clearly, you’re not the target market for Stack Overflow. While you make some points that might be more applicable to Stack Exchange, which is the same platform but not targeted to developers/tech savvy users.

    Many of the design elements you criticize are unfamiliar to non-developers (scores,etc.) but are already used on SO’s competition. Many users acknowledge that the design is not the prettiest (and that’s a subjective thing), but think about eBay. Ugly and clunky but the value of the functionality far outweighs the ‘UX’.

    BTW, on SO, when you don’t find the answer you’re looking for, those tags (L) are REALLY handy for discovering related questions. We devs also click on ads when they’re for stuff we need (i.e., commercial development tools, etc.) – that’s why you don’t see ads for Volkswagens on the site. The ads are quite targeted.

    IIRC, Stack Overflow became sustainable before they accepted the funding, and that’s WITH the ads.

  10. Andrew Warner on July 21, 2010 at 3:25 pm

    It’s hard to read your notes and see the screenshot at the same time.

    Consider putting the text in a scrollable box under the image. Check out how I do that with the transcripts of my interviews. For example: http://mixergy.com/dodocase-patrick-buckley-interview/

  11. Steven on July 21, 2010 at 3:30 pm

    One more thing – your critique on B – you might want to look at your own template too.

    “Search & Hit Enter” makes no sense. What are you searching for before you hit Enter?

  12. Dan on July 21, 2010 at 3:32 pm

    @Stephen – I was a developer for 10 years, so I think I may be the target audience. You seem to imply that functionality and UX can’t go hand in hand, or that developers somehow ‘see around’ the bad UX.

    My problem with the votes, and favourites, and badges, and all that stuff is that they’re great for the registered community, but for the non-registered visitors (which I’d assume are the majority), they currently get in the way and add a lot of noise. Perhaps my first-draft isn’t the ultimate solution, but I do feel there should be greater attention paid to the non-registered users (unless they are a tiny minority of visitors), and that there will be a design that works for both audiences. At the moment it’s skewed heavily in one direction.

  13. Dan on July 21, 2010 at 3:35 pm

    @Steven (sorry, I referred to you with a ‘ph’ previously) – regarding the search on this site. This is a non-commercial blog running off a standard WordPress template. Maybe if I had $6 million, it might be worth my while to fix it.

  14. dude on July 21, 2010 at 3:41 pm

    I hardly ever say this, but I’m 1000% with Jeff on this one. The design of SO is about as close as is practically possible to perfect for developers.

  15. dude on July 21, 2010 at 3:43 pm

    Btw, wth is that grey thing that looks like a button in your comment section? It’s got no text or any indication of what it does other than it turns red on mouse-over…? Using firebug to inspect the element reveals that it’s called ‘reply’. Fail.

  16. Dan on July 21, 2010 at 3:46 pm

    @dude Ah again, attack is the best form of defence! I hadn’t even noticed that before – it comes with whatever WordPress template I’m using. But you know what? You’re right – so I’ll fix it. Thanks.

  17. Corey Ballou on July 21, 2010 at 3:52 pm

    Let’s be honest… SO’s closest comparable competitor is Experts Exchange. Although it may have it’s design shortcomings, SO’s improvement over EE is tenfold. The last thing I want to do when I google a programming related question is be redirected to a page where I have to scroll a city block to see unorganized answers.

    I was personally never under the impression SO was difficult to use or understand, but I can fully understand where a googler does not need any of the added noise of badges or users if they simply want an answer.

  18. Dan on July 21, 2010 at 3:52 pm

    @Steven Just FYI, I’ve removed that awful search box on this blog too – it served no purpose (my stats show that nobody ever uses it), and it was confusing. Thanks for pointing it out.

  19. Steven on July 21, 2010 at 4:07 pm


    I would argue that despite the noise, people will ignore/see around the noise.

    The standard behaviour for a non-registered user around Stack Overflow is “I am trying to solve a particular problem.” The first-time user is fixated on finding an answer, because he or she is feeling some real pain around it.

    Please keep in mind, while I am of the opinion that your critique might not have a lot of weight on SO (UX opinions are always subjective), I think they carry a lot more weight with respect to StackExchange (the Stack Overflow platform). I don’t think they can get away with the same user experience with non-developers. I’m a big fan of SO, but I really don’t understand the current thinking behind the approach of StackExchange.

  20. Caleb Cushing ( xenoterracide ) on July 21, 2010 at 4:08 pm

    I will actually say that for the most part I think Dan has made some good improvements here. SO has some great design qualities but it could use a lot of work too. Too bad the fanboy’s and employee’s don’t see that.

  21. Ben on July 21, 2010 at 4:11 pm

    Are you crazy? StackOverflow is far and away one of the most usable websites (actually a web application) on the Internet. It broke new ground in usability by combining a number of relatively recent techniques such as the Ajax question suggestion, the long list on the front page (making good use of the scrollbar), the voting UI. Indeed the whole wiki Q/A UI was state of the art (and now much copied).

    I can’t think of a worse UI to target for redesign.

  22. Steven on July 21, 2010 at 4:17 pm

    “Ah again, attack is the best form of defence”

    That is the dilemma with making a critique of a site with a huge following.

    If you’re going to take the time to do a UX analysis on another site, complete with screenshots, you’ve got to make sure you’ve at least been consistent with your views on your own site, and even then, be prepared for the backlash of the site’s fans.

  23. Dan on July 21, 2010 at 4:21 pm

    @Steven Fair point, I accept that (though I have to admit, my initial response was going to be, “Tell that to Jakob Nielsen”). Hopefully it shows some good will that I’ve made changes that I accept need to be made.

  24. Jonathan Castello on July 21, 2010 at 5:40 pm

    The current design works for me and I’ve never had any problems with it, but I actually like your revision quite a bit. There’s no doubt it has its problems, but from these comments it seems to be more about what the SO culture has that’s missing from the redesign. The votes definitely need to be more prominent (and the favorites icon is almost invisible). I’m sure there are other things, too. But I really like the general flow of this mock-up. The title grabs you, and you move down from there.

  25. Dan on July 21, 2010 at 5:51 pm

    @Jonathan Thanks for the comment. I agree, the voting/favouriting system is definitely too small in my draft.

  26. Alex on July 21, 2010 at 5:53 pm

    I skimmed the first couple of points… think I got as far as “C” before I disagreed so much I couldn’t bother continuing.

    To be fair, you may address this elsewhere, or you may have failed to appreciate how (at least some) people *USE* stack overflow. (or you may disagree … which is fair).

    I only signed up for a stack account today. I have been an acute stack user however for months. Unintentionally every single time.

    I’d google my problem. jQuery is being a bitch, PHP is being a bitch … MySQL is being a .. and so on.

    Time and again I’d end up on stack. Time and again the exact question I had would be on the page… and the answer would be a scroll away.

    I don’t think SO is designed around any of the elements you’ve highlighted off the bat. (menu, interface, etc..) SO is built around (from your diagram) E H Q

    The community comes with time, after you’ve decided that you like stack enough to give some back.

    At that time you’re willing to look at the wider page and click on the things that are secondary to the primary focus, which is “find the answer to my problem right now”.

    Maybe I’m wrong. But it’s at least my take on it.

  27. Dan on July 21, 2010 at 5:59 pm

    @Alex I’d love to hear what you ‘disagreed so much’ with about A and B.

    Also, for all the devs who are saying that the current design is absolutely 100% perfect, I’m not really sure you’re giving the issues raised fair thought: Do you really think that tabs are the best visual metaphor for re-ordering the answers? Do you think that ‘careers’ belongs in the middle of the top menu? Do you think that the typography for ‘tagged’ is as good as it gets? Do you think that the main title is clear to a first time user?

    I’ll be the first to admit that, sure, not every suggestion may be valid. But to dismiss every suggestion because “I’m a developer and it works for me” seems a little short-sighted.

  28. Guy at HockeyBias dot com on July 21, 2010 at 6:01 pm

    I am a developer. I think the site’s layout is intuitive and simple to use.

  29. Dan on July 21, 2010 at 6:11 pm

    Just for some additional context, the (quantified) Quantcast data shows a 32% Regular / 68% ‘Passers By’ mix for Stack Overflow, albeit with 74% of visits (rather than visitors) being ‘Regular’ or ‘Addict’.


    I’m guessing I got most of these ‘addicts’ commenting on here 🙂

  30. Jin on July 21, 2010 at 6:23 pm

    Dan, we really appreciate your taking the time of writing up this thorough review! I agree with some of the visual suggestions you came up with. Typography, white- spacing, etc definitely can be tightened up. It’s these small details that give a site that extra polish. We do plan to make incremental tweaks down the road.

    As for usability, I think it’d only be fair if you use the site for a bit first before making judgements. (Not saying all your all suggestions are wrong). I’d love to see you revisit some of the issues you raised after a few days of asking/answering questions. Over the past two years, Jeff and the team have made tons of usability improvements based on the feedback from the SO community. The SO UX you see today is mostly based on community voice. see http://meta.stackoverflow.com/

    Again, thank you for the post.

  31. Dan on July 21, 2010 at 6:29 pm

    @Jin Thanks so much for the reply. I absolutely agree – this critique is definitely from a ‘new visitor’ perspective, and definitely improves with registration / regular-use of the site.

  32. Newtopian on July 21, 2010 at 6:42 pm

    At first I was a bit shocked…

    WHAT… how can you not like SO ?? Then again, not everyone is a programmer either.

    Although there are some losses to the SO community I must admit that the proposal does expose some weakness to the overall design of the page. Specifically the placement of the first ad banner which does, one must admit, completely obliterate the main purpose of the page… that is providing a forum to discuss around a specific question.

    Well… in the SO page above the question is buried under tons of stuff.

    I like the placement of the participants information also, it is out of the way yet remains there, actually it helps evaluating the answer. I find that the reputation system, with all it`s weaknesses, does provide some information on the pedigree of the person answering the question. Coupled with the voting tally, which, in the proposed layout should definitively be bigger, provides better readability on assessing the quality of the answer. Answer which is easier to read also with the moving of the author(s) to the left. Again, I agree with Jeff to remove boxing of each answer in any way (color, lines etc) I think the comments area provides a natural boundary that is sufficient to discern one answer from another.

    Tags section on the right, well, I do not use these buttons but it does provide some idea on how active is the community in semantically related subjects so it does have it`s use.

    Page view I disagree with Dan however, in the context of SO page views is basically just noise to me. It matters little if a page has been viewed often or not unless it is to tally potential revenue. The very reason for SO’s existence is to provide a single place for these questions that are not viewed often. But boy are you happy when you get across this very problem and find out someone answered it on SO already !!

    Top bar that drops down. Not really useful for single users I agree but as a SO regular I do like to be notified of changes. This being said maybe there is a less invasive way to convey the same information cause I gotta say that when I have not been there in a while and there is a stack of 6 bars it leaves little space for the rest !

    anyways… enough for me

  33. Steve C on July 21, 2010 at 7:47 pm

    I do agree with Dan on a few points here. I too agree that tabs are a bad metaphor for ordering. I also think tags being buttons is a bad choice.

    One thing I will say about SO, and is probably a good explanation as to why everyone is defending it so much, is that it’s quite learnable. Things that aren’t obvious are quite easy to learn, with the exception of some of the UI in the user section. That’s probably why many here don’t see a problem with the UX of the site. I use it all the time and I also think that in spite of its problems it’s not hard to use.

  34. John Stracke on July 21, 2010 at 7:48 pm

    Jeff Atwood wrote, “Be careful, because you’re seeing the one-time new user screen layout.”.

    Well, yeah. Personally, that’s the only one I’ve ever seen, because every time I see it (via Google searches) it breaks my eyeballs and I never want to come back to SO. Surely that’s something you’d want to fix.

  35. Ed S on July 21, 2010 at 8:27 pm

    As Jeff posted, how about actually making an account? Those adds disappear for registered users. I don’t know how seriously I can take your article seeing as you obviously did not really use the site at all.

  36. Dan on July 21, 2010 at 8:32 pm

    @Ed – why should only registered users get a good user experience? Do I need to register in order to ‘use the site at all’?

  37. Tor Løvskogen on July 21, 2010 at 8:45 pm

    This would be a constructive conversation without the “it just works, it could be way worse” arguments.

  38. taelor on July 21, 2010 at 9:05 pm

    I personally have always loved the SO design and flow (flow more importantly).

    I love the way “A” works. It always catches my attention and helps guide me to the first thing I need to do when I come to the site (IE, signing up, or after signing up, catching up).

    I do agree with Jeff that once you sign up, it looks/feels alot better.

    As for “why should only registered users get a good user experience?”, isn’t that the point? To get involved? Engage in the discussion. to vote, to comment, to do anything than just leech information off of the site.

    SO is all about community, and to get a good user experience you need to register as a member of that community. Yes you need to register to “use the site at all”, otherwise all of that great involvement and user enrichment isn’t possible.

  39. Zaks on July 21, 2010 at 9:47 pm

    SO is very usable and I would *hate* to see it changed (I’m a non-registered user by the way, and see the page like you pictured it every time I go to the page)

    That being said I agree with a lot of your points for all the new websites that are not targeted at developers like us (like cooking, home improvement, photography, ect…). Those sites (when they become active) could do with less clutter.

  40. Ben Alabaster on July 21, 2010 at 9:52 pm

    I like a lot of aspects of your design, however, I’ve got some suggestions which may help make it flow better for us developers:

    1. In the question header, the tags create a disconnect between the question title and the detail. Something needs to be done about that. Perhaps putting them below(?)

    2. Giving the question title and question body some kind of visual grouping helps with the immediacy of understanding what you’re looking at. It wasn’t immediately apparent that there was a relationship between the two – in fact, because I’m so used to Stack Overflow’s current design, it took me half a second to realize that that the question wasn’t in fact an answer.

    3. I like your use of negative space, but because there’s none utilized in the question title, it makes the top of the page look awkward and disconnected. Perhaps if the box for the question were extended upwards to incorporate the title, it would help this feel more natural.

    4. Voting is tied to both the question and the title, and the title and question were both created by “Fernando”. Thus, the user, votes and favourites stats all apply to both, as do the tags. So I think I’d bring the title, the tags, the favourites inside the grey question detail box, putting the tags at the bottom, the favourites stats directly under the votes and align the user info with the question title so the flow isn’t broken.

    Other than that, I think I prefer your design – minus the ads which I hate and I know aren’t your doing anyway.

  41. Ben Alabaster on July 21, 2010 at 9:57 pm

    One further comment which may render one aspect of your layout unusable from a business standpoint and that frequently the best and accepted answer is fairly meaty and can quite easily extend to and beyond the bottom of the view port which would push the ad below the fold, which as a user I’m quite happy with, but as an advertiser, I’d be quite upset with. In this situation, it might have to come before the first answer, or even before the question if you don’t want to interrupt the flow from question to answer.

  42. Dan on July 21, 2010 at 10:05 pm

    @Ben Some great suggestions, thank you.

    @Tor Yes!

    @taelor The second half of your comment is deeply worrying, and I hope isn’t shared by many SO users.

  43. Tor Løvskogen on July 21, 2010 at 10:18 pm

    @taelor I don’t think it was the creators idea to make the page just usable (as in canned food is just edible) so more people would sign up and then, finally, have the best experience.

  44. Edward on July 21, 2010 at 10:47 pm

    You are very right, thank you for posting this. The StackOverflow site is a visual mess, and all the people here that love it so much… well… I don’t think they have much of an eye for usability. Most people don’t. And that’s ok.

    But Dan’s quick mockup, that can easily be improved by spending a bit more time, is already a huge improvement over what StackOverflow is today. If you want to understand why, then please read Steve Krug’s wonderful “Don’t make me think”. Highly recommended.

  45. Brian Duffy on July 22, 2010 at 1:57 am

    I think designers often focus on simplicity and a vision of usability that is geared at the lowest common denominator user. That isn’t always a good thing. “Bad” usability works when you target a niche audience and focus on the data. I don’t care about font weights and typography. Just answer my question.

    Click through Stack Overflow, and it becomes apparent very quickly that the folks who designed it cared ALOT about data. All sorts of data, including who the contributors to the site are, what questions are more/less popular, etc. The reason why people love it is because of the sheer volume of data that lets you glean more information about the question and the people asking and answering the questions without thinking about it.

    Your example redesign sterilizes the experience, and feels like one of those godawful message boards that you find on Fortune-100 tech company websites. Compare your version to the Stackoverflow — zoom out enough so that the text is difficult to read, and tell at a glance what questions are the most popular. An experienced Stackoverflow user can tell you all sorts of things about a question without reading it.

    SO isn’t perfect and needs some tweaks here and there. The new stackexchange sites that are catering to different audiences will probably need different layouts that make more sense to cooks, birdwatchers or whatever. But in general “fixing” something for the sake of fixing it is a bad idea.

  46. JS on July 22, 2010 at 2:37 am

    Hello Dan,

    Even though you may have once been a developer for 10 years, I don’t think the site SO is/was for you. For several years now, I’ve been using SO as a non-registered user either because Google sends me there or because I go there to search out answers to programming questions. Never until your blog post here became prominent did it even occur to me that the site StackOverflow:
    1) Has usability problems, and
    2) Is a confusing and busy interface.

    Yes, Halloween colors are not the best choice, but StackOverflow provides answers to questions effectively and efficiently to the point that the site simply fades into the background. So, I don’t know. If I had to wager based on the success of StackOverflow, I would bet that my experience is more in line with the average visitor than yours.

    The fact that you’re bringing up the usability as a problem is suggestive that the StackExchange concept may be flawed due to insufficient numbers of people who are both interested in the non-technical subject areas and capable of grokking the site format. Alternatively, you may just be a very clever marketer who figured out how to gin up some exposure by taking shots at the leading site for Q&A.

  47. Steve on July 22, 2010 at 2:40 am

    The last thing the web needs is one more place that caters to people that don’t really know what they are doing. Experts Exchange stuck it behind a pay wall. SO is out in the open. Personally if I am leaching content then I don’t care about what the site looks like. I look for things that make me more effective and SO does that. I find that the SO features capture what I want in a community that fills the needs of professional developers. Maybe the UI could be better but functionality and design of site interaction is what is important. The UI is simple and using the site is intuitive.

    As a daily SO user i am glad they cater to my wants and not yours.

  48. […] “Designed by Developers: Stackoverflow, A Case Study” (via Dan Zambonini) […]

  49. Dave on July 22, 2010 at 3:20 am

    Thanks for this. I’ve only ever used SO via Google, and every time I click there I find it an uncomfortable experience. Your redesign looks heaps better. And your commentary was really interesting.

  50. Rick on July 22, 2010 at 4:13 am

    That was an excellent post, Dan. You put a ton of thought into each of your points, and the letters on the layout made it very easy to follow along.

    I read and re-read. Thank you.