Skip to content

Commit 869e139

Browse files
fix TODOs
1 parent 3f05db6 commit 869e139

File tree

7 files changed

+173
-68
lines changed

7 files changed

+173
-68
lines changed

content/_index.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ body = '''
2828
Numerical computing lectures that teach key packages in the scientific Python ecosystem, such as NumPy, SciPy, Matplotlib, scikit-learn, and scikit-image.
2929
'''
3030

31+
[[item]]
32+
type = 'card'
33+
title = 'Community Guide'
34+
link = '/community'
35+
body = '''
36+
Learn how to manage the community of your open-source project.
37+
'''
38+
3139
{{< /grid >}}
3240

3341
<!--

content/community/community-meetings.md

Lines changed: 57 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -4,75 +4,108 @@ title: "Community Meetings"
44

55
## How to initiate a community meeting?
66

7-
- Before starting the meeting, having a few items and discussion points in the agenda will help kick-start the meeting. These discussion points could be a mix of:
7+
- Before starting the meeting, having a few items and discussion points in the
8+
agenda will help kick-start the meeting. These discussion points could be a
9+
mix of:
810
- Issues or PRs from the GitHub repositories which need attention
9-
- Announcing any upcoming events/conferences to check if someone is going to attend them or is planning to
11+
- Announcing any upcoming events/conferences to check if someone is going to
12+
attend them or is planning to
1013
- Important updates:
1114
- These could be recent releases/new feature additions
1215
- Addition/changes in the maintainer/contributor team
13-
- Convergence of an ongoing discussion - a summary of how the community reached a decision
16+
- Convergence of an ongoing discussion - a summary of how the community
17+
reached a decision
1418
- Anything important which needs to be brought up before the community
1519
- Let everyone know that the meeting is governed by a CoC
1620

1721
## Ice-breakers
1822

19-
- Ice-breakers are usually effective when the participants are not familiar with each other
20-
- Apart from the general introduction, which is usually name and role, it’s effective to add a fun question (generally non-technical) to ask around; these are:
23+
- Ice-breakers are usually effective when the participants are not familiar with
24+
each other
25+
- Apart from the general introduction, which is usually name and role, it’s
26+
effective to add a fun question (generally non-technical) to ask around;
27+
these are:
2128
- Favourite song, movie, dish, sport, game, tourist spot etc.
2229
- If you could teach the world one thing, what would it be?
2330
- What’s one interesting fact about yourself?
2431

2532
## How to address any critical issues in the project/community
2633

27-
- Sometimes, there are certain matter which needs to be brought up before the community for a more open and inclusive discussion
28-
- This helps in taking into account various perspectives from the community and choosing a solution which is in the best interest of the community
34+
- Sometimes, there are certain matter which needs to be brought up before the
35+
community for a more open and inclusive discussion
36+
- This helps in taking into account various perspectives from the community and
37+
choosing a solution which is in the best interest of the community
2938

3039
## How to keep the conversation going?
3140

32-
- Occasionally, there are situations when the conversation during a community meeting dies, and it feels like you’re in a graveyard 🪦
33-
- Having a set up of backup discussion points can help remove the awkward silence
34-
- Going around in the audience to ask if they have something interesting to share with the community
41+
- Occasionally, there are situations when the conversation during a community
42+
meeting dies, and it feels like you’re in a graveyard 🪦
43+
- Having a set up of backup discussion points can help remove the awkward
44+
silence
45+
- Going around in the audience to ask if they have something interesting to
46+
share with the community
3547
- What projects are they working on?
3648
- Something they learned which could be shared with the community
3749
- Asking around if the attendees need any help
3850

3951
## How to conclude the meeting successfully
4052

41-
- The meeting should end on a positive note - if there has been any heated discussion/arguments, try to conclude before the end. And generally, in the end, you should:
53+
- The meeting should end on a positive note - if there has been any heated
54+
discussion/arguments, try to conclude before the end. And generally, in the
55+
end, you should:
4256
- Conclude important points
43-
- Revise tabled items - which were supposed to be discussed but didn’t get time
57+
- Revise tabled items - which were supposed to be discussed but didn’t get
58+
time
4459
- Tell them about the next meeting
4560

4661
## How to run office hours?
4762

