Groups as sub (or super-) categories: ideas?


(Eric Eslinger) #1

Hey meta-discourse.

I’ve been playing with the secure categories and groups features in 0.9.4 so far, and they’re definitely a push in the right direction. I’m thinking about doing some of my own work with the discourse system (either as a plugin or just working against the main source, depending on whether or not the former is feasible in terms of database migration limitations), but would like to hear some advice / feedback.

Anyway, I’m looking at the forum / social network thingamabob being used over at http://www.ravelry.com as a model. There’s a lot of features that Discourse seems to share with ravelry, but one thing that I’d like to see is public opt-in groups as well as secure groups.

Ideally: a user could browse a list of all groups. Trusted users (or maybe moderators) can create new groups. Each group has at least a category for it (possibly a set of subcategories), and maybe some other metadata displayed on the group’s landing page (group icon, membership gravatar rolls, group definition and rules (which can just be pinned topics). Groups can have different privacy levels: invisible (invitation only), approval-required, or public (anybody can join). As far as I can tell 0.9.4 has some security groups, but those have to be defined specifically by the site admins, and they only protect categories (instead of creating a substitute landing page that a user might opt in to which lists their group memberships)

In part, this is to provide a semi-siloed experience to my userbase. In particular, my users want to group up occasionally (the science teachers discussing lesson plans is a case for subcategories in some way, or overlapping tags) in ways that don’t clutter up the main site or categories view. I don’t want to just create lots and lots of discourses (science.domain.com and math.domain.com), because I only want this to be semi-siloed; there will still be org-wide discussion and plenty of math-science overlaps as well. Again, as an example, check out Ravelry: there’s the top boards that everybody joins, plus interest-group boards like handspinners and sockdown, plus random-discussion boards that have nothing to do with fiber arts.

The point to this long post here is to solicit feedback and advice. Is this something that will be a lot easier in a month or four when some database / interface changes are made? Is it something that other Discourse users have already implemented? I have a userbase of about 300 (so, nice and manageable) teachers talking about all sorts of stuff, and I’d like to provide a better forum than what they have now (which makes phpBB look avant garde) sometime in the next couple of months.


(Jeff Atwood) #2

Are we sure categories won’t work for this?

Alternately, how about private messages, which can be directed to as many people as needed?

There is also a mythical tagging plugin which we will eventually pull into core to meet these “gosh, we’d end up with a thousand categories” scenarios.

Just brainstorming. Not entirely clear what the use case is. Can you provide two specific real world examples, that might help me process it a bit better.


(Eric Eslinger) #3

My specific use case is as follows:

  • Medium sized community (~500) of highly-active users (teachers and teacher educators), fellows and staff associated with a foundation.
  • Community is cohorted by entry year (the 2014 cohort starts in July, for example)
  • Same community is cross-cut by teaching interests (they’re all STEM educators, but with different fields)
  • Same community has some other small groups (the project-based learning subgroup comprises some math and science teachers working on PBL).

I think my issues revolve around organization and discoverability. There’s some clear hierarchy in some of our categories (science contains chemistry), but other overlap (physics is contained by science, but has a strong affinity for calculus, which is contained in math). We want our participants to be able to find what they need immediately (lesson plans, professional development opportunities, and immediate batsignal help for problems encountered today) and to be able to find other interesting areas of participation when they’re less urgent (encouraging math and science teacher to talk to each other when they’re face to face in a room is hard enough, doing it online requires some serious affordance engineering).

examples: Math Teachers mAlice, mBob and mCharles all want to discuss techniques for teaching geometry. Clearly, this needs to go into the Math category, maybe tagged as Lesson Plans (maybe not), maybe tagged with Geometry. They should be able to share and embed various resources for teaching geometry, and ideally a moderator would be able to pick out the best-of-thread posts into a later digest view (or that’d happen automatically as the current discourse model does pretty well)

later on, mDavid wants to read what people are doing with teaching geometry, so this particular discussion thread should be easy to find and read through and participate in. mDavid is definitely a member of the Math “community”, and can enter that category on the site, but how does he track down discussions about Geometry?

Some other discussion had by mAlice et al starts with “how do you do warm-up exercises in your class?”, which is a pretty standard thing to think about - the first five minutes of class are critical. However, one of the foundation staffers (the teacher educators) notices that there’s enough general interest that this would be a good thread to pull into the science community. We want members of both geometry and chemistry subgroups to see this, because those are both 10th grade subjects, and maybe the chem teachers have something to say. It’s stuff like this that makes me definitely not want to break the boards into separate discourse instances.

sAlice, mAlice’s science buddy, actually takes offense at our categorization of Physics as a 12th-grade subject, as she’s teaching in a Physics-First school, and has to deal with 9th graders and all that. She’d like to talk about teaching Physics to younger kids without the strong math backgrounds most physics teachers can rely on. So, she posts to the Science category? The individual discussion of physics-first turns into a broader one, spanning several discussion threads around specific topics in the P1 curriculum. So now we ought to have some kind of organizing structure where people can talk about P1 in a way that articulates with the broader physics community and the broader-still science community.

Anyway, as I write this all down, it’s probably clear that what we really need is some kind of more social-network-esque features in our online community, which is what we’ve been exploring lately. So I don’t actually know if this is a compelling “discourse should do this” story - it’s more of a “somebody should do this” thing.


(Jeff Atwood) #4

Reading this, I was thinking – why have categories at all?

Why not just have general discussions which have appropriate titles, then you can browse and search discussions by title?

Feels like over-categorization, when search should work OK? It’s easy to go in later and add categories (or these mythical tags, though IMO tags are just glorified “search words”) later as needed.


(Ian Carroll) #5

Without commenting on @eric_eslinger’s use case, user owned groups are certainly something Discourse should implement. It is standard on both vBulletin and MyBB and some communites rely on these user owned groups to keep users consistently active. Ideally we could appoint member(s) to be able to add/remove group members and change the group’s visibility.


(Jeff Atwood) #6

I don’t know what “user owned groups” means.


(Ian Carroll) #7

As in, a user can own a group and add people to it without being a moderator/admin (mainly to grant access to any restricted subforums.)


(Jeff Atwood) #8

OK, but groups here don’t do anything per se; groups can be attached to categories.

So are you proposing that users control the permissions of a category? e.g. they could:

  • wall themselves off from the rest of the site (make their category private)
  • create potentially thousands of new user-generated categories

etc?

I’ll also point out here that user-controlled permissions of a TOPIC already exists right now today. That’s private messaging…


(Ian Carroll) #9

wall themselves off from the rest of the site (make their category private)
create potentially thousands of new user-generated categories

Yes and no. They can choose to wall off new members, but the category should always be private, even if you can freely join the group.

I’ll also point out here that user-controlled permissions of a TOPIC already exists right now today. That’s private messaging…

Yeah, but that’s not the goal. The “group” or whatever you’d like to call it would:

  • Have a private category to post topics into
  • Leaders can add and remove members
  • Set their group status to invite only/private (nobody can see it)/open (anyone can join from a dedicated page to groups)
    They cannot:
  • Create more categories
  • Moderate their category

(Eric Eslinger) #10

@ian’s case here aligns with what I was particularly interested in. This isn’t really about searching (from a user’s perspective at least, rather than a database engineer’s perspective) - it’s about having relevant material presented to a logged-in user based on properties of that user.

A user in a certain group or community should be presented with content relevant to that group or community. Tags as search keywords work okay, especially when they generate nice persistent (linkable) URLs like topics/science/tagged/geology or what have you.

It is also about making possible these semi-private conversations, either because they’re really private (only among subroup X of the community (e.g., foundation staff), and not visible to the rest of the world) or just deprioritized (it’s fine if math people see general science talk, or if science/biology people see science/physics talk, but they probably want to focus in on their areas at times).


(J.A.) #11

If I understand Mr Eslinger’s proposal correctly (and the discussion that followed), I’ll give an example in support of his position.

A friend of mine is a moderator of the “Sex, Love and Relationships” sub-forum of Bluelight, an extremely large web forum dealing primarily with the usage of drugs for harm reduction (it’s mostly composed of medical professionals, like her).

It has well over 100 moderators, most of whom have powers relating to the individual categories they look at only. Indeed, there is a very small group of super-moderators, who have powers across the entire forum.

Therefore, the way such a feature would normally be used would be with a minority of users who are given more power than the rest. An example of this would be to create categories visible only to staff – and better yet, certain sections of the staff force.