From bce44155f81eaf1168fb5e7e00938b2ef1d87356 Mon Sep 17 00:00:00 2001 From: Benjie Gillam Date: Fri, 3 Feb 2023 11:03:53 +0000 Subject: [PATCH 1/2] Add community grant report for May-July 2022 --- .../blog/2023-02-03-community-gardening.md | 135 ++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 src/content/blog/2023-02-03-community-gardening.md diff --git a/src/content/blog/2023-02-03-community-gardening.md b/src/content/blog/2023-02-03-community-gardening.md new file mode 100644 index 0000000000..68a12842f4 --- /dev/null +++ b/src/content/blog/2023-02-03-community-gardening.md @@ -0,0 +1,135 @@ +--- +title: Community Gardening, May - July 2022 +tags: ["grants"] +layout: blog +date: 2023-02-03 +byline: Benjie Gillam +permalink: /blog/2023-02-03-community-gardening +--- + +> The GraphQL Foundation offers [Community +> Grants](https://graphql.org/foundation/community-grant/) to help incentivize +> key technical and community initiatives. As part of the grant, applicants +> commit to write a blog post report describing their work and its impact on +> the GraphQL community. The following report was written by successful grant +> applicant [Benjie Gillam](https://github.com/sponsors/benjie) in August 2022, +> detailing the community gardening he performed during May, June and July of +> that year. + +## Backstory + +In 2019 I started turning up to GraphQL Working Group meetings regularly and +helping take [the +notes](https://github.com/graphql/graphql-wg/tree/main/notes). Back then we had +a system for filing and reviewing action items, but very few people used it, so +items would easily get lost. Further, the notes and videos would be uploaded in +batches every few months, which prevented attendees referring to them in the +interim. + +Over the next couple years I set about trying to improve these processes. I +started by filing the [action +items](https://github.com/graphql/graphql-wg/issues?q=is%3Aissue+sort%3Aupdated-desc+label%3A%22Action+item+%3Aclapper%3A%22) +myself. After a while, I started categorizing them into [GitHub +projects](https://github.com/graphql/graphql-wg/projects?type=classic&query=is%3Aopen+sort%3Aupdated-desc), +one for each meeting, which made keeping track of them (particularly the old +ones) much easier and helped us to see progress. Later I introduced a new +["ready for review" +label](https://github.com/graphql/graphql-wg/issues?q=is%3Aissue+sort%3Aupdated-desc+label%3A%22Ready+for+review+%F0%9F%99%8C%22+) +that enabled us to quickly focus on the action items that needed discussion +rather than trying to go over every item (or skip the lot entirely) each +meeting. These processes were very much appreciated by the working group, but +were quite time consuming for one person. As time went on my I found myself +contributing to GraphQL in more and more ways, and as the time I could dedicate +to these tasks dwindled, my ability to keep these processes running smoothly +diminished. + +## Funding approved + +In May 2022, the GraphQL Foundation kindly approved my application for a [GraphQL +Community Grant](https://graphql.org/foundation/community-grant/) to enable me +to dedicate more time to these tasks. I'm a community-funded open source +developer, so I rely on [sponsorship](https://github.com/sponsors/benjie) to +fund my open source endeavors - both on my own open source projects ([the +Graphile suite](https://github.com/graphile)) and also my contributions to the +[GraphQL](https://github.com/graphql/graphql-spec/graphs/contributors) +[Working](https://github.com/graphql/graphql-wg/graphs/contributors) +[Groups](https://github.com/graphql/graphql-over-http/graphs/contributors). +Since being approved for the grant, I've been better able to execute the role +of community gardener; let me tell you about some of the ways in which the +foundation's grant has enabled me to better support you, the GraphQL community! + +The [main GraphQL working group](https://github.com/graphql/graphql-wg) meets +each month; and it is recorded on Zoom and made available via [the Foundation's +YouTube +channel](https://www.youtube.com/channel/UCERcwLeheOXp_u61jEXxHMA/playlists). +Soon after each meeting I've been uploading the videos not just for the main +meeting but also for the various other subcommittees (GraphiQL WG, GraphQL.js +WG, GraphQL-over-HTTP WG, Metadata WG, Composite Schemas WG) that may have met +during the previous month. Whilst uploading the video of the main meeting, I +file its notes and the action items, while also categorizing them making sure +they're assigned to the relevant person. Recently, I've also started adding +timestamped links to the YouTube video for each action item, so we can hear the +original instructions rather than just the paraphrased summaries from the +notes - I think this makes them even more useful! + +## Empowering other contributors + +As part of my aim to document our processes and streamline things, I've created +[a template repository](https://github.com/graphql/wg-template) that can be +used whenever a new GraphQL subcommittee is created. This enables all +subcommittees to adopt the GraphQL meeting practices with minimal effort from +the committee chair - just [a small list of +edits](https://github.com/graphql/wg-template#working-group-template) that take +about 5 minutes when setting up the repository and of course the regular +scheduling. + +I've also been working with the Linux Foundation's Elisa Trevino to get +subcommittee meetings scheduled onto [the GraphQL +calendar](https://calendar.google.com/calendar/embed?src=linuxfoundation.org_ik79t9uuj2p32i3r203dgv5mo8%40group.calendar.google.com), +and to expand [EasyCLA](https://docs.linuxfoundation.org/v2/easycla) to the new +repositories to ensure that everyone contributing has signed the [GraphQL +Membership +Agreement](https://github.com/graphql/graphql-wg/tree/main/membership). This +should make releasing future versions of the spec and any subcommittee +deliverables much easier since the intellectual property paperwork is in place +from the start. + +Thanks to the new funding I've also been able to be more active on GitHub +issues, PRs, discussions and in [the GraphQL Discord +server](https://discord.graphql.org/), enabling me to offer assistance to +people interested in contributing, and to help moderate these environments. +This includes [explaining how to become a +champion](https://github.com/graphql/graphql-spec/issues/174#issuecomment-1129621529), +performing timely moderation actions when the Discord server suffers from spam, +and giving guidance on how to improve PRs. + +## Extra-curricular activities + +Whilst not technically under the umbrella of the grant, having the time spent +on the above tasks funded by the GraphQL Grant has freed me up to dedicate more +time to other key issues in GraphQL - for example I [recently revived the +GraphQL-over-HTTP +project](https://github.com/graphql/graphql-over-http/pull/175) and we're well +on the way towards v1 of that specification. I've also helped kick-start [the +GraphQL Composite Schemas working +group](https://github.com/graphql/composite-schemas-wg) for the community to +collaborate on shared solutions to common problems felt across all the +different ways of building a GraphQL schema by combining other GraphQL schemas +together. I've also finally been able [to follow through on my intent to push +the "GraphQL Metadata" topic +forward](https://github.com/graphql/graphql-spec/issues/300#issuecomment-1119676731) +including researching, digesting, and [sharing my analysis of the existing +solutions and their problems at the GraphQL +Conference](https://youtu.be/c1oa7p73rTw), and [suggesting a solution of my +own](https://github.com/graphql/graphql-wg/blob/main/rfcs/AnnotationStructs.md). +Another thing that this reduced pressure on my time has enabled is the [new +SpecNews podcast](https://specnewspod.com/) in which my co-host Jem and I +summarize the latest GraphQL Specification Working Group session in just 5-10 +minutes. + +## Get involved! + +If you're interested in contributing to GraphQL and need help getting started, +feel free to reach out to me, @benjie, on +[Discord](https://discord.graphql.org) or via a GitHub issue or PR and I'll do +my best to help! From 3685d3b190ff4198ad49126f0d4b8d8469e9abbf Mon Sep 17 00:00:00 2001 From: Benjie Gillam Date: Sat, 4 Feb 2023 11:43:14 +0000 Subject: [PATCH 2/2] Apply Hugh's suggestions --- .../blog/2023-02-03-community-gardening.md | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/src/content/blog/2023-02-03-community-gardening.md b/src/content/blog/2023-02-03-community-gardening.md index 68a12842f4..72080f7328 100644 --- a/src/content/blog/2023-02-03-community-gardening.md +++ b/src/content/blog/2023-02-03-community-gardening.md @@ -56,21 +56,25 @@ Graphile suite](https://github.com/graphile)) and also my contributions to the [Groups](https://github.com/graphql/graphql-over-http/graphs/contributors). Since being approved for the grant, I've been better able to execute the role of community gardener; let me tell you about some of the ways in which the -foundation's grant has enabled me to better support you, the GraphQL community! +Foundation's grant has enabled me to better support you, the GraphQL community! The [main GraphQL working group](https://github.com/graphql/graphql-wg) meets each month; and it is recorded on Zoom and made available via [the Foundation's YouTube channel](https://www.youtube.com/channel/UCERcwLeheOXp_u61jEXxHMA/playlists). Soon after each meeting I've been uploading the videos not just for the main -meeting but also for the various other subcommittees (GraphiQL WG, GraphQL.js -WG, GraphQL-over-HTTP WG, Metadata WG, Composite Schemas WG) that may have met -during the previous month. Whilst uploading the video of the main meeting, I -file its notes and the action items, while also categorizing them making sure -they're assigned to the relevant person. Recently, I've also started adding -timestamped links to the YouTube video for each action item, so we can hear the -original instructions rather than just the paraphrased summaries from the -notes - I think this makes them even more useful! +meeting but also for the various other subcommittees ([GraphiQL +WG](https://github.com/graphql/graphiql/tree/main/working-group), [GraphQL.js +WG](https://github.com/graphql/graphql-js-wg), [GraphQL-over-HTTP +WG](https://github.com/graphql/graphql-over-http/tree/main/working-group), +Metadata WG, [Composite Schemas +WG](https://github.com/graphql/composite-schemas-wg)) that may have met during +the previous month. Whilst uploading the video of the main meeting, I file its +notes and the action items, while also categorizing them making sure they're +assigned to the relevant person. Recently, I've also started adding timestamped +links to the YouTube video for each action item, so we can hear the original +instructions rather than just the paraphrased summaries from the notes - I +think this makes them even more useful! ## Empowering other contributors @@ -83,8 +87,8 @@ edits](https://github.com/graphql/wg-template#working-group-template) that take about 5 minutes when setting up the repository and of course the regular scheduling. -I've also been working with the Linux Foundation's Elisa Trevino to get -subcommittee meetings scheduled onto [the GraphQL +I've also been working with the Linux Foundation to get subcommittee meetings +scheduled onto [the GraphQL calendar](https://calendar.google.com/calendar/embed?src=linuxfoundation.org_ik79t9uuj2p32i3r203dgv5mo8%40group.calendar.google.com), and to expand [EasyCLA](https://docs.linuxfoundation.org/v2/easycla) to the new repositories to ensure that everyone contributing has signed the [GraphQL