A few weeks ago we posted about our new way of working. Small teams of three, two-week iterations, and two-month resets.
First iteration
For the first two-week iteration, Team Bravo took on a revamp of our customer forums. For a couple of years we’d been using forum software called Beast. It served its purpose well, but it was time for something better.
The forums were structured in the traditional way: They were separated by product and grouped into categories. There were forums for feature requests, troubleshooting, how-tos, etc. It worked well enough, but it really wasn’t a good match for the primary use of the forums: asking and answering questions.
We also didn’t have any formal spam protection on the forums so every day we had to go in manually and clean out spam. Plus, the anonymity of the forums led to the common devolution of discussion seen across anonymous forums across the net. We had to do better.
So Team Bravo pitched a total re-do. We accepted.
A change of direction
The early mockups for the revamped forum followed the structure of the old forum. Products and categories. We fell into the trap of redoing something by using the old as the guide for the new.
But a few days in we shifted directions and decided to structure the forums in more of a Q&A format and less of a “subject” and “body” format with the usual categories. 37signals Answers was born.
How it works
When you visit 37signals Answers you are shown a list of the products supported by Answers.
Clicking a product takes you to the Q&A for that product. In this case we’ll click on Highrise.
Customer questions are listed. Anyone can answer a question. When someone posts a reply to a question, and someone from 37signals feels like it answers the question thoroughly and accurately, we can mark it .
37signals ID integration
Answers is our first new app built with 37signals ID integration since we launched 37signals ID late last year.
The 37signals ID integration serves a few purposes.
- It makes logging in easier. People can use the same 37signals ID username/password to log into Answers as they use to log into their Basecamp, Highrise, Backpack, and Campfire accounts.
- It encourages civil discussion. Since people are identified by the same name and avatar they use inside the 37signals products they use, no one can battle anonymously from behind a handle.
- We can identify which products someone uses when they post a message. The products are listed below their names in icon form.
- It sets us up down the road for further integrations including incentivizing customers to help one another. Since we know who you are, and which products you use, the more you help other customers the more we can reward you. We’re still thinking about the possibilities here.
A great start
We’re really excited about Answers. Our customers appear to really like it too. And we got it all done from scratch in just two weeks. This included getting Rails 3 set up for the first time. Great work from Sam, Jason Z, and Jeff plus support from Mark and Joshua.
Chris M
on 26 Jan 10Answers is great. A real improvement. Keep em coming.
Anonymous Coward
on 26 Jan 10This reminds me of Stackoverflow, with the “answered” feature.
Anonymous Coward
on 26 Jan 10Any plans to make this an opensource product?
JF
on 26 Jan 10We like Stackoverflow, but we felt it was overkill for what we needed.
We didn’t need voting, for one. We don’t like the interface, for two. And it doesn’t integrate with 37signals ID, for three.
We want to take Answers in a more custom direction so we rolled our own.
Gregor
on 26 Jan 10Nice! I’m looking forward how it will change in coming weeks and months.
I’d would be nice to edit your comments for another 15 minutes after you posted. But that’s just nice to have
Jordi Bunster
on 26 Jan 10I love the theory on how it might promote more civil discussion. Next step is to encourage the 37 Signals ID in your blogs, too.
Derek
on 26 Jan 10It’s funny, that you choose that answer by Jamis. I’ve had to deal with that for our site as well. However, it seems like Jamis gave him a workaround not a fix. I don’t know the full extent of the issue, but I believe it’s related to the iframe and SSL in IE. You can fix it to allow it to work on your servers. You just have to create this total B.S. xml file called P3P file and add a meta tag in the header. Microsoft has a tool to create it. Once it’s in the site, the SSL iframe works great in IE and no other browser is affected.
Tony
on 26 Jan 10I think Answers could be another great product to add to your portfolio! I would definitely love to use this type of system for our customer support.
Michal
on 26 Jan 10Really nice way of helping customers…
Victor
on 26 Jan 10I am just curious. Does this write up imply that answers was designed, implemented, and released in a two week time span?
John Topley
on 26 Jan 10Looks slick, congratulations!
JF
on 26 Jan 10I am just curious. Does this write up imply that answers was designed, implemented, and released in a two week time span?
Yes. Conceived, designed, implemented, and released in two weeks (10 work days).
Jake Boxer
on 26 Jan 10This looks awesome. Is there a reason you decided to go with this instead of Get Satisfaction?
PabloC
on 26 Jan 10Two weeks? Awesome!
Are you using RSPEC & Cucumber and AutoTest? Also, any kind of Continious Integration Server?
Thanks!
Daniel
on 26 Jan 10...dayum. You guys really work fast.
Congrats! It looks like a great system. Interesting to note, though, that it’s somewhat reminescent of getsatisfaction.com – a site I know you guys don’t appreciate! (Neither do I; its entire UI is terrible).
One question: How do you handle duplicate questions? Do you post a simple “here’s the answer”-link, or do you somehow tie questions together in the database too? (I’m guessing no to the latter – needless complexity)
Ben
on 26 Jan 10Watch out Facebook, 37signals is going to take over you and the world!
When are you rolling out the photo album app and third party in-37signals games?
Royal
on 26 Jan 10Is this being indexed by search engines? I would rather my internal 37s name is not publically associated with anything.
Andrew Wicklander
on 26 Jan 10Awesome.
Kevin
on 26 Jan 10“We don’t like the interface”
curious on what about the stackoverflow.com interface you didnt like? Seems pretty clean and intuitive to me…
thoughts?
regards, Kev
JF
on 26 Jan 10Kevin: We think it’s clunky and cluttered with things that don’t matter. It may work great for others, but we don’t like it for us.
Rahul
on 26 Jan 10I would be seriously interested in an SVN post redesigning StackOverflow’s UI. I’ve been feeling the same way since it launched – that it’s cluttered – and tried out a couple of simplifications using the Firefox Stylish plugin, but seeing you guys do it would be a real treat.
Anonymous
on 26 Jan 10Integrating Answers with 37signals ID is obviously a good idea, because it stops spammers in their tracks and reduces your workload (in that you only have to answer questions from people who actually use the products.)
But I question if “civil discussion” is a legitimate rationale for enforcing identity disclosure. Would Answers really turn into 4chan if posters were anonymous? It’s a support board for business software, not a politics or religion forum. Let’s not denigrate anonymity and the important role it’s played in the development of the internet and, indeed, throughout recorded history.
Tony
on 26 Jan 10Once search is added, this would be fantastic to have available as a service (like your whiteboards or tada lists) or as an open source project (minus the 37signals ID, of course).
A simplistic approach to stackoverflow: FAQs via crowd wisdom.
Would you consider opening up a little on this as a Rails case study? The two week turn around speaks volumes.
Adam Patterson
on 26 Jan 10definitely need a:focus {-moz-outline: none;} in your css
JF
on 26 Jan 10Tony: You can search. It’s right above the top most question in it’s own bar.
MattH
on 26 Jan 10Why not let the person who asked the question decide if it’s been “answered”?
If a question is left unanswered after a set amount of time then have a moderator decide.
JF
on 26 Jan 10But I question if “civil discussion” is a legitimate rationale for enforcing identity disclosure. Would Answers really turn into 4chan if posters were anonymous? It’s a support board for business software, not a politics or religion forum.
The old forum had it’s fair share of devolution. We’re not suggesting that real names will eliminate all unproductive behavior, but it’ll help. We think accountability encourages a better environment for everyone.
StevenK
on 26 Jan 10Please tell me you’re considering adding this to your Open Bar and Launchpad.
Anonymous Coward
on 26 Jan 10@37signals
Guys, having you (37signals) determine when an response is an “answer” is inherintly wrong.
You should let the person who asked the question determine if one of the responses is the “answer”.
Case-in-point
http://answers.37signals.com/basecamp/259-why-is-my-timestamp-different-than-the-rest-of-the-company-s
The poster asks a question. 37signals responds and marks the question as “answered” but the original poster within minutes of when 37signals posted it’s reply says basically, “no – what you are stating is incorrect, that is not the answer”.
MattH
on 26 Jan 10Why not let the person who asked the question decide if it’s been “answered”?
If a question is left unanswered after a set amount of time then have a moderator decide.
Ecommerce Developer
on 26 Jan 10With answers, users can no longer form a community through social conversation – Im not sure if this is a good thing – but it does seem to be more ‘targeted’ now.
Anonymous Coward
on 26 Jan 10Any plans to make this an opensource product?
This could give bbPress some real competition.
JF
on 26 Jan 10Guys, having you (37signals) determine when an response is an “answer” is inherintly wrong.
We don’t want to put the burden on our customers to have to mark questions as answered.
Many of them just won’t do it. It’s not because they don’t want to, it’s just because they won’t. They aren’t used to having to make that call in a web-based forum. We’ve seen enough user behavior over the years to know what happens in these situations.
So here’s what would happen… Questions that have been answered won’t be marked as answered. 30 days will go by and it will look like tens or hundreds of questions have gone unanswered even through there’s an answer in there. That’s not good for anyone.
So we’ll make the best call we can on whether or not a question was answered accurately. We may get some wrong – just like anyone may get some wrong. But we think we’ll get the vast majority right – and quickly. If we miss one, and mark something answered that wasn’t answered, people will correct us. We’ll review and make adjustments as necessary.
Stephen
on 26 Jan 10This is a product that we would be very interested in. Our clients are huge researchers and this is a natural fit to integrate into our website somehow.
Forums are too difficult Having an answers with an option to signup for a newsletter or an invite for us to call/email interested individuals would be fantastic.
Keep em coming. We are reaching our 250 limit on Basecamp so will be giving you money soon. I am moving our small business into the cloud this year and wish to use SaaS that has some longevity – your biz is a natural fit moving forward with confidence level being A+++.
Anonymous Coward
on 26 Jan 10@JF
So what does “Answered” then actually mean?
1. Does the “Answered” graphic simply mean that someone from 37signals replied to the original question and nothing more (which means that the 37signals employee may not have actually answered the question)
or
2. Does the “Answered” graphic mean that the actual answer to the question is the reply denoted by the “Answered” graphic? In this case, a non-37signals employees reply might be deemed as the “Answer”.
Anonymous Coward
on 26 Jan 10@JF
I promise I’m not trying to purposely be a pain in the ass. But now thinking about it more, once a question is “Answered” (depending upon exactly what “answered” mean), wouldn’t it make sense to then immediately close that topic.
Basically, why let people post replies to questions that have already been answered.
Anthony
on 26 Jan 10I’d pay for this if you launched it as a product. :) Just saying…
JF
on 26 Jan 10Anonymous: Answered means someone at 37signals feels like the question was answered. It doesn’t mean it’s absolutely perfect in every way, but that it answers the question well enough to give someone as much information as they probably need.
Anyone can reply to questions and anyone’s reply can be marked as an answer. We just make the best judgement about which reply provided the best answer. And multiple replies can be marked answer too.
For example, here’s a question answered by someone who doesn’t work at 37signals.
Tamim
on 26 Jan 10Great thing. Would like to have such a thing for our product.
Chris
on 27 Jan 10Were there any features that you’d like to seen in Answers but left out because the two week time frame for the group was too short?
gordon
on 27 Jan 1010 work days? Did 37s not used to have 4-day weeks or somesuch?
Did that work out?
Benjamin "balupton" Lupton
on 27 Jan 10I’m confused. How come you guys didn’t just use GetSatisfaction – a product you guys have already praised and can be used for free? As definitely the Q&A approach has already been done to death by plenty of products out there, so it does seem (at least to me) that you guys are just repeating yourself… or trapped within a “we can do it better” mindset.
pwb
on 27 Jan 10GetSatisfaction is terrible. For proof, just look at how little activity there is on any given product/company pages. Even a site like Yola which has decent traffic, is spotlighted on GetSatisfaction’s home page and incorporates GS into its support page has hardly any usage (1 post today!). The whole GetSatisfaction design is really not conducive to usage. The average PHP forum system out-of-the-box is better.
Matt
on 27 Jan 10That fella over at Balsamiq raves about GetSatisfaction, is it really that bad?
Oh, and if you google “Beast Forum” you get some very interesting results… though probably not what you want to looking at
Arjen Schat
on 27 Jan 10I don’t understand why you create a new login form for every separate service. The browser manages user name password combinations for every sub domain separately. First of all I still need to remember my password when I want to login in a new service. Second; if I change my password I have to change it for all service separately. Can’t you use a POST and direct all logins via the launchpad sub domain.
Pies
on 27 Jan 10I think you should make it a bit more like UserVoice – divide questions into suggestions/error reports/etc., allow for voting up good questions, maybe display a snippet of the answer in question list.
The design seems a bit stark.
Stephan Wehner
on 27 Jan 10Hey there, if I were to rewrite beast, I would change the Search box to a “Text area” (which has two dimensions), like getsatisfaction does. I think this is a nice flow:
User describes what they’re looking for, and get either matches or get to post it as a new “article”.
Extracting the answers is probably not too easy, but I think that’s a good challenge to work on.
Stephan
Stephan Wehner
on 27 Jan 10Forgot: ... and that’s the only getsatisfaction feature I find worthwhile. —Stephan
Daniel
on 27 Jan 10@Stephan: It does seem pretty smart, but I’ve seen its complexity result the most annoying problems. I once wrote a longish, very technical question, only to have the javascript somehow mess up when it started searching for existing answers. The result was, that I could not submit, edit or even select and copy my question. The main GS-feature just “crashed” in the browser. It was on a friend’s Linux netbook so it was probably a browser incompatability, but that didn’t make it any less irritating for me, the user.
Personally, if I actually end up on some help forum, it’s usually because I couldn’t Google my own way to an answer, so I’m at the point where I’ve thrown in the towel, so to speak. I just want to ask my question and be done with it. So when I see that list of suggested answers on GS, my immediate reaction (whether fair or not) is to think “I’l already looked for the answer, dammit! That’s what I’ve been doing the past X minutes/hours/days! Get out of my way and just let me post the question!”
@balupton & Matt: Even though I’ve just ranted about GetSatisfaction, I’m sure there are some good sides to it (I’ve yet to find them). However, there’s a very simple reason for why 37signals isn’t using it: Just read this SvN post. Basically, GS was more or less passing itself off as the official 37signals support-site, including 37signals’ logo and everything. Yet Jason and company had nothing to do with it. The only thing to suggest that the GS-site was unofficial was a text saying that “37signals hasn’t comitted to an open discussion about their products” – i.e. 37signals is not a paying GS-customer.
To their credit, GS did see how their site was, well, fraudulent and how it misrepresented 37signals (and that maybe they shouldn’t be representing them at all?). So GS responded and apparently made some changes, but I don’t think it ingratiated GS with 37signals.
Nils Kollandsrud
on 28 Jan 10As for who should decide if the question is answered, I would suggest the following:
1. 37Signals marks the question as answered (but it doesn’t show as answered yet)
2. “37Signals Answers” sends an email to the OP with the text from the “Answer”-post and explaination that the question will be marked Answered, unless the user clicks on a link to the question and makes a reply
3. 24 hours later “37Signals Answer” marks the question Answered unless the user clicked on the link and left a reply disagreeing the “Answered” part
DHH
on 28 Jan 10Nils, neat flow, but way too much software for what we were trying to do here. We were trying to put out a new, better forum in 10 working days. Completely eliminating the likelihood of a “false” answered flag just isn’t worth any of that development.
Nils Kollandsrud
on 29 Jan 10@DHH: Fully agree, I was just suggesting a solution to the “problem” seen by other posters.
However, I would think that sending a notification to the OP via email when a question is answered would be nice. It works wonderfully in Basecamp (with messages and comment notifications) and it would be nice if “37Signals Answer” sent a notification to the OP when a solution is posted. I haven’t had any questions yet to ask so maybe it already works like this :)
Gene Crawford
on 29 Jan 10@DHH @JF – You don’t need me to tell you you’re right in the way you’ve handled the ‘answered’ thing. But you are, reading through just a couple just now on answers it’s clear to see that a question about some function of basecamp devolves into a feature request rather quickly. I can tell simply by looking at the thread when you’ve jumped in to answer and typically I have no need to read the rest of the thread, which clearly is just people asking for your products to do more.
Probably good for you guys in getting ideas for possible upgrades, but functionally useless in a forum for ‘answers’. Good call.
JF
on 29 Jan 10However, I would think that sending a notification to the OP via email when a question is answered would be nice.
We agree and we’d like to add that down the road. But it wasn’t essential for launch.
Roro
on 29 Jan 10I have seen 2-3 comments about if you are going to release somedays, a version of it, we can use for our business?
This is to come?
or not all?
Best, Roro
This discussion is closed.