Discourse’s Third Birthday

Jeff Atwood February 5, 2016

As of today, it’s been three years since we launched Discourse as a public project.


How time flies when you’re having fun! As birthday present, I’m pleased to announce that as of this morning – literally, this morning – we now own our domain name:

The domain was previously owned by Educational Testing Services, aka the non-profit company behind the SAT and ACT college entrance exams. If you’re curious what used to be there, check out the wayback machine. That domain went permanently offline in 2006.


We’ve had no issues with being for the last three years, but we’re proud to now carry the concept of Discourse forward on the web under the hallowed dot-com banner — free, modern open-source discussion software available to any community that needs it.

12 Replies

A Year in Discourse – Recap of 2015

Erlend Sogge Heggen January 28, 2016

Discourse is a large open source project buzzing with activity, so a lot of cool things happen over the course of a year. Let’s look back at 2015 and pick out some highlights.

Our Most Popular Topic of 2015


The most viewed topic of the year was The State of JavaScript on Android in 2015 is… poor. At 200+ replies and lots of first-time – and drive-by, but nothing wrong with that – posters, the single-threaded conversation stayed the course just fine, and the opening article was enriched many times over by insightful replies.

Our Top 3 Topics of 2015


According to our magical Top algorithm (well, it’s magical to me, but the source code is openly available), the top 3 topics of the year were:

1. A beautiful Material Design

@rewphus, one of our favourite design hackers, made the TOPest post of them all this year when he released his Material Design for Discourse.



Mid-2015 the developers decided it was time to put dark themes on equal ground with light ones. Memes erupted and the war of dark vs light raged on for days.


In the end, the lights did come back on as planned. As Jeff said:

Oh god when will the pain ennnnnnd.. I decree darkness is over 5pm pacific time Friday 8/21. So we’ll fix what we can until then.

But with the feedback gathered from the community, the darkness will readily embrace those who seek it.

3. A wild chatbox plugin appeared

“Shoutbox”, “chat widget”, “public stream”… Whatever the kids are calling it these days, it’s a frequently requested feature among Discourse users, so it was an exciting time for all when @gdpelican revealed his WIP Babble chat plugin.

Early demo of Babble

This is the most advanced community-supported plugin around today, and has also resulted in various improvements to Discourse core. We’re thinking hard about ways we can fold real time chat into Discourse version 1.7 and beyond.

Shipping releases like clockwork

Except for putting a bow on it at the very end I have very little to do with the Discourse stable releases, so I’m quite unbiased in my praise for the Discourse team’s commitment to a timely and regular release cycle.

Discourse shipped 3 stable releases this year, with about 30 flagship features between them:

Discourse is moving forward at an incredible pace. Let’s have a quick look at some changelog back-of-the-napkin math.

2015 Changelog Stats

  • 395 enhancements made Discourse even better!
  • 1265 bugs got squashed (hey now, you can’t make a *really* good omelette without breaking a few thousand eggs)
  • 25 import scripts will let you migrate to Discourse from practically any discussion platform.

I could also tell you how many UX tweaks we’ve gone through (204), but boasting such a number makes it sound like we’ve added a bunch of stuff, when the truth is we’ve been slimming things down.

Here’s Discourse in late 2014:


Here we are at the end of 2015


  • Star bookmarks: Gone!
  • Tiger stripes? Adiós!
  • Notifications button? Keep lookin’

All of these UI simplifications are based on community suggestions, or customer CSS customizations that we liked so much that we felt they belonged in the core. We’ve tried to strengthen our commitment to simplicity as we go.

Discourse is becoming leaner and meaner more conducive to civilized discussion with every passing year. We also got a bit rounder around the edges.


For now, I’m taking the easy way out. Behold!


Including the Discourse core team, I count 34 unique contributors for the year of 2015. That doesn’t include the many other repositories we maintain, though. We can also boast:

Sweet, glorious praise

2015 also marked the initiation of our praise category. Since its opening in June, we’ve been gratefully receiving a new pat on the back practically every week.

This one’s my favorite so far:

First off, I was designated to find an application for internal work that allowed good fluid search features with ease of use and the capability to store documentation for training purposes. I went through something like 14 different applications and it was really a mixed bag of rocks that just didn’t quite mesh up to what we were looking for. Then a friend of mine pointed me in the direction of Discourse and to be honest I was a bit hesitant. It was a forums format, but not. It was different and that’s hard to sell to your boss. Ultimately I scrapped all other instances and soon found myself knee deep in the configuration of Discourse and I never once looked back. It fit everything we needed perfectly.

