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

add community blogs #860

Merged
merged 1 commit into from
Apr 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions content/blog/2024-04-20-writing-retreat-community.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
+++
title = "In-person meeting summary: Community"
slug = "2024/04/10/writing-retreat-community.md"
description = "What is the CodeRefinery community to you?"

[extra]
authors = "Samantha Wittke"
+++

As mentioned in a previous blog post on social media strategy, it is our desire to build and expand the CodeRefinery community around our shared interest in FAIR research software practices.
currently, the CodeRefinery community mainly lives in the Zulip chat, which is something we want to expand to our various social media platforms. People that mainly engage in our chat are spread all over the Nordics.
Some of these people are even located in the same country, but can live hundreds of kilometers apart.
In order to bring the community together and develop an onboarding strategy to the community, we first need to look at what the CodeRefinery community actually is.

## The CodeRefinery community

The first question we asked to the participants of the in-person meeting in Tromsø was "What is the CodeRefinery community to you?".
Answers:

- A place where it feels safe to ask questions around the coderefinery workshop, but also beyond
- A place to get some interesting tips that i didn't know i needed to know (TIL)
- RSE (Research Software Engineers) that like teaching
- A small group of people that found each other and want to make the (research)world a better place + a slightly larger group of people that find the topics more or less interesting and more or less follow what is happening
- A place to share working experience and interactions with those having similar interest
- Brainstroming discussion on varied topics
- Place to get feedback and input on ideas and tasks
- Place to learn things and ask for help
- Place where there is a lot of discussions going on


## Zulip chat

The level of engagement in the community is largely tied to how much time people spend in the chat, which often is not too much. Everyone already has their own work chat, that needs to be followed, and having all the different chats and platforms can easily get overwhelming.

