# CodeRefinery governance (draft)
Authors: RB, RD
:::info
- **Executive summary**: The goal is to define mission, vision, and guiding principles
and to define and set up a decision body and process which would take over the
responsibilities starting 2025-01-01.
There are many blanks and questions below. To be discussed and worked out.
Goal is to have a starting point that the team and steering group
is comfortable with and to form a working group which will work out details.
- This document: https://hackmd.io/@coderefinery/governance
:::
:::danger
Questions:
- Mission, vision, guiding principles: what is missing?
- Initial board composition? The NeIC project partners? What if they prefer not to or are inactive?
- proportional to activity 2023-2024?
- What if a board member leaves?
- Can community elect a board member?
- Should be able to, yes.
- What decision necessitates board input?
- Initially guiding principles (part of foundation document), in principle anything they haven't delegated to a CM.
- At which level of support should a partner be offered a board seat?
- Board decides. Initial principle is "those with in-kind work".
- "This is a volunteer organizaiton, no person has any requirement to do anything." - this is currently not the case but maybe we want this to be the case?
- I guess that's more for community, rather than paid staff. Paid staff do what their employer says.
- Responsibilities for future board: what should be left out or added?
- Who/what has ownership over intelectual property? Maybe case-by-case?
- case: teaching material publicly available – CC-licence?
- case:
- Transfering IP is probably very hard. Distributed IP is probably needed.
- Independent non-profit organization
- Find the carpentries cooporation model and propose them to be in the board
- E.g. Science library of University of Oslo
:::
[toc]
## What is CodeRefinery
(introduction)
## Mission, vision, and guiding principles
(RD: when thinking of these, think "what makes us different from others?")
Mission (what we do and why we do it¸ 2025):
- CodeRefinery improves science and research by providing education in the tools of computational science to a diverse audience.
- ~~provides~~ intermediate level teaching more immediately applicable than one gets in academic courses. We
- CR empowers XX by providing skills needed for achiving YY , through providing training on practical skills.
- ~~We are a training network because together we can develop and deliver better training than alone.~~
- fill gaps between acamedia's lack of training in certain areas
- preparing people and communities for high-performance computing and AI
- foster a culture of FAIR, collaboration and openness in research software parctices
Vision (what we want to achieve):
- We create a highly skilled academic community who can do better, more reproducible science.
- Our core workshops are a regular recommendation for any students or researchers who does computational research
- We have a wide variety of other rotating workshops, organized by partners but with contribution by many
- When research projects ~~write proposals that include training, they think about us and include us~~ need extra training, they think of us and our team.
- (...)
- skilled trainers and build knowledge transfer and build competence
- highly skilled researchers and staff
- Create a group of good trainers in partner institutes.
- bringing academia into digital age
- equip society with tools for collaborative and reusable research
Guiding principles (when a difficult decision needs to be made, we invoke the following guiding principles):
- At our core, we are an open project and structure our working methods like one. Our outputs are openly licensed with distributed copyright.
- We optimise for practical usability for those who lack skills in reproducible computational work. We don't try to replace career-oriented IT training.
- Make people's lives easier.
- suggest to make more tangible.
- When in doubt, do what makes science/research/academics more reproducible.
- Make it easier for people and organizations to participate.
- Encourage collaboration when posssible to do so.
## Project governance 2016 - 2024
- Initially: NeIC board
- NeIC board transfers management to steering group via project directive
- Project partners each appoint a steering group member
- Steering group meets 2-3 times per year and makes big picture decisions
- Day to day decisions by project manager in communication with steering group and project owner (NeIC)
- Project manager reports to NeIC and project owner and steering group
- Project manager is responsible for the project budget
- Project manager tries to get support and consensus from the project team and community
## Scope and responsibilities for future board
- Strategic and organisational planning
- Ensuring the effective implementation of community objectives
- Financial oversight
- Business plan and budget plan
- Capacity plan
- Fostering collaboration among members
- Name, brand, and public image
- Steering the lesson portfolio
- Coordinate community initiatives
- Manage accounts: Freshdesk, Twitter, Fosstodon, GitHub, domain name, HackMD, Indico, chat, mailing list, GitLab, YouTube
- Manage the data and data sharing policies
- Contact point
- GitLab (maybe)
- Intellectual property
## Outline of the structure
- Partners: the institutions that collaborate, and unaffiliated inviduals
- Board: high-level strategy and help. Can be consulted on big decisions and for tricky trade-offs. Within mission statement, delegates all other decisions to community managers.
- Community managers: Manage day-to-day work and connection with steering group. Build consensus among those doing the actual work for the day-to-day operations.
- Community: does work
---
Some organisations have customers that would benefit from our training. Those organisations could provide trainers for CodeRefinery because their customers get the training.
## Board
- Initial board is one person per organization of the NeIC project.
- Board decides its future composition, probably once a year.
- Board confirms partner-level contributions.
- Board confirms community managers (likely with the community's input) and delegates most daily operation to them.
## Community managers
- Coordinate most of the day-to-day work.
- Are responsible to the board, but mainly lead the community in doing the work.
- Ensure rough consensus and push things forward if it can't be done.
- Can appoint (=recognize on the website) leads in different areas.
## Community
- Community doe most of the work, and should be recognized as decided by the community managers and board.
- This is a volunteer organizaiton, no person has any requirement to do anything.
- Members are expected to abide by our community standards of cooperation and respect.
## Code of conduct
We take our [code of conduct](https://coderefinery.org/about/code-of-conduct/) as starting point but suggest to adapt it to
the governance structure and decision making process.
## Conflict resolution
Questions to be worked out:
- What to do if there is conflict within leadership?
- Conflict within community?
- Conflict between leadership and community?
- What if a collaboration partner becomes problematic? (mission, guiding principles, code of conduct)
## Conflict resolution
Questions:
- What to do if there is conflict within leadership
- Conflict within community
- Conflict between leadership and community
- What if a collaboration partner becomes problematic? (mission, guiding principles, code of conduct)
## Community meetings, communication, and reporting mechanisms
This needs to be worked out.
Data sharing policy needs to be worked out.
## Amendments to the governance document
Board can change based on majority vote.
## Periodic review and evaluation
- How often do we review the governance document?
- How do we evaluate the success of the community and project?
## Inspirations for this document
- NeIC/NICEST2 project governance draft (big thanks to Anne Fouilloux)
- https://carpentries.org/blog/2024/02/revisions-to-the-carpentries-governance-structure/
- https://hackclub.com/team/
- https://jupyterhub-team-compass.readthedocs.io/
## Letter to our managers
Hi [name],
As you know, I've worked with CodeRefinery for [duration], and I think it has had a great impact for our community. Do you think I could keep working with this group in 2025 and after, once the project ends?
You can see our impact [here]: as you can see, [X] people from [my location] have been trained and XX% would recommend us (in our recent survey, [x]% of people would recommend us 10/10!). [x]% of people say that thir research is more reproducible and [x]% have said they have introduced what we teach to colleagues.
We would like to continue like before: I spend [x]% of my time on the teaching, with an emphasis on our local audience. In return, we all work together and put on much bigger and better courses than we could ourselves. I would need to know that I can record the time to my existing [teaching] project.
In return, there would be a new steering group of the partner institutions where you, or someone, can give high level direction to the group.