Awareness for path dependencies when setting up a discourse forum

One of the most time consuming tasks for someone setting up a new forum with discourse is to figure out which decisions need to be made immediately (because it’s difficult or impossible to change them later, i.e. they create path dependencies) and which things can be left for later. I am starting this thread with the aim of creating a list of path dependencies in discourse.

Here are two examples which I have yet to research, one “big decision” and one very minor decision:

  1. It seems obvious to me that it is a good idea to use Amazon S3 storage to store uploads and backups once the forum reaches a certain size and if people are posting a lot of pictures or the like. But do I need to set that up from the start to avoid migration problems of can I just leave things as they are and once I move to S3, it’s not a big deal to move everything over?

  2. In admin settings under Posting, there is a setting called “max reply history” indicating the “maximum number of replies to expand when expanding in-reply-to”. By default it is set to 1 and I can obviously increase that number later on. But will this increase the depth of the expanded in-reply-to for all existing posts or only for new posts?

While I’d be happy to receive advice on these questions, their main point is to illustrate the scope of possible path dependencies that an admin newbie might want to be aware of.

Please share your insights and lessons-learned-the-hard-way.

Edit: I suggest you highlight the key points in your reply for easy reading.


I think that most things can be changed retroactively, either in Shell, or the UX.

The only things I would say is think before you start changing default values. If you change a value like “max post length” (default 32000 char) to a larger value, and later change your mind because people start typing “War and Peace” in their posts, then when you reduce it again you’ll have a problem because some of the housekeeping jobs will fall over when they hit the War and Peace posts.

Also, before you go live make sure that you have reviewed and ammended the FAQ to include any rules which are specific to your forum. New users get these as a PM when they sign up, so you might as well get them correct the first time.

Also, If you have a “User Guide” or “Site Announcements” category, be sure to include it in “default categories watching” before you go live. That way, when you go live and you’re playing whack a mole with writing guides and announcing the availability of new features you know that at least the users who haven’t figured out how to change their preferences will see your helpful announcements and guides.


This looks like crucial advice to me. Thanks a lot. By implication, you are saying that once a user has signed up, there is no way of subscribing them to a new category? For the (very realistic) use case you mention (sending out announcements etc) I wonder whether it would not be more advisable to add that category to the “default categories watching first post” setting, rather than “default categories watching”. It took me a while to figure out the meaning of that setting but I think it means that users will be notified about my new announcement but not about any comments to that post.

No, you can change anything you want after the fact if you enter a user’s profile, or ask them to change it (and provide a guide). I don’t like entering a user’s profile, or impersonating them… it’s a kind of invasion of privacy which I avoid if at all possible. I much prefer to write a guide which walks the user through how to make the change themselves - this takes a bit longer to compose, but once it’s done you can point the users to it and say “Here’s how”. This is a lot faster than going in and setting muted and watched manually for each and every user, and… the more familiar your users get with how to work with the system the more likely they are to figure things out and help each other.

The point is: get your default settings and your guides set up ahead of time so that the users inherit them as they arrive, this saves you time and effort.

If you are doing a migration from a different platform (as we did) your migrated users may well spend a while moaning that it looks different, and the buttons aren’t in the same place. The faster they can locate the bit of information which says “On the old system, search used to be here and it worked like this, on the new system, it is here, and it works like this and, by the way here is how you can do a search which wasn’t possible on the old platform.” The faster they can locate that kind of information the faster they will settle back down to Fighting, Feeding, and Fornicating. Having it in place ahead of time means that you can be fixing any problems, and doing PR work.

Our Guide section is Here. This wasn’t in place as we went live, so the first few days were a bit chaotic. I created the category and started writing guides for the most urgent and common questions. Fortunately, I got some buy in from a few users and they helped with creating content, and also just suggesting topics.

I would suggest having the following guides in place (remember, our forum is mostly retired guys and many aren’t all that IT literate):

How do I login/logout tell if I am logged in?
How do I access my profile, brief explanation of the sections of the profile?
How do I change my mail preferences, what do they mean?
How do I tell the difference between a public and a Private message?
How do I create or edit a post/topic?
How do I use the composer?
How do I upload photos/files & what can I upload?
How do I flag a post, contact a moderator?

Try and keep the guides short and use step numbers so that when someone can’t get it to work they can say “I get an error message when I hit “ok” in step 5”


This may also be a decision to consider early on if you are combining discourse with wordpress:

Not that you can’t change it later on, but setting it up the right way from the start will help.

And another one would be: **if you have a sandbox category (or the like), make sure to set it as default categories muted