Proposal: turn channels into tags (and groups)
cross posted to https://github.com/ssbc/patchwork/issues/438
The current channel system has a number of problems, where it is somewhere between groups and tags. But not really very good at solving either problem.
The question keeps coming up "how do I add multiple channels?". And it would be really nice to have channels that had some kind of identity outside of its text name (a key).
So I propose we turn what is currently channels into tags. That is, existing posts with channels will count as having a single tag (the
channel name), and new posts will use channel mentions (#hashtags) to determine their tags (and maybe set the first tag mention as the
channel for backwards compat reasons).
Tags can do virtually everything that our existing channels can do and more. They'd also be much easier to understand.
Once we get "groups" or something similar, I think patchwork gets taken to the next level where suddenly it becomes possible to use it instead of something like slack. Non-group chat becomes general social network stuff. And groups become like subreddits or slack rooms, each with (potentially) a whole unique community associated.
Some thoughts about groups:
They wouldn't have to be private (or require membership) for this to be useful. Just need to be able to assign an actual ID to groups (maybe based on the id of a
type: 'group' message) rather than them being text based. This would allow people to rename groups with about messages
It would also solve the problem of name conflicts (e.g. #ferment for music vs #ferment for umm.. sourkraut!)
Also maybe following a group would be like following a pub in that you replicate the other members of that group.