Vanilla forum software


Hi, among the hats I wear is adminstrator of the forums on We’re thinking of switching from SMF to Vanilla, and Dan Fabulich popped in to say that you recently switched away from Vanilla in favor of Discourse. I found an old thread talking about it, but I wondered if you could fill me in on some of the specific problems that happened with Vanilla so we can try to avoid them over there… or (hopefully this is not the case) we should run screaming away from Vanilla.


It’s not even been a year and I can’t even remember much about Vanilla anymore. I found it annoying at the time, but I use a desktop and was far, far more used to other style forums.

There were some features of Vanilla I like a lot more than Discourse. I like that there’s pages in threads as opposed to just endless scrolling. (The scroll feature here glitches on my tablet which is really frustrating and makes some threads unreadable.)

The most annoying thing about Vanilla, that I can recall, is that every so often I’d accidentally hit ‘reply’ on one of the you’ve received a private message emails and send said private message to the forum administrator, instead of to the person it was intended to. That was really, really embarrassing.

The amount of unread private messages I had button broke and kept telling me I had an unread message when I didn’t, which was really annoying. The google and twitter logins broke.

I think it was annoying posting code there. (I can’t remember rightly).

There were huge amounts of spam that I needed to deal with as a mod, and a lot of spambots seemed to get through the first line of defence, and I didn’t have the same tools to deal with spammers as we do have here. There’s far, far, less problems now.

The forum software forced you to pick a gender, between male and female, when signing up. (Looking now though it looks like there’s also an unspecified option, and that you can also remove it entirely by fiddling with the css somehow.)


I remember that with Vanilla, you could only edit your posts until half an hour after you posted them. After that, they were stuck that way forever. It was pretty frustrating.


Oh yes, I forgot about that. Being a moderator I didn’t have the same limitations but I’d have to edit people’s posts for them if they asked.

You also couldn’t delete your own posts, there were a number of times, before I was a moderator, that I really just wanted to delete what I’d said and couldn’t. Or I’d want to rephrase something, and I wouldn’t be able to do that. It makes for more work for moderators.

Also if people get annoyed, say something spur of the moment and then regret it they can’t take their words back and then other people can get upset too.


As an administrator, my main problem was that Vanilla didn’t offer a good way to block spambots. We set the forum to require a moderator’s approval to post, but that sucked. It sucked for the obvious reason that new users literally couldn’t post at all until a moderator approved them, but also because the spam bots would clog the approval list with spam requests to join the site.

It was hard to even tell the difference between a spam bot and a regular user in that approval form, so we often accidentally rejected legitimate new users.

I tried to fix this by adding an easy CAPTCHA to the registration form, but it barely helped, and anyway the CAPTCHA was kinda broken.

Discourse has great features around spambot and sockpuppet detection. Sockpuppet detection is really important because when we banned a user on Vanilla and he just re-created a new account, we had no choice but to require moderator approval on registration. Here, Discourse can detect banned users and stop them. This allows us to let new users post here, and that’s been a big help.

Discourse also has great support for Flagging posts that need moderator attention; moderators can discuss these flags privately as needed and take lots of different kinds of actions on them. Trusted users can flag a post as spam and it can be automatically hidden; if the user abuses it, the user will automatically lose the system’s trust.

The last straw was when our self-hosted Vanilla forum was hacked. It was my fault; I missed a Vanilla security email. But we’re a business, and so I decided that we needed to switch to hosted forums. wouldn’t let us even install the CAPTCHA restriction we were using, so we were looking forward to even more miserable spam problems, and that’s when I started asking around and settled on Discourse.

The biggest drawback of Discourse is that the infinite scrolling thingy is mandatory. I like it, but obviously some people don’t, and I do wish there were some way to let people turn it off.


As Dan said, spambot fighting is super easy now as opposed to a major annoyance. (Although to be honest, I’d be a lot more broken up about us having rejected legit users because they couldn’t follow a simple request). But still, the ‘wait until someone gets to you’ probably drove off more than we’d like. I know sometimes I checked it had been close to a full day since someone had gone over the approval list, and there’d be one legit user for every twenty spambots.

Since the switch though, I usually get an e-mail within less than a minute of a spambot first posting, and by then the spambot is already hidden and it’s just a one button deletion. And since switching, we’ve only had one case of someone accidentally triggering the spam filter, and it was just as quick to turn off. (And they were over-posting the same content anyways).

Again as Dan said, the Flagging system. To actually expand on what he said though, it also allows us to see both problem users. We can check a lot of stuff happening in the background, and it’s all pretty well referenced, so at a glance we can tell a lot about a users’ history. Two users with nearly the same number of posts are now easily split apart if one has a bunch of helpful flags while the other has had to have a lot of their posts deleted.

Leveled Users/Badges/User Groups is a nice one that I think gets over looked. Can easily share things in the same line, but only for certain users. @jasonstevanhill starting to put it to use, and might be able to say more, IDK.

I do have to disagree with @FairyGodfeather about the syntax used for posting code. Vanilla used html, while Discourse uses it’s own markup. I much preferred Vanilla in that case, as I could do anything I want with html (within the confines of what was allowed), while I always end up having some degree of trouble with Discourse’s markup. However, that’s a relatively minor gripe compared to everything else.

Oh! And saved posts. I don’t have to copy/paste a post to notepad to save it. While writing this post, I got a message of a flag, clicked it, and it took me to the page to handle the flag, while allowing me to keep writing this post at the same time. A minor thing, but there are a lot of minor niceties like that.

@dfabulich By the way, was it the port to self hosting the broke Google logins with Vanilla?

Edit: Oh yea, and live updating. Everything you see on sight is how it was made within the last minute or so. No having to refresh to see if anyone has posted something in the meantime.