The main reason to engage in the chat is to ask questions and read the answers as well as coordinate CodeRefinery and other than CodeRefinery workshops (often around High Performance Computing (HPC)).
The "monday morning hello" (in #general stream) was mentioned as one way of feeling engaged with and welcome by the community.

Apart from "not enough time" to follow the chat, also its unorganized nature was mentioned as a reason not to engage.
We briefly disucussed that this can partly be solved by using the chat differently, following/unfollowing topics and streams that are of interest to oneself and setting up notifications properly. Another way to limit the information overflow could be to take better care of marking topics as "resolved", when there is nothing to be discussed anymore.

We have since been discussing a chat cleanup and reorganization/renaming strategy (to be implemented in early summer '24) and will be sharing tips on how to use Zulip efficiently as blog, event or video. In addition to that, admins will try to be more active in managing the chat.
After the reorganization and the addition of an events channel will also try to share more events of interest to the community via chat and our [calendars](https://coderefinery.org/calendars/) where appropriate.

We already implemented a "CodeRefinery for busy people" weekly chat summary, which anyone can sign up to here: [https://postit.csc.fi/sympa/subscribe/coderefinery-team](https://postit.csc.fi/sympa/subscribe/coderefinery-team). In addition to that, we will also continue the less frequent (~one email every one/two months) [newsletter](https://postit.csc.fi/sympa/subscribe/coderefinery).

## Sharing the work

One big ask from the community was to share the work/tasks more open and completely. We used to have a large list of tasks sorted by amount of time a community member has to spare. While this was considered a good idea, the tasks often lacked description, and so were not taken over by the community. We have therefore started to move the tasks back to the github organization, where all open tasks are assigned to repositories and described in enough detail that anyone in the community could pick up the task. The tasks are also labelled by the time it approximately takes to fulfill the task and urgency. Anyone can find the board under the [Coderefinery GitHub organization](https://github.com/orgs/coderefinery/projects/7).

## Community calls

An additional request by the participants for more community engagement, was to restart community calls. So we decided to have some more and more regularly in the future. A challenge to ourselves will be to also make those engaging and worth of spending ones time. These community calls can have a specific topic and/or serve as Q&A and discussion sessions for the community. It is important to us that the community gets something out from them. We also invite the community to shape these calls, by suggesting topics or take over the organization of a call. In order to attract people to the community calls, the topics and dates should be set as early as possible.

## Extending the instructor/helper/organizer pool

We also brainstormed ideas for attracting more people to be instructors/helpers/organizers of the CodeRefinery workshop. Since we upscaled the workshop from ~20 people in person workshops to ~200 online participants, being an instructor or helper in the workshop has become more complex. It is less interesting to teach to the stream, which on our end is just a pretty empty Zoom call. Our co-teaching model ensures that the instructor is never alone and the collaborative document is used to influence the teaching, but that does not replace a room full of learners. The current workshop format also seems very complex for newcomers and we have not been offering a train-the-trainer program lately (planned for fall 2024 now! - stay tuned). Due to the sometimes a little bit chaotic planning phase and usually enough team members signing up for the workshop we have not done much active outreach for the workshops lately. For this to work it might be required to contact possible instructors more directly and offer direct mentoring. Which is something we are very keen on providing and making it fun and interesting for everyone to contribute. Again, people need to get something out from it.

## Other ideas

In order to engage with the community a few other ideas were discussed as well:
We could approach different domain communities by visiting their events and presenting CodeRefinery. In addition, we could organize our own info events, targeting different groups to engage more directly. Here, also our close connection to the RSE community could be used more. Another idea was to offer further BYOC (bring your own code) sessions to provide the possibility of interacting with CodeRefinery instructors and asking for support.
63 changes: 63 additions & 0 deletions content/blog/2024-04-20-writing-retreat-onboarding.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
+++
title = "In-person meeting summary: Onboarding"
slug = "2024/04/10/writing-retreat-onboarding.md"
description = "Onboarding new people to the community"

[extra]
authors = "Samantha Wittke"
+++

In order to provide newcomers to the CodeRefinery community a good experience that inspires them to stay we need to create a welcoming atmosphere and provide a good onboarding.

## CodeRefinery onboarding

Currently, our onboarding procedure varies from case to case. The team at in-person meeting are mainly in-kind contributions to the project that joined the project on own incentive (usually after a workshop) or by being sent by their managers. Everyone got at least one personal meeting with the project manager, which introduced them to whatever was needed at the time. One thing that many of the team mentioned was that they wish they had gotten more introduction to the Zulip chat. ( More on improvement suggestions in the "community" blog post).

Team members generally agreed that active participation an interest in strategy and availability to help/teach makes them part of the CodeRefinery team.
Everyone present felt well onboarded.

## Roles

We currently have a few different roles a community member fits into:

- team (mostly in-kind contributions and highly motivated individuals, onboarding via team meeting and personal chat with the project manager),
- instructors (Workshop team leader onboarding or personal onboarding by co-instructor or the workshop organizer, often no further community engagement),
- helper / team leader (onboarding before each workshop, often no further community engagement),
- "everyone in chat" (no specific onboarding, unless they use #new-members stream; info from website)

## Where to find information

We discussed what information potential future community members should get from the website and what should be made available later:

- What do I get in return?
- How do I get started, show me the steps
- What kind of responsibilities/roles are there in the community
- How can I help or "I have only half a day this month, where can I help which will be meaningful?"

All those are very good points which we will make sure to inlcude on the website, our project board and the chat redesign (see community blog).


## The perfect onboarding

We also asked the question: "In a perfect world where everything is possible, money and time is not an issue, how would onboarding look?" to see what the ideal onboarding for participants of the meeting would look like. These were the answers:

- Join community call -> We have more community calls and better advertising of them planned in the future
- One manual page which gives overview -> We since created: https://coderefinery.github.io/manuals/onboarding/
- A video that explains how to join
- Each new member gets a mentor/buddy who mentors for a while and is their main contact and who connects them to other people
- In person event
- Co-teaching with a mentor (as one option)

The mentor system we will try to implement better in the future also beyond the workshop.

## New roles

We also asked if we need to add more roles in the community and what those would be. Most CodeRefinery team members do not have specific roles unless they decide so themselves. Roles that we do not currently have in the community:

- Ambassadors; people that could already be called ambassadors are local organizers of teams to watch the CodeRefinery workshop stream and do the exercises together and training coordinators in organizations or projects that help advertising the workshops -> We have since started to implement the [CodeRefinery ambassador program](https://coderefinery.github.io/manuals/ambassadors/) and plan to invite our known suspects soon. If you want to become an ambassador, please check out the [ambassador section on our website](https://coderefinery.org/join/individuals/#coderefinery-ambassador).
- Board; in order to continue working on CodeRefinery after the project funding ends we need to define who can make decisions
- Contributors; e.g. lesson material contributors need to acknowledged better (citation file format (.cff) in progress) and
- Heroes.

We are currently working on fleshing out what it would mean to be a CodeRefinery ambassador, what they can get out from it and how we can support future ambassadors. This could be similar to onboarding a new team member, e.g. via a community call, mentoring or some kind of a welcome package. Whenever we reach out to different research communities and during our workshops we could advertise this role. In the end it should be easy to become an ambassador and people should be able to make it whatever they need it to be.

Loading