Cross-project-council: Proposal to lift Node.js' Code & Learn event as an OpenJS cross-project initiative

Created on 13 Aug 2019  Â·  11Comments  Â·  Source: openjs-foundation/cross-project-council

I brought this up briefly at the last CPC meeting. Opening this is to put a stake in the ground for ongoing discussion and to update CPC folks on progress.

(Let me know if this isn't the most effective way to do this @joesepi)

#183 in nodejs/summit paints the current plan in broad strokes.

  • make this a cross-project initiative
  • change the format so that it requires less upfront effort
  • find ways to improve the conversion of participants to regular contributors
  • (see #183 in nodejs/summit for specifics and discussion so far)

Next steps are (pending go ahead from the CPC) to

  • create a code-and-learn repo in this org, so we can begin working on this as a cross-project initiative

Most helpful comment

I think it would be good to get input from @Trott and @addaleax as they have lead a number of the code and learns in the past.

Bluntly and briefly: Except for people who have been main organizers for one of these things before (which would be me, @addaleax, and @BridgeAR, and that's about it), everyone vastly underestimates the effort required to do these well. They are easy to do as long as you do a half-baked job.

There are roughly three goals in these things:

  • Have a great experience for the attendee (so that they have warm fuzzy feelings about the project because it's a good thing to have happy users that feel connected to the project)
  • Have highly valuable contributions for the project (preferably that we wouldn't have otherwise, and that's really the rub)
  • Provide an onramp to further contributions from attendees and have a significant number of them actually take that onramp

Pick none of the above--just throw the event and do some prep and hope it works out for some attendees here and there--and it's easy!

Pick one of the above, and the work is very hard.

Pick two and it is nearly impossible.

Pick all three and...ha ha! No, don't pick all three.

Now, this experience may apply only to Node.js. It's a pretty picked-over code base in terms of low-hanging fruit, a lot of the obvious "easy" "good first tasks" are in fact detrimental churn, a lot of them will attract endless conversation and disagreement among reviewers, and so on. On the other hand, a green-field-ish project with few contributors might be a different case. Like, hosting a Code & Learn for Hospital Run might be a fantastic idea. I don't know.

But for Node.js, I'm skeptical that the effort is worth the return on investment anymore. It certainly used to be. But we may be passed that point. Or maybe we just need to give it a rest for 12 months. Again, I don't know.

All 11 comments

  • create a code-and-learn repo in this org, so we can begin working on this as a cross-project initiative

I reached out to folks in the #infra Slack channel and asked them to create such a repo.

Tagging a somewhat related issue here for reference: #242

I think it would be good to get input from @Trott and @addaleax as they have lead a number of the code and learns in the past.

I think it would be good to get input from @Trott and @addaleax as they have lead a number of the code and learns in the past.

Bluntly and briefly: Except for people who have been main organizers for one of these things before (which would be me, @addaleax, and @BridgeAR, and that's about it), everyone vastly underestimates the effort required to do these well. They are easy to do as long as you do a half-baked job.

There are roughly three goals in these things:

  • Have a great experience for the attendee (so that they have warm fuzzy feelings about the project because it's a good thing to have happy users that feel connected to the project)
  • Have highly valuable contributions for the project (preferably that we wouldn't have otherwise, and that's really the rub)
  • Provide an onramp to further contributions from attendees and have a significant number of them actually take that onramp

Pick none of the above--just throw the event and do some prep and hope it works out for some attendees here and there--and it's easy!

Pick one of the above, and the work is very hard.

Pick two and it is nearly impossible.

Pick all three and...ha ha! No, don't pick all three.

Now, this experience may apply only to Node.js. It's a pretty picked-over code base in terms of low-hanging fruit, a lot of the obvious "easy" "good first tasks" are in fact detrimental churn, a lot of them will attract endless conversation and disagreement among reviewers, and so on. On the other hand, a green-field-ish project with few contributors might be a different case. Like, hosting a Code & Learn for Hospital Run might be a fantastic idea. I don't know.

But for Node.js, I'm skeptical that the effort is worth the return on investment anymore. It certainly used to be. But we may be passed that point. Or maybe we just need to give it a rest for 12 months. Again, I don't know.

Caveat on the above comment: The problem may actually be that I'm still burned out on Code & Learn. Maybe the real problem is that I need to take a longer break from it.

So, all that off my chest, and commenting on the specifics here:

make this a cross-project initiative

TOTAL YES!!!!

change the format so that it requires less upfront effort

Not sure how to do that. Need more specifics. I mean, one way is to reduce the number of attendees to, like, two or maybe three dozen. I'd be totally for organizing a scaled-back Code & Learn like that.

find ways to improve the conversion of participants to regular contributors

A fine goal, but I think it's also important to reiterate that the event has value even if there is 0% retention of contributors. Also, the goal of improved retention is likely at odds with the goal of less upfront prep.

one way is to reduce the number of attendees to, like, two or maybe three dozen

That's a solid way to get started. Let's riff on this. 🎸

Knowing we want to prioritize reducing upfront effort, one option might be to land on a ratio of committed organizers/mentors to participants and then come up with a cap.

For example during the last CPC call, one person (won't mention names, don't want to imply commitment to participate ;-) said that they'd likely be down to facilitate a group of 4. This discussion was around facilitating for specific projects within the larger Code & Learn.

So to extend the example in the previous comment, if one person were facilitating for Hospital Run, that's a cap of 4 people learning to contribute to Hospital Run.

Knowing we want to prioritize reducing upfront effort, one option might be to land on a ratio of committed organizers/mentors to participants and then come up with a cap.

@keywordnew Your suggestion of a 4-to-1 ratio sounds good to me. I sought a 5-to-1 ratio of mentors-to-attendees for previous Code-and-Learn events and that worked pretty well. However, in those cases, the mentors didn't have to do any prep whatsoever. Their job was to just show up and answer questions as they came up. So a key thing here is that it won't be enough for a mentor to say they want to attend. They'll almost certainly need to do at least a little up-front work for the type of thing we're talking about. Prepping enough engaging work for 4 people will be plenty to do, so probably no need to push it beyond that (although anyone who can do more than 4, then hey, great!).

Thank you Rich @Trott for all the feedback, it is super valuable to me who currently only had attended this event once.

To reiterate on my initial proposal I think that by having attendees to request session ideas can provide the following situation for us:

  • we know the topics that people are interested in upfront and can assign the right mentors for it
  • we can only accept sessions that we are cape-able to facilitate given the capabilities of mentors we have (yes, chances are that we have to "reject" peoples ideas but it would help us working with smaller groups)
  • by knowing the area of interest it limits the prep work upfront
  • focusing on a specific topic IMO increases the likelihood of a continuous contribution relationship (I could be wrong here though)

I can see a lot of topics being suggested by possible mentors from specific OpenJSF projects, some being more general (e.g. fix a bug in WebdriverIO) others more specific (e.g. debug Node.js API XYZ) depending on the size of the project.

To sum it up in two sentences: instead of having a general Node.js code & learn, let's open it up to all foundation projects and group attendees to focus on specific topics proposed by the audience.

ok, so it sounds like we have a basic structure that Christian laid out so
well for the Code& Learn. At the meeting next Tuesday (Sept 3) let's sit
down and start figuring out what needs to be done so we can make it a
reality. If anyone would like an invite to the meeting and isn't already
on the invite, just let me know and I would be happy to add you.

Eva

On Thu, Aug 29, 2019 at 2:34 PM Michael Dawson notifications@github.com
wrote:

@keywordnew https://github.com/keywordnew I moved the repo over but I'm
not an org owner in the openjs-foundation so I can't update members/team.

@openjs-foundation/cpc-voting-members
https://github.com/orgs/openjs-foundation/teams/cpc-voting-members
can one of the voting members help out with this?

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/openjs-foundation/cross-project-council/issues/287?email_source=notifications&email_token=AKYQ3QMALN2YZKKUQSBBGPLQHA6IBA5CNFSM4ILG4DC2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5P4URA#issuecomment-526371396,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKYQ3QLKEJZEHZB7ZNXVCHDQHA6IBANCNFSM4ILG4DCQ
.

--
Eva Howe
Operations Manager
This Dot Labs
[email protected]

It looks like we've spun up https://github.com/openjs-foundation/code-and-learn; can this issue be closed?

Was this page helpful?
0 / 5 - 0 ratings