NodeFly Buzz: NodeBB
Every two weeks NodeFly continues in its mission to spread the word of Node.js and how incredible it is. We do that by profiling cool, interesting and fun uses of Node.js in various products and projects.
Today we are scoping out NodeBB, which calls itself the Discussion Platform of the Future. We like bold statements like that, so we reached out to NodeBB’s team of three: Andrew Rodrigues, Julian Lam and Barış Soner Uşaklı.
NodeFly: Tell us about NodeBB. Why is it the discussion platform of the future?
Andrew: It feels like forum software has been evolving slowly; web 2.0 features that are almost standard across modern software just do not exist on older forum platforms... at best these features seem tacked on. We haven’t seen much progress in responsive forum layouts and its quite evident to anybody doing a simple Google search for any given topic and running into a forum website. It’s ugly and impossible to maneuver without pinching and rotating ad nauseum. We believe that starting fresh with a clean slate will allow us to build a modern platform that will hopefully help shape forums of the future.
NodeFly: Can you walk us through the early genesis of NodeBB? Did the Node.js portion come first, or the BB?
Andrew: We definitely had a passion for forums in the first place. I personally spent several years developing modules for phpBB, and we realized one day that maybe we could try to build something better than the platforms we were using. I guess the NodeBB name is kind of a tribute to phpBB from a lot of fond memories in that space. From that point on I think Node.js was an obvious choice for us given that we were primarily Javascript developers.
NodeFly: What made you decide to go with Node.js as the foundation of this platform?
Julian: Node.js was a great fit as a platform for NodeBB because it allows us to really produce something groundbreaking in the realm of forum software. The forum ecosystem is already a crowded one, but they all happen to run on the LAMP stack, or a similar variant. Our deciding factors were the performance benefits offered by Node, as well as the amazing community, both in terms of feedback, and in terms of the wealth of modules available to use.
NodeFly: Did Node.js bring any problems that you had to solve?
Julian: The biggest problem was (and still is) adapting our programming style to Node.js “standards”. Coming from a PHP/js background, there is a bit of a learning curve, but once you understand the basics (such as event loops, etc), everything else becomes much easier. There are user-created modules for doing virtually everything, so in many cases, our development time was reduced. The PHP community is already embracing the idea of re-usable modules through programs like composer or bower, although the DIY mentality is still well-ingrained, and new programming practices are just chipping away at the monolithic iceberg that is the PHP development methodology. We found that using Node.js was like a breath of fresh air.
NodeFly: Our users are definitely curious about how things are built and how performance is monitored. Anything you can share in those areas?
Barış: NodeBB in particular was built following aspects of the lean startup mentality. We built a minimum viable product, and have recently begun iterating on user feedback, in order to build a product that users want, not a product that we think users want. Luckily for us, our feedback tells us that we’re on the right track! In terms of performance, we are still actively looking for a system simlar to blitz.io, but we have not found a comparable solution yet, especially one that can reliably benchmark websocket performance.
NodeFly: You currently have an Indiegogo campaign going, right? Why did you go this route?
Barış: NodeBB is open source and free to use if you want to host it yourself. To further develop and add more features we went the crowdfunding way. Crowdfunding also means backers will be able to help in shaping the product which is very important for us. We want to build a product that people will want to use.
NodeFly: We are stoked to hear you say NodeBB is free and open source. How did you come to this decision?
Andrew: We believe by open-sourcing NodeBB we can create a better product which in turn will be used by more people. Wordpress went the open-source+SaaS way to great success.
NodeFly: Finally, anything you can share in regards to future plans for NodeBB or Node.js in general?
Julian: Right now, NodeBB is an open-source project that anybody with the technical know-how can set up. We want to go one step further and allow anybody to set up a forum at the press of a button. To that end, we’re working on releasing a software-as-a-service web application that will be tightly integrated with our hosting servers, so clients can focus on customising their forum and building their user base, while leaving all of the technical set-up and maintenance to us. The free and open nature of NodeBB allows anybody to customize and contribute back to the project, and we’re always in need of Node.js developers to proofread, extend, and awesome-ify our code, so if you like what you hear, join the project community!
Thanks to Andrew, Barış and Julian for their time. You can check out their Indiegogo campaign at this link and then scope out their web site for more info about NodeBB.
http://www.nodebb.org/
Do you know of any cool, creative and fun uses for Node.js that you think we shoulde profile? Just email us at [email protected] to let us know. And if you want more NodeFly Buzz you can search our blog for more articles at http://blog.nodefly.com.
Building your own awesome Node.js product? Then use our dashboard at http://www.nodefly.com to monitor it!