48-
- Office hours are a great way to invite the community and answer their questions, guide them, help them understand any specific about your OSS project etc.
49-
- Usually, the structure of office hours is open, but there are certain tips which could make it run smoother; they are:
63+
- Office hours are a great way to invite the community and answer their
64+
questions, guide them, help them understand any specific about your OSS
65+
project etc.
66+
- Usually, the structure of office hours is open, but there are certain tips
67+
which could make it run smoother; they are:
5068
- Greet and acknowledge every participant during the office hours
5169
- Try to answer at least 1 question from everyone
52-
- Maintain a document so that everyone can jot down their questions, so it’s easier to go through them
70+
- Maintain a document so that everyone can jot down their questions, so it’s
71+
easier to go through them
5372
- Invite them to the community meetings for broader discussions
5473

5574
## How to take meeting notes?
5675

57-
- Every community meeting should have some form of public record which can be stored as an archive - taking meeting notes is one way to do it. There are several ways to take notes efficiently, which is helpful for the community
58-
- Record the essential things, decisions, and resolutions that were discussed during the meeting
59-
- Writing cues during the meeting and then converting them into proper sentences is a helpful thing to do when you’re moderating/running the meeting
60-
- Try to have a TL;DR section at the top - this would help the reader to decide if they want to dive into the full notes or not
76+
- Every community meeting should have some form of public record which can be
77+
stored as an archive - taking meeting notes is one way to do it. There are
78+
several ways to take notes efficiently, which is helpful for the community
79+
- Record the essential things, decisions, and resolutions that were discussed
80+
during the meeting
81+
- Writing cues during the meeting and then converting them into proper
82+
sentences is a helpful thing to do when you’re moderating/running the
83+
meeting
84+
- Try to have a TL;DR section at the top - this would help the reader to
85+
decide if they want to dive into the full notes or not
6186
- Example at: https://zarr.dev/community-calls/2023/2023-05-03.html
6287

6388
## Some tips for your meetings
6489

6590
- Make time for demos/showcases/presentation
66-
- The community members are always looking for exciting/innovative ways to use OSS projects in their workflow, and making time to showcase the work is a good element of a community meeting
67-
- The demos/showcases could be - how your project is used to solve a problem in a specific domain
91+
- The community members are always looking for exciting/innovative ways to use
92+
OSS projects in their workflow, and making time to showcase the work is a
93+
good element of a community meeting
94+
- The demos/showcases could be - how your project is used to solve a problem
95+
in a specific domain
6896
- Make time for newcomers
69-
- New contributors or newcomers are the users who have the potential of becoming future maintainers and helping them in the initial phase is beneficial for both the project and the individual and is in the spirit of open-source
97+
- New contributors or newcomers are the users who have the potential of
98+
becoming future maintainers and helping them in the initial phase is
99+
beneficial for both the project and the individual and is in the spirit of
100+
open-source
70101
- Having a dedicated time slot for the newcomers to help them
71102
- Make community meetings accessible to the broader community
72-
- Take into account community members in different time zones, differently abled, unavailability etc.
103+
- Take into account community members in different time zones, differently
104+
abled, unavailability etc.
73105
- Take notes and upload them to the website
74106
- Record the meeting
75107

76-
## Meeting templates (TODO)
108+
## Meeting templates
77109