Secondly, when I had my first issue I didn’t know where to go, but coming here it was super simple to instanly find a fix and if I didn’t find it I could post my issue looking for help and both @codinghorror and @sam have been there within hours of my post helping out with quality info or a way to fix it.

So my hats are off to you two gentleman for somehow being able to keep up with the influx of bugs and continuously updating your superb software platform. Your dedication to your users is by far the best experience I have ever had.

Again, thank you for your superb work, you guys are the best in the business as far as I am concerned.

Thank you for choosing Discourse! If you haven’t tried Discourse, now is a great time to try our easy 30 minute install, or take advantage of our free hosting trial.

Here’s to a great 2015, and an even greater 2016. Take a peek at some of the things coming to Discourse with 1.5 and 1.6 in our releases category.

Got some ideas for other other interesting (and not-on-the-back-of-a-napkin) stats? Tell me all about it in the comments.

4 Replies

How Coinbase Uses Discourse to Educate Customers and Improve SEO

Erlend Sogge Heggen January 12, 2016

As part of our ongoing series of interviews with customers, our latest is with John Mardlin who helps traders, devs and humans use bitcoin at Coinbase — partly through their Discourse-powered


What is Coinbase?

Coinbase’s mission is to make bitcoin accessible for normal people. Our core product is a wallet with +3MM users, which enables buying and selling of Bitcoin in over 30 countries (with more coming soon).

We also offer a range of services that are enabling the bitcoin ecosystem to flourish

  • the Coinbase Exchange for active traders and institutional investors
  • a powerful API for easily building bitcoin applications
  • payment processing tools for merchants

The company was started in 2012 by Brian Armstrong and Fred Ehrsam, and has grown to a team of over 120 people. Our investors include the NYSE and A16Z, and we service companies like Overstock, the Wikimedia Foundation and Expedia.

Why did you decide to build a community forum?

We launched our Discourse Community in January 2015. Before the launch, the whole support team pitched in to build out content on the community. The primary impetus, honestly, was to reduce the volume of support requests coming in through email, by making more answers publicly visible. It’s definitely helped with that, and had a lot of other beneficial side effects as well. In particular, the SEO benefits of allowing customers to ask questions and find answers using their own words.

Your community caters to a trending yet complex topic (Bitcoin). How do you deal with common queries & duplicate questions?

I replaced the stock Discourse FAQ with a very thorough, customized FAQ which addresses the questions we see the most. Just like the standard Discourse Guidelines, each heading has an easy to remember ID property for easy linking.


We still get repetitive questions, but I like to think the redundant posts just provide a new set of keywords customers can use to search for their answer.

Speaking of newcomers, your community ranges from first-time bitcoin users all the way down to bitcoin developers. Do you find that there’s some cross-pollination between these usergroups?

Yes. I really love seeing a community member stepping up to help out newcomers with general questions about bitcoin. It really helps us do our job, and it’s a clear signal of their enthusiasm for what we’re doing.

On the other hand, the general customer support topics in the forum can be quite noisy, so I feel the need to protect advanced users from that noise. Ideally, our Developer, Merchant and Exchange categories will feel like communities within our larger community, where these advanced user can discuss shared topics of interest. I really like the way that StackExchange and Reddit approach communities by creating distinct communities within them.

You have a knowledgebase that’s backed by a traditional 1-to-1 support ticket system as well as your community forum. How do you balance the two?


It took us a while, but I think we’ve managed to strike a good balance between content on the knowledgebase (KB), and content on the forum. Articles in the KB give definitive answers about common product flows, and statements on policies. These KB articles feel more authoritative, and less mutable. This is complimented nicely, by the forum content, which is more conversational, and provides answers to the questions we could never have anticipated. Over time the KB and the Community have become increasingly interconnected. For example: each KB article has a big button requesting feedback on the content. The button links to a corresponding (hidden) forum topic, where customers are encouraged to provide feedback which we use to improve the quality of the article.


