Which categories to create in the site

Greetings! I created this site in response to to a thread on the Caml-list requesting that the beginners group be moved on from Yahoo.

As such, there are a few sub-communities in OCaml that have expressed interest in using a modern, asynchronous, discussion mechanism. So now that this is setup, we need to figure out what categories to setup, and who will administrate them. Please free to comment on this, and I will edit this post as the discussion evolves.

We should use just a few categories to start with, and split up busy topics at a later date. Having said that, some structure is useful, and these initial categories are being set up. Bear in mind that we can rearrange all of this while the site is in beta.


Still being discussed

  • Libraries: does it make sense to let library authors create sub-categories for people to discuss the use of their code? For example, I would quite like one for the Cohttp ecosystem, and a JavaScript one (include jsoo and Bucklescript) would be useful.
  • OPAM: as opam2 is round the corner, this could be a good place to post higher level updates on the OPAM repository and bigger package updates.
  • Multicore: @kayceesrk would like an area to discuss multicore OCaml developments.

Not being done at the moment

  • Infrastructure: to replace the existing (and underused) infrastructure list. This one is too vague at the moment so we will come back to it when the rest of the forum settles.
1 Like

Multicore category would be useful.

“build” — all about build system
"compiler" — OCaml compiler development
"ReasonML" — for ReasonML community
"web" — all about using OCaml in web programming

It turns out that categories can also be nested, so designing some top-level ones with sub-categories might be the way to go.

For each of the categories, it would be good to have a primary contact to help move their respective communities over to this forum, and to generally keep an eye on the discussion. @objmagic: any suggestions for contacts for yours?

Having a build category seems great, with maybe jbuilder as a sub-category? Jeremie Dimino seems like the natural contact for the jbuilder one, if the sub-categories are deemed worthwhile.

A build category would seem to be very useful right now. I think having sub-categories for that does make sense, as we could propose:

  • build/ocamlbuild @gasche
  • build/jbuilder Jeremie Dimino.

And of course any other build system maintainers who would like a discussion forum for theirs.

I wonder where Windows support goes in all this. Rather than a Windows category, it might be better to discuss Windows support for build in the categories above.

A category for Mirage and it’s ecosystem

1 Like

I’m currently trying to create a “build” topic, but apparently topics need to be 15 characters at least!

Is it topics or categories that we need here? I created a topic:


But maybe that’s the wrong thing?

Topics are equivalent to threads. So, we want categories in this case.

Hm, I would love a Mirage category; I wonder if this would make sense as a sub-category of “libraries”? (can we come up with a better name for that other than “libraries”? For example (assuming that Ocsigen is interested):

  • libraries/mirage
  • libraries/ocsigen
  • libraries/core
  • libraries/reasonml

ReasonML doesn’t quite fit under this scheme, and Mirage also has front-end tooling and so isn’t a library. Perhaps it’s best to leave these as top-level categories since they are major efforts in and of themselves.

1 Like

@Yaron_Minsky it should be possible to move your new topic into a fresh category when it’s created, so this just lets us experiment with that functionality.

What’s the interplay between categories and tags? I guess categories are hierarchical, and every topic is in at most one category? And tags are, well, tag-like? i.e., simple identifiers, any number attached to any topic? (or is that per message.)

I like the libs idea. I don’t think reasonml fits there. Maybe Reason just needs its own toplevel category?

1 Like

Yes. Mirage, Reason and BuckleScript look like top level categories to me.

1 Like

Bucklescript I would probably put under web: web/bucklescript, web/js_of_ocaml, etc.

How do we actually create categories? I see no buttons to click to do this, but maybe that’s not something that’s freely available?

It’s only available to Admins and Moderators. It has to be configured first though.

Some advice from the Discourse docs:

Don’t create too many initial categories, as you can overwhelm your audience. You can always add more categories, and easily bulk recategorize topics later. It’s better to figure out the organization as you go rather than assuming you’ll get it all right from the beginning (hint: you won’t).

which seems like sound advice.


Rather than design the structure upfront what about having very broad categories and create subcategories on the fly once people get tired because a topic comes too often and it feels noise to them ?

I’m saying this because we created quite a few focused mailing lists on lists.ocaml.org which are essentially dead.

1 Like

Agreed with this and @Yaron_Minsky’s note from the Discourse docs. I’ll start by creating a ‘build’ category, and a ‘beginners’ category.

1 Like

I definitely agree about not just doing a frenzy of category minting, and I like the idea of peeling things off as you go.

But that doesn’t mean we should start with no structure. A good starting point might be existing things that we want to migrate here. The Beginners mailing list is a clear example, as @avsm noted. Also, it seems like migrating the Core mailing list here would make sense.