110+
[Zarr Community Meeting template](https://hackmd.io/tFcffc__QRuo1UdGcGUbsg)
78111
[NumPy Community Meeting template](https://hackmd.io/76o-IxCjQX2mOXO_wwkcpg)

content/community/community-outreach.md

Lines changed: 37 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,47 +6,67 @@ title: "Community Outreach"
66

77
Use various social Media channels for outreach:
88

9-
- Twitter:
10-
11-
- Utilize hashtags relevant to the scientific Python community to increase visibility.
12-
- Engage with users by responding to questions, sharing resources, and participating in discussions.
13-
- Retweet and mention influential users and organizations to foster connections.
9+
- BlueSky/Mastodon:
10+
- Utilize hashtags relevant to the scientific Python community to increase
11+
visibility.
12+
- Engage with users by responding to questions, sharing resources, and
13+
participating in discussions.
14+
- Reshare and mention influential users and organizations to foster
15+
connections.
1416
- Share updates on project releases, new features, and bug fixes.
1517
- Highlight community contributions and achievements.
1618

1719
- LinkedIn:
18-
- Create a LinkedIn group for the project to facilitate networking and discussions among professionals.
20+
- Create a LinkedIn group for the project to facilitate networking and
21+
discussions among professionals.
1922
- Share project updates, news, and job opportunities.
20-
- Encourage community members to share their experiences and insights related to the project.
21-
- Connect with other professionals and organizations in the scientific Python field.
23+
- Encourage community members to share their experiences and insights related
24+
to the project.
25+
- Connect with other professionals and organizations in the scientific Python
26+
field.
27+
28+
## Tools for community outreach
2229

23-
## Tools for community outreach(TODO)
30+
- [Buffer](https://buffer.com/)
31+
- Buffer can be used to create, schedule and organise scoial media posts
32+
across various platforms
33+
- Atmost 3 social media accounts can be connected in the free tier
2434

2535
## Speaking at Conferences and Events:
2636

27-
- Submit proposals to relevant conferences, emphasizing the project's unique features and benefits.
28-
- Prepare engaging presentations that demonstrate the project's capabilities and use cases.
37+
- Submit proposals to relevant conferences, emphasizing the project's unique
38+
features and benefits.
39+
- Prepare engaging presentations that demonstrate the project's capabilities and
40+
use cases.
2941
- Provide live demos or tutorials to showcase the project in action.
30-
- Connect with attendees during and after the event, answer their questions, and collect feedback.
42+
- Connect with attendees during and after the event, answer their questions, and
43+
collect feedback.
3144

3245
## Teaching Tutorials
3346

34-
- Organize regular online tutorials or sprints to educate the community about using the project.
47+
- Organize regular online tutorials or sprints to educate the community about
48+
using the project.
3549
- Cover various skill levels, from beginners to advanced users.
3650
- Provide clear documentation and code examples.
3751
- Encourage community members to share their own tutorials and best practices.
3852

3953
## Writing Blog Posts:
4054

41-
- Keep the community updated on important news, such as project milestones, partnerships, and funding.
55+
- Keep the community updated on important news, such as project milestones,
56+
partnerships, and funding.
4257
- Announce major releases, highlighting new features and improvements.
4358
- Share technical insights, tips, and tutorials related to the project.
59+
- Collaborative blog posts with institutions, reseachers, groups to highlight
60+
use-cases, e.g. [Zarr x NASA](https://zarr.dev/blog/nasa-power-and-zarr/)
4461
- Recognize and appreciate community contributors through dedicated blog posts.
4562

4663
## Creating content
4764

48-
- Create video tutorials, screencasts, or live coding sessions to demonstrate the project's usage.
65+
- Create video tutorials, screencasts, or live coding sessions to demonstrate
66+
the project's usage.
4967
- Develop interactive Jupyter notebooks showcasing practical applications.
5068
- Produce podcasts or interviews with community members or domain experts.
51-
- Collaborate with other scientific Python projects for joint content creation, such as tutorials or blog posts.
52-
- Create illustrations on how your project works: https://github.com/zarr-developers/zarr-illustrations-falk-2022
69+
- Collaborate with other scientific Python projects for joint content creation,
70+
such as tutorials or blog posts.
71+
- Create illustrations on how your project works:
72+
https://github.com/zarr-developers/zarr-illustrations-falk-2022

content/community/oss_wheel.png

783 KB
Loading

content/community/project-management.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,26 @@ title: "Project Management"
44

55
## Project management
66

7-
As a community manager, you might need to onboard contributors who may not contribute in technical ways.
7+
As a maintainer/dedicated CM, you might need to onboard contributors who may not
8+
contribute in technically.
89

9-
- Send a personalized welcome message expressing gratitude and introducing the project.
10+
- Send a personalized welcome message expressing gratitude and introducing the
11+
project.
1012
- Provide an overview of the project's mission, values, and community culture.
11-
- Highlight non-technical contribution opportunities like documentation, user support, translations, design, and community management.
12-
- Create clear contribution guidelines with step-by-step instructions and templates.
13+
- Highlight non-technical contribution opportunities like documentation, user
14+
support, translations, design, and community management.
15+
- Create clear contribution guidelines with step-by-step instructions and
16+
templates.
1317
- Maintain regular communication to share updates and opportunities.
1418
- Recognize and appreciate all contributions, both technical and non-technical.
1519
- Foster a welcoming and inclusive community environment.
16-
- Ensure adherence to the project's code of conduct.
20+
- Ensure adherence to the project's Code of Conduct.
1721

18-
### OSS management (TODO)
22+
### GitHub triaging
1923

2024
- Overview of issues and PRs among several repositories
2125
- Reviewing PRs or assigning reviewers to the PRs
22-
- Solving the issues/responding to the issues
23-
- Responding - to maintain communication with the author
26+
- Responding to the unattended issues to keep conversation going
2427
- Closing stale PRs and old issues
25-
- Labelling issues
28+
- Assiging appropriate labels to issues & PRs
29+
- Archiving repositories that are no longer actively maintained

0 commit comments

Comments
 (0)