Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Community status metadata #193

Open
sjn opened this issue Aug 11, 2024 · 28 comments
Open

Feature: Community status metadata #193

sjn opened this issue Aug 11, 2024 · 28 comments

Comments

@sjn
Copy link
Contributor

sjn commented Aug 11, 2024

Would it be meaningful to somehow distinguish defunct/hibernating groups from the ones that are active?

I haven't put much thought into this particular topic, but I guess CPANSec's attempt at a list of project conditions may be an inspiration?

@jhannah
Copy link
Member

jhannah commented Aug 11, 2024

If you're aware of inactive groups, I'll deactivate them. I don't police the groups, but I deactivate sleeping ones when they're brought to my attention. Generally speaking if a group's website is down, or 1+ years out of date, and there's no mailing list activity then I deactivate them. I notify the group leader so they can correct the problem(s), at which time I reactivate them. e.g. #184

@sjn
Copy link
Contributor Author

sjn commented Aug 11, 2024

Yeah, "policing" is not what I'm talking about.

I'm proposing adding some extra metadata fields so the people who are organising a group can share organisational matters with people in their area beyond the obvious existential stuff.

@jhannah
Copy link
Member

jhannah commented Aug 11, 2024

Oh, ok, sure. What do you want to add? https://www.pm.org/faq/admin.html#xml

@sjn
Copy link
Contributor Author

sjn commented Aug 11, 2024

Oh, ok, sure. What do you want to add? https://www.pm.org/faq/admin.html#xml

A bit unsure, so I guess I'd love to start with a short exploration of the topic?

To get it going, I'm thinking it would be good to distinguish between help that a group needs from what it wants.

For example,

  • Need: Main organizer(s)
  • Need: Event co-organizers (maybe different roles: Social, Technical, Large)
  • Want: SoMe/outreach contributors
  • Want: Community manager/DevRel
  • Want: OSPO & Recruiters Liaison

I guess there are other tasks or roles... Can you think of any?

@jhannah
Copy link
Member

jhannah commented Aug 12, 2024

Don't let me dissuade you from whatever you want to do. Go for it! Extend the DTD as you like. 🙂

That said, my personal thoughts are that:

  • Every inactive group needs 1+ main organizers. We don't need a fancier spec for that, it's already clear because the group is inactive.
  • Every active group is, presumably, reaching out to their local group members about their internal needs, via whatever communication vectors they use. I don't see any value in the pm.org international website having complicated standardized data specifications for storing those needs.
  • I could be wrong. 🙂

@ranguard
Copy link
Member

That level of meta information really does feel like it's useful to each individual group - and that's what their mailing lists (or how ever they communicate) are for...

Putting it centrally - it will just be out of date before you begin!

@sjn
Copy link
Contributor Author

sjn commented Aug 12, 2024

  • Every inactive group needs 1+ main organizers. We don't need a fancier spec for that, it's already clear because the group is inactive.

I'm unsure if it's clear enough. My experience is that most businesses that use Open Source don't really follow their communities close enough to realize this.

So for me, this suggestion is more about making "tribal" knowledge like this visible and available for everyone, than adding to the fanciness of the spec. 😅

  • Every active group is, presumably, reaching out to their local group members about their internal needs, via whatever communication vectors they use. I don't see any value in the pm.org international website having complicated standardized data specifications for storing those needs.

I can't claim knowledge about how things are done across most of the Perl Mongers, but my impression about the few I've been exposed to, is that...

  1. Groups usually lose activities gently and quietly, mostly because some core contributors or "doers" find something else/better to do.
  2. Very few groups seem to have a active sense (not to speak of plans) around succession planning.
  3. One of the biggest drawbacks of this particular community is (I'm sad to point out) the notion that you profess about the usefulness of centralized resources. While this type of "anarchic" way of operating has many fantastic features (e.g. everyone is free to spend their efforts according to their own will, and all the good stuff that stems from this), it also makes cooperation and coordination so much harder that it becomes tedious to even try — and those who despite this attempt to create anything anyway, they have to struggle with an incredibly difficult "market" to reach out with their ideas and efforts.

With that said, my proposal isn't useful alone, but probably has to be one of several improvements to how this community operates. For example, I think it would make sense to explore ways of regularly reaching out to the group organizers with relevant reminders and news about the site.

  • I could be wrong. 🙂

This is true for us all. 😅

(…or when I'm in a more poetic mood – "This is the human condition, is it not? 😅")

@sjn
Copy link
Contributor Author

sjn commented Aug 12, 2024

That level of meta information really does feel like it's useful to each individual group - and that's what their mailing lists (or how ever they communicate) are for...

Putting it centrally - it will just be out of date before you begin!

Maybe? I don't think a mail produces the same communicative effect as a status page though, so I'm not sure I agree with you.

You do have a point though. If metadata like these are to become useful, they'll have to be relevant, "recent enough", and easy to update as they change.

To find out what fields are needed for this to become relevant is the topic of this ticket. 😁

Finding ways to keep the fields' contents "recent enough" is both a question related to the typical update-frequency and "staticness" of any given field, and therefore also a topic for this ticket? 😄

And with regard to ways to update the fields... First, we already have a really good way of doing it (PR's to this repo), but I'm guessing the reason people don't do it is more related to ignorance of the possibility of this, or perhaps due to lack of people who care enough to do it? (assuming their ignorance has been addressed) In any case, I think that's a topic worth exploring it's own ticket. 🙂

@jhannah
Copy link
Member

jhannah commented Aug 12, 2024

I think it would make sense to explore ways of regularly reaching out to the group organizers with relevant reminders and news about the site.

One resource you might not be aware of: There is still a Group Leaders Mailman list, so the ~230 Group Leaders can all email each other en masse whenever they want. https://www.pm.org/faq/admin.html#Mailman No one has posted to that list since ~2018.

From inside what might be my blind spot, I don't see how Perl folk outside Omaha could help me relaunch Omaha.pm even if I wanted to do that. If I wanted to do that, I should gather people in Omaha interested in Perl. I'm not aware that there are any anymore. All the nerd events I attend, I'm known as the Perl guy, haven't found others. (I found one Raku hobbyist once, which blew my mind, but they didn't want to attend any local meetup, and have since moved.)

(Not just Perl, this is also true of Omaha Python and Golang. I've been chatting on local nerd boards about (re-)starting a group for those languages too, have gathered zero interest.)

@oalders
Copy link
Contributor

oalders commented Aug 13, 2024

nerd boards

Learned a new term today. 😅

@sjn
Copy link
Contributor Author

sjn commented Aug 13, 2024

One resource you might not be aware of: There is still a Group Leaders Mailman list, so the ~230 Group Leaders can all email each other en masse whenever they want. https://www.pm.org/faq/admin.html#Mailman No one has posted to that list since ~2018.

Hm. I can't seem to log in there, and I'm getting a 500-error when accessing the "Unsubscribe or edit options" form on the pm_groups list page. Are you in a position to investigate?

From inside what might be my blind spot, I don't see how Perl folk outside Omaha could help me relaunch Omaha.pm even if I wanted to do that. If I wanted to do that, I should gather people in Omaha interested in Perl. I'm not aware that there are any anymore. All the nerd events I attend, I'm known as the Perl guy, haven't found others. (I found one Raku hobbyist once, which blew my mind, but they didn't want to attend any local meetup, and have since moved.)

Yeah, I guess your story may be a common one. Still, maybe it's worth shifting the perspective a little, in order to think anew on some of these issues?

For example:

  • With the upcoming regulations around cybersecurity (NIS2, CRA, EO 14028), there's going to be a need for people that can help get old Perl applications compliant – and to find these individuals, Perl Mongers can play a meaningful role – if these communities are known of, findable and responsive.
  • Recruiting companies are still struggling finding Perl devs, and can still be made easier if this is done with community assistance, rather than how it's done now.
  • The act of finding communities is the twin of the act of making communities findable – and this is where a resource like pm.org can help everyone.
  • People move. A developer with some Open Source exposure might get a job in Omaha; How easily will they find Omaha.pm? This is also the case for any other city/PM group. Maybe it's better to assume unawareness among the target demographics, and work from there?

My point is that "Open Source Community" is a topic that's going to become more and more relevant for businesses (since FOSS Security is not possible without a FOSS Community), and this can – if we play our cards carefully before then – be used to help revive the communities nearby these businesses. 😁

(Not just Perl, this is also true of Omaha Python and Golang. I've been chatting on local nerd boards about (re-)starting a group for those languages too, have gathered zero interest.)

Ooof. I can relate with this too. There seems to be a lot of "bystanderism" going on, it seems. Or a lack of interest in community building/care/sustainability in general? 😞

@sjn
Copy link
Contributor Author

sjn commented Aug 13, 2024

Huh. Seems I was removed from pm_groups in 2009, and I didn't even notice 😅

But sure, that sounds like a good place to announce some updates and/or run a survey about community status metadata.

@jhannah
Copy link
Member

jhannah commented Aug 14, 2024

Re: https://mail.pm.org/mailman/listinfo/pm_groups

Hm. I can't seem to log in there, and I'm getting a 500-error when accessing the "Unsubscribe or edit options" form on the pm_groups list page. Are you in a position to investigate?

Yup. Are you a group leader? I don't see Nilsen in our XML file of group leaders... That list is for group leaders. If you're leading a group I can add you (and fix our XML file?).

Recruiting companies are still struggling finding Perl devs, and can still be made easier if this is done with community assistance, rather than how it's done now.

They are? I'm looking for a job. Any links to Perl telecommuting jobs would be great! ❤️

The act of finding communities is the twin of the act of making communities findable – and this is where a resource like pm.org can help everyone.

That's what pm.org does, right? It shows anyone looking for a group where the active groups are?

People move. A developer with some Open Source exposure might get a job in Omaha; How easily will they find Omaha.pm? This is also the case for any other city/PM group. Maybe it's better to assume unawareness among the target demographics, and work from there?

I mean... Can I at least have dibs on applying for the first Omaha Perl job before we open it up to global competition? 😉 They can pass on me, that's fine, but I'd at least like to apply. I hired a Perl dev in Omaha in 2003... he said that was super rare, even back then.

Ooof. I can relate with this too. There seems to be a lot of "bystanderism" going on, it seems. Or a lack of interest in community building/care/sustainability in general? 😞

Broadly, there seems to be less interest in nerd meetups since covid. And broadly, Perl / Python / Golang appear to be less used, or used by people disinterested in physical meetups. (Which is fine. I get it. Jobs can be exhausting, maybe the last thing you want after 40 hours of coding is more coding / computer talk.)

Again, don't let me dissuade you from extending our perl_mongers.dtd. Go for it! I'd love to find out that I'm wrong. Let me know how I can help.

@jhannah
Copy link
Member

jhannah commented Aug 14, 2024

Huh. I got a "pending subscriptions" email (Salve J. Nilsen) Tue Aug 13 02:46:56 2024, but I logged in and:

There are no pending requests.

Did you want to be on the list?

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

Seems https://www.pm.org/faq/admin.html already has a status attribute as part of the group elements. I can see the following ones:

  • active
  • inactive
  • sleeping
  • undef
  • dead
  • mlb
  • leb
  • gone
  • unknown
  • spam
  • disbanded to make room for other groups -jhannah 20061203
  • on hold
  • Vetoed by Robert. See RT 57812.

Together with these, quite a few have XML comments associated with them.

So, for a first few fixes, I think it would be smart to to this..

  1. consolidate the status values into a limited set of enums that clearly communicate what the current state of the group is.
    • bring your ideas! 😁
  2. introduce structured comments for noting an update's contributor name, timestamp and comment
    • e.g. <changelog timestamp="2010.05.22" comment="Les reported that they become inactive as there was little participation" contributor="szabgab" />)
    • this could also be used for providing a reason for a status change
  3. introduce a new element for each group, that allows for a group leader (or support person, or other volunteer, maybe?) to communicate group needs (meaning – how they are looking to change, and what they need to do this), perhaps starting with my examples in Feature: Community status metadata #193 (comment) ?

What do you guys think?

@jhannah
Copy link
Member

jhannah commented Aug 14, 2024

  1. consolidate the status values into a limited set of enums that clearly communicate what the current state of the group is.

That's fine, I can merge any such PR.

  1. introduce structured comments for noting an update's contributor name, timestamp and comment

Isn't the git log sufficient for those?

  1. introduce a new element for each group, that allows for a group leader (or support person, or other volunteer, maybe?) to communicate group needs (meaning – how they are looking to change, and what they need to do this), perhaps starting with my examples in Feature: Community status metadata #193 (comment) ?

Yup, feel free to extend our DTD however you want.

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

  1. consolidate the status values into a limited set of enums that clearly communicate what the current state of the group is.

That's fine, I can merge any such PR.

Could you also join in with the brainstorming? 😅

  1. introduce structured comments for noting an update's contributor name, timestamp and comment

Isn't the git log sufficient for those?

Maybe as a data source? Adding structured (but not <!-- -->) comments to the XML itself would be with the purpose of exposing this new information somehow. For example, I'm thinking it would be useful to change the map pin of the group based on the status and needs it has, and use a hover/mouseover effect to show the latest comment describing what happened...

  1. introduce a new element for each group, that allows for a group leader (or support person, or other volunteer, maybe?) to communicate group needs (meaning – how they are looking to change, and what they need to do this), perhaps starting with my examples in Feature: Community status metadata #193 (comment) ?

Yup, feel free to extend our DTD however you want.

Part of what I'm proposing here is to use enumerators, which means I'll need some help figuring out what they should be. Wanna help? 😄

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

Oh, and I guess some of the tooling in bin/ may also need updating if the DTD/XML changes?

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

Huh. I got a "pending subscriptions" email (Salve J. Nilsen) Tue Aug 13 02:46:56 2024, but I logged in and:

There are no pending requests.

Did you want to be on the list?

I think Oslo.pm forgot to update this file after Marcus Ramberg stepped down. I guess I'm the current one, though we haven't had any activity since before Covid. I guess you could reset it to my old address?

I don't need to be on the list. I was just curious about what was in the archives, but was blocked from looking at them as I wasn't a list member. I had forgotten that this one is only for group leaders.

(On a side note: I think groups should be allowed to assign more members, so they aren't forced into creating another burnout-prone SPOF due to "pm.org policy")

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

Recruiting companies are still struggling finding Perl devs, and can still be made easier if this is done with community assistance, rather than how it's done now.

They are? I'm looking for a job. Any links to Perl telecommuting jobs would be great! ❤️

Don't know how things are in the U.S., but yes, there's been a slump a while in Europe too, now. It's still possible to find stuff, and for anyone up for diving into the DevSecOps space, there'll be a bunch of opportunities showing up next year, I'm predicting. 😄

The act of finding communities is the twin of the act of making communities findable – and this is where a resource like pm.org can help everyone.

That's what pm.org does, right? It shows anyone looking for a group where the active groups are?

Yes, it does the basics, but could do so much more – like showing community status metadata clearly! 😉

Ooof. I can relate with this too. There seems to be a lot of "bystanderism" going on, it seems. Or a lack of interest in community building/care/sustainability in general? 😞

Broadly, there seems to be less interest in nerd meetups since covid. And broadly, Perl / Python / Golang appear to be less used, or used by people disinterested in physical meetups. (Which is fine. I get it. Jobs can be exhausting, maybe the last thing you want after 40 hours of coding is more coding / computer talk.)

🎶 Yeah, yeah, yeah, the excitement's gone, all-gone, but the systems are still a-humming! Mmm-hm-hmm. 🎶

Again, don't let me dissuade you from extending our perl_mongers.dtd. Go for it! I'd love to find out that I'm wrong. Let me know how I can help.

If you'd like to, I'd love a sounding-board and co-brainstormer for this ticket! 😅

jhannah added a commit that referenced this issue Aug 14, 2024
@jhannah jhannah mentioned this issue Aug 14, 2024
@jhannah
Copy link
Member

jhannah commented Aug 14, 2024

I think Oslo.pm forgot to update this file after Marcus Ramberg stepped down.

Like this? #194

I don't need to be on the list. I was just curious about what was in the archives, but was blocked from looking at them as I wasn't a list member. I had forgotten that this one is only for group leaders.

I'll add you if you're the new group leader.

(On a side note: I think groups should be allowed to assign more members, so they aren't forced into creating another burnout-prone SPOF due to "pm.org policy")

You can have as many group leaders as you want. Several groups have multiple <tsar> entries.

@sjn
Copy link
Contributor Author

sjn commented Aug 14, 2024

(On a side note: I think groups should be allowed to assign more members, so they aren't forced into creating another burnout-prone SPOF due to "pm.org policy")

You can have as many group leaders as you want. Several groups have multiple <tsar> entries.

Sweet! In that case, please keep Marcus on the list, until he says he wants to be removed! :)

jhannah added a commit that referenced this issue Aug 14, 2024
@jhannah
Copy link
Member

jhannah commented Aug 14, 2024

Oh, and I guess some of the tooling in bin/ may also need updating if the DTD/XML changes?

bin/xml is the only program that matters that I recall. I don't think it validates the .dtd file (did it ever?). But in principle, if you want to expand the XML spec, that's where you'd do it.

Personally, I'm not worried about it. As long as bin/xml keeps running, I'm happy. I run it every time there's any group update, which is... 2-3 times a year nowadays? If you break it, no problem, I can fix it when I need to flush again.

Perl Mongers is down to 28 groups that have 1+ posts to their mailing list this year. Presumably several more groups are active, using things other than MailMan? I want to empower you and others to do whatever you want to improve pm.org, but personally I need to throw my hours at landing a new job. Which shouldn't slow you down. ❤️

@sjn
Copy link
Contributor Author

sjn commented Aug 15, 2024

Perl Mongers is down to 28 groups that have 1+ posts to their mailing list this year. Presumably several more groups are active, using things other than MailMan? I want to empower you and others to do whatever you want to improve pm.org, but personally I need to throw my hours at landing a new job. Which shouldn't slow you down. ❤️

I too am rather busy, and what I'm doing here is a "drive-by contribution", so that's why I'm asking for certain types of interaction. I'll slow down when the interaction slows down. 😉

With that said, those stats are useful! Can we integrate these somehow? (e.g. convert it to JSON and visualize it somehow in the UI?) If the code producing that file is in a repo somewhere, we could make it into JSON, for example?

Also, you've helped me realize these pages can become more useful if group tzars get the capability to add links to "alternative communities" (e.g. meetup groups or "techies in the pub" events or "nerd boards" or whatever)...

What do you think?

@jhannah
Copy link
Member

jhannah commented Aug 16, 2024

With that said, those stats are useful! Can we integrate these somehow? (e.g. convert it to JSON and visualize it somehow in the UI?) If the code producing that file is in a repo somewhere, we could make it into JSON, for example?

MailMan is only one way groups might be communicating. It wouldn't be fair to such groups for pm.org to "shame" them for having low MailMan stats if they're active elsewhere. :) If a group is entirely inactive, we inactivate them until they find 1+ new leaders.

Also, you've helped me realize these pages can become more useful if group tzars get the capability to add links to "alternative communities" (e.g. meetup groups or "techies in the pub" events or "nerd boards" or whatever)...

Several groups already use the XML to register their various social medias. The website puts little icons of those social medias on their group page at pm.org. e.g.:

<web>http://perl.org.il/</web>
<linkedin>http://www.linkedin.com/groups?gid=684</linkedin>
<facebook>http://www.facebook.com/Israeli.Perl.Mongers</facebook>
<googleplus>https://plus.google.com/105209189901369984525</googleplus>

@sjn
Copy link
Contributor Author

sjn commented Aug 16, 2024

With that said, those stats are useful! Can we integrate these somehow? (e.g. convert it to JSON and visualize it somehow in the UI?) If the code producing that file is in a repo somewhere, we could make it into JSON, for example?

MailMan is only one way groups might be communicating. It wouldn't be fair to such groups for pm.org to "shame" them for having low MailMan stats if they're active elsewhere. :) If a group is entirely inactive, we inactivate them until they find 1+ new leaders.

Ah, no. Why would you assume this is about shaming anyone? 😮 (WTF, seriously, man! 😠)

I'm looking for ways to signal "volunteers needed" more explicitly. But sure, if someone insists at considering community health metrics, then mailing list activity is a useful indicator. There is no shame in not volunteering, but if someone cares about their community/ecosystem/open source colleagues, then it is good to be made aware of any activity that can help them produce another positive signal.

I Care. Can I help? Not aware help is needed Aware help is needed
I have no tuits Nothing happens Can spread word or recruit
I have some tuits Nothing happens Can help a little organizing
I have lots of tuits Nothing happens Can help a lot organizing

If you add "shaming" to this table, you are basically blocking efforts that make more people aware. NOT A GOOD THING. BAD, BAD, BAD. DO NOT DO THIS! 😠

Also, you've helped me realize these pages can become more useful if group tzars get the capability to add links to "alternative communities" (e.g. meetup groups or "techies in the pub" events or "nerd boards" or whatever)...

Several groups already use the XML to register their various social medias. The website puts little icons of those social medias on their group page at pm.org. e.g.:

<web>http://perl.org.il/</web>
<linkedin>http://www.linkedin.com/groups?gid=684</linkedin>
<facebook>http://www.facebook.com/Israeli.Perl.Mongers</facebook>
<googleplus>https://plus.google.com/105209189901369984525</googleplus>

Oh nice! Is this documented somewhere?

@jhannah
Copy link
Member

jhannah commented Aug 16, 2024

Oh nice! Is this documented somewhere?

https://www.pm.org/faq/hosting.html#social

@sjn
Copy link
Contributor Author

sjn commented Aug 16, 2024

Oh nice! Is this documented somewhere?

https://www.pm.org/faq/hosting.html#social

Right. Thanks. This isn't reflected in the DTD, though.

Also, after letting this sink in for a moment, "social media" isn't the same as "alternative communities", is it? 😄

I'm thinking of meetup and facebook groups that organize events. I get that there may be a concept overlap, though I think it would be clearer (and more useful?) if one can have a separate link for signing up/joining the member forums/communities and for their SoMe contact points. Hmm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants