Skip to content

Instantly share code, notes, and snippets.

@freeCodeCamp
Created March 9, 2015 22:05
Show Gist options
  • Save freeCodeCamp/2cb974ccf1c91e617172 to your computer and use it in GitHub Desktop.
Save freeCodeCamp/2cb974ccf1c91e617172 to your computer and use it in GitHub Desktop.
An Overview Forum Tools, and Why We Built Our Own
Our chat rooms are a fun place to hang out, make friends, and get fast help. But we've always wanted less syncronous place for our campers to discuss articles and share their projects.
We're Pragmatic Programmers, and wanted to avoid Not Invented Here syndrome to the best of our abilities. So we tried the following:
Reddit Subreddits
Pros:
- Easy to create.
- Free and managed by Reddit.
Cons:
- Filled with distracting buttons and ads.
- Requires a Reddit login and password.
Discourse
Pros:
- Tons of features and a powerful admin panel.
- Automatically backs up images and nightly database dumps to AWS S3.
Cons:
- Requires Ruby on Rails knowledge to customize and maintain it.
- It's slow. We hosted a Bitnami Discourse image on a small EC2 instance, and the app just crawled, regardless of how few people were using it.
NodeBB
Pros:
- Written in NodeJS
- Gets better every day thanks to an active development community
Cons:
- Doesn't well with Heroku and MongoDB.
- Does a lot of things, but none of them particularly well.
Telesc.pe
Pros:
- Nearly identical functionality to Hacker News and Reddit
Cons:
- You have to use Meteor.js to customize and maintain it
- Doesn't run on Heroku
In the end, none of these systems were satisfactory, so we decided to build our own system. Doing so had the following immediate benefits:
1) Campers can start posting and commenting immediately without having to leave Free Code Camp or creating extra logins and passwords.
2) Campers will generate a ton of data that we can analyze to make Free Code Camp a better place to learn to code.
We wanted to stay close to the conventions popularized by Reddit, Product Hunt, and Hacker News. Our main departures was limiting all comments to 140 characters. Short comments are faster to read and less intimidating to write. They encourage you to make one clear point, which makes it easier for others to respond to you.
Check out Camper News here. We look forward to reading your content and comments!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment