ROS Resources: Documentation | Support | Discussion Forum | Service Status | Q&A

ROS Projects Category

Continuing the discussion from ROS Live 2016/4/19: Agenda:

As previously suggested, I’d like to propose a Category for users ROS Projects:

I already have an open pet project I’d like to share and gather feedback as well as further collaborators for. This is perhaps something outside the scope of a simple question on ROS Answers, and I think a new Category on this Discourse site would be great place to start with.

Perhaps some open questions:

  • How might we structure it?
  • Is it possible for users to create sub categories to house discussions about a common project?
  • Should tags (or some other meta info) be use for this instead?

The way I imagined it would work is using subcategories. These can’t be created by users (at least by default) [as opposed to tags, which can], however perhaps that is a good thing as I imagine we don’t want the sub-categories (or tags) cluttered with projects that receive less than a page or two of replies. It should be easy enough to get hold of a moderator and ask for a sub-category to be created as and when needed.

This is what discourse has to say about tags:

Tags are a useful alternative to categories for some forums. For example if you were running a music forum, being able to tag a topic as “Hip Hop” and “Electronica” would be useful. If you were using categories you’d have to choose one or the other.

Which also makes me lean towards using sub-categories, as I can’t imagine a topic being posted to more than one project.

Here’s some screenshots of how the two mechanisms work:


Tags can be selected from a drop-down scrollable menu on both the Categories and Latest page:

You can also select a tag from any list of topics:

This is what the page looks like once you’ve selected a tag; note that you can simultaneously narrow a tag selection by sub-/category and that you can also see which category each post comes from in this list of topics:


Similar to tags, sub-categories can be selected from a scrollable list. However, you must first select the category from the Latest page:

Then select the sub-category:

This list of sub-categories cannot be accessed from the Categories page. Instead, the sub-categories show up beneath their respective category:

15 sub-categories are displayed above, which is also the total number of subcategories the Local Teams category has. I’m assuming discourse takes a sane approach to this (as opposed to displaying an infinite number of sub-categories on the Categories page), but I’m not sure. Perhaps we should check.

You can also select a sub-category from any list of topics:

Each sub-category must have a different color to its parent category. Discourse displays both colors when looking at a list of topics (as above) so that you know the category is actually a sub-category.

This is what the page looks like once you’ve selected a sub-category; as it doesn’t also have to display the category of each post, the appearance is slightly less cluttered:

A final point to consider is that it is not possible to create sub-sub-categories in Discourse (as far as I’m aware).

For reference, the tag screenshots were taken from Twitter’s discourse and the sub-category screenshots from Ubuntu’s.

1 Like

Looks like the idea of sub-sub…categories in discourse was strongly debated but will most likely not be forthcoming anytime soon:

I’m not sure how discourse handles large numbers of sub-categories, i.e. visually in the listing or menu UIs. A related topic that considers an extreme amount:

It looks like subcategories can be reordered, so I imagine they could also be omitted from a “top listing” view?

Think we may want to formally reach out to Discourse support about the last two points specifically for our use case.

Over all, I like the use of subcategories for designated projects, and then tags within it. And if a project grows so large to require sub-sub categories, then perhaps it would be time to bump it up to a normal category anyhow.

I really like the idea of a “Projects” category. There really is no other place at the moment to discuss cool projects or project ideas and get feedback / find people willing to participate. So I’m all for creating that category. Perhaps we can defer the question how to organize it once that becomes a problem.

tl;dr I suggest we consider creating a “Projects” category where new projects can be proposed and ongoing projects can provide periodic status updates.

I like the idea of having a forum for gathering interest in pet projects etc. I hope that we can provide a better way for people to engage with the community and both share what they’re working on as well as find projects that might be of interest to them.

If we get enough interest in any topic we can easily create a category or sub-category. Following the model of the SIGs of past, If you can gather enough interest from the community announcing a new special interest group, then the mailing list was setup and the people who +1d it joined.

One of the critical things to keep in mind when creating categories is that they are the easiest way to filter emails which was one of the feature requests for ros-users that lead us to choosing discourse as a forum. If we create too many categories it can again loose discoverability…

I’d suggest that we consider a category such as Projects where project status updates and new projects can be posted. They can be tagged by project name potentially for filtering.

This will provide a stream of updates that people can opt into or out of relatively easily. And if they choose to browse it’s relatively easy to scroll through all the projects or filter based on tags. Note, the ability to easily filter also means that we don’t need to worry about filling up inboxes. If a category is expected to be high volume we should expect that many people will unsubscribe. That’s not to say that those things are less valuable, but we want to segregate the high volume categories from the lower volume ones to which we want people to stay subscribed.

As general design, I think that it’s important to keep this as a general forum which the community uses to coordinate. I’m saying this, as opposed to day to day development discussions. Once a project is established it should have their own venues for communicating day to day development discussions. There are a lot of other tools some instant messaging, as well as mailing lists, or forums for the specific projects, not to mention issue trackers and review mechanisms. Those discussions are important, but as we’re following a federated development model we should not seek to centralize all communications.


There were a couple of points Tully made that I was a little confused about so I PM’d him to avoid spamming everyone, but I’ll try to summarize quickly [quotes are from Tully]:

Unfortunately the default is either subscribed to all, or subscribed to nothing. For backwards compatibility we’ve selected subscribe to all to make it more like a mailing list . Then the user can downselect.

I didn’t realize this. I thought I was just getting emails because of the feature where you automatically track a topic if you’ve spent a few minutes reading it. It’s a little confusing because my profile also doesn’t say that I’m subscribed to any categories :confused:

Unfortunately, you can’t unsubscribe from email updates by tag, only by sub-/category (as far as I’m aware). As the default is subscribed to all, it might be better to use sub-categories for projects that warrant it, underneath the Projects category. This way, anyone that wants to unsubscribe from a few projects in particular can do this without unsubscribing from the entire Projects category.

It’s a little extra overhead to ask to create a subcategory but that’s probably not unreasonable. We just need to setup a mechanism for proposing, ratifying, and creating these that’s easy to follow and for the moderators to execute.

I’m happy to go with Tully’s suggestion of following the model of the SIGs, with somebody suggesting it and others +1’ing. It could be that a project’s need for its own sub-category will be self-evident from how busy their original thread is? Personally, I’m inclined to vote for Martin’s suggestion of just getting on with it and figuring out the process the first time we need it :slight_smile:

1 Like

I’ve created the ROS Projects Category lets give it a try. If we need to evolve more processes we can add them to the sticky post at the top.

1 Like