Another “synergy”: whereas the KB articles are written using our own internal product lexicon, the forum gravitates towards the words that an uninitiated customer would use. So a KB article might be called “payment methods for US customers”, but a customer might be more likely to ask about “How to deposit dollars to a coinbase account”. When the question is asked in those words on the forum, the information becomes more easily discoverable to customers who use similar words for a google search. After a year of amassing content, we’re just starting to see our search engine traffic really take off.

A community built around money is bound to attract malicious actors. What kind of safeguards do you have in place to protect your users?

Our biggest concern is with phishing attempts to gain access to our customer’s Coinbase accounts. To prevent this, we prevent new users from posting links. This isn’t really the ideal new user experience, and it means we have to be really on top of the moderation queue to quickly approve posts by well intentioned new users.

What’s your favourite type of interaction on your forum?

I really enjoy seeing the community members that keep coming back throughout their journey with Coinbase and Bitcoin. Whether they’re developers starting out with our APIs, or just customers new to bitcoin, it’s gratifying to see them returning, asking questions, sharing their projects and offering help to others.

Also, what types of interaction are you hoping to see more of on your forum?

More meta stuff; with people who came because of a shared interest in Coinbase’ products, branching out to topics that aren’t strictly about Coinbase. I want Devs to talk more about their projects, I want traders to share more tips and advice about their strategies, and I want more people to talk about current events in Bitcoin in general.

You’ve opted for Categories as your landing page. Why is that?

We cater to a broad group of distinct user groups who typically come to the forum with a specific question in mind. Developers new to the forum aren’t terribly interested in basic support questions, and Wallet customers aren’t interested in API questions. It seems unlikely that the 15 most recent posts would be relevant to a given user. The categories page is less noisy than latest topics, and enables a new visitor easily reach the kind of content they’re most interested in.

You’re about a year in, so what are your likes, dislikes, and suggestions for Discourse?


  • Custom badge SQL queries. I just finished a Udacity course in PostrgreSQL, so I’m looking forward to making much more use of them to reward great community members.
  • The UI is awesome for power users. I love working in Markdown, and the shortcut keys both for text editing and navigation are easy to learn and use.
  • The mobile experience is excellent, even for advanced moderator actions.


  • It’s hard for staff to retrieve an email address. We regularly moving a conversation from the forum to email. Every time we do, we have to visit the user’s profile page, and click “show email”. I’d love to see an API function for getting the user’s email address.
  • If a post on a topic can be “unread”, why can’t I mark it unread again after reading it?
  • When I approve a post in the moderator queue, I often want to respond to it right away, unfortunately it disappears and there is no “recently approved posts” list to help find it.


  • A setting to have a topic present all comments as nested. This would be great for enabling an “Ask Me Anything” (AMA) format.
  • Richer badges, and metrics to incentivize participation like Stackoverflow.
  • This one is more of an epic than a feature… but I want more helpdesk like functionality. ie:
    1. Statuses for OPEN (needs action), OK (we’re good here) for topics.
    2. Ability to assign to other staff members.
    3. A queue for tracking new posts where we can quickly apply these statuses on topics like “new”, “open” (ie. needs a response from staff), closed (“our job here is done”) or OK (“we’re not needed here”) statuses. Several features are halfway there, like the “solved” plugin, and tags, and bookmarks, but applying them to this use case is ultimately shoe horning.
    4. A function to allow mods to attach a note to a thread for one another to see.

What is one of your fondest forum memories?

It took me a lot of thought to come up with this, but once I did it was pretty obvious. When TED first started opening up its brand and format to allow for independently organized TEDx events, I was pretty quick to get involved, and start organizing my own event, which eventually grew into TEDxVictoria.

A beautiful, large venue offered me a great price on a space with capacity for 400 people, but TED had a rule that capped attendance at an event at 100 people unless the organizer had attended an official TED event. I posted a question on the organizer’s mailing list looking for advice about how to make the most of a big space with a small audience.

What I got instead was a direct message from a member of TED’s staff offering me free attendance at the TEDGlobal 2011 conference in Edinburgh. I had been quite active on the list before that happened, trying to help out and share ideas with other organizers,… so I guess this is just an extreme example of the unexpected benefits that can be derived from helping others solve problems on the internet.

Thanks to John for taking the time to answer all of our questions. If you’ve ever been curious about Bitcoin or cryptocurriencies, Coinbase is a great place to start!

8 Replies