perlorg / www.pm.org

Perl Mongers Website
http://www.pm.org
25 stars 53 forks source link

Feature: Community status metadata #193

Open sjn opened 1 month ago

sjn commented 1 month ago

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 commented 1 month ago

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 commented 1 month ago

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 commented 1 month ago

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

sjn commented 1 month ago

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,

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

jhannah commented 1 month ago

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:

ranguard commented 1 month ago

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 commented 1 month ago
  • 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. :sweat_smile:

  • 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. :sweat_smile:

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

sjn commented 1 month ago

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. :grin:

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? :smile:

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. :slightly_smiling_face:

jhannah commented 1 month ago

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 commented 1 month ago

nerd boards

Learned a new term today. πŸ˜…

sjn commented 1 month ago

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:

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. :grin:

(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? :disappointed:

sjn commented 1 month ago

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

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

jhannah commented 1 month ago

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 commented 1 month ago

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 commented 1 month ago

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:

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! :grin:
  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 https://github.com/perlorg/www.pm.org/issues/193#issuecomment-2282848817 ?

What do you guys think?

jhannah commented 1 month ago
  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 commented 1 month ago
  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? :sweat_smile:

  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? :smile:

sjn commented 1 month ago

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

sjn commented 1 month ago

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 commented 1 month ago

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. :smile:

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! :wink:

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.)

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

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! :sweat_smile:

jhannah commented 1 month ago

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 commented 1 month ago

(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 commented 1 month ago

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 commented 1 month ago

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. :wink:

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 commented 4 weeks ago

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 commented 4 weeks ago

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? :open_mouth: (WTF, seriously, man! :angry:)

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! :angry:

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 commented 4 weeks ago

Oh nice! Is this documented somewhere?

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

sjn commented 4 weeks ago

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? :smile:

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.