---
# System prepended metadata

title: Vision of the project after phase 2
tags: [CodeRefinery]

---

# Vision of the project after phase 2

###### tags: `CodeRefinery`

- Sustainable Improvement of Software for Research
- Teaching modern social software development skills, technologies, and practices
    - who are stakeholders of this?
        - researchers (from humanities to physics)
        - lectors?
        - public and private organisations
        - open source projects
        - software developers
    - what are the core values associated with this?
        - presentation of current best practices
        - various modes for learning
    - can we plausibly deliver these values? 
        - yes. list references
- Consulting projects and programmes on best practices towards sustainable development
    - who are stakeholders of this?
        - researchers (from humanities to physics)
        - public and private organisations
        - open source projects
        - software developers
    - what are the core values associated with this?
        - expert assistance and help in adopting processes and technologies in customized use cases  
    - can we plausibly deliver these values?
- Teaching and mentoring in form of hackathons or similar
    - who are stakeholders of this?
        - researchers (from humanities to physics)
        - public and private organisations
        - open source projects
        - software developers
    - what are the core values associated with this?
        - expert assistance and help in adopting processes and technologies in personalized use cases
    - can we plausibly deliver values? 
       - yes, e.g the testing workshop & hackathon March 2021 was much appreciated  
    - mentoring is staff intensive. These hours need somehow be financed, and that is a large cost (crude estimate ~800 NOK / hour and person including all?)
        
# Governance of the project after phase 2

From [1]:
> In its essence, governance is about high-level strategy, oversight and accountability. Management is about the day-to-day operations of an organisation

> [name=rkdarst] In standard carpentries style they have a very heavyweight, corporate-based approach, but is needed when you have stakeholders and so on.  Open projects have to grow a lot before they get to this point.  We should also think about how small, starting projects are managed and take the best from both strategies.

We are hoping to establish an open governance structure for a **non-profit project** beyond 2021.
> [name=Anne Fouilloux] I don't know what is a non-profit project. Do you mean non-profit organization?
project
  - Yes, a project that aims to become a non-profit organization as soon as possible
  > - [name=nt] We need to make sure that making a non-profit org. and working there as a part of tasks at the employer is legally acceptable (i.e. not conflicting with regulations/rules of the employer).


## Notes from meeting RB-RD

- consider following https://jupyterhub-team-compass.readthedocs.io/en/latest/governance.html
- two levels: team meetings (regular meetings, people doing the work) and board meetings (meet every 2-3 months or on demand, representing organizations, community)
- board has rotating "chair" (every 6 months? with 6 months overlap with successor)


## Suggestions from staff meeting 2021-08-02

- Who are/to be involved: everybody who is interested. Working group will be formed.
- Clearly state that the goal is a non-profit organization
- Clearly define what should be governed
- Reference book: "[AGILE STARTUP BOARDS](https://www.boardmangrow.fi/content/uploads/2018/03/Agile-Boards-leaflet.pdf)"
- Need to define minimum to be able to apply for funding (ex.) and have others join the project in-kind/volunteer.


## Goal of the project

Copied from [2]:
> CodeRefinery (sustainability phase) will ensure the long-term success of the lessons developed during previous project phases by funding a central coordination of in-kind contributions, thus i) coordinating and delivering a sufficient number of accessible high-quality training events contributing to level-up research software development skills at reduced costs for each participating institution, ii) maintaining and developing further an inclusive community for software- and skill development and fostering the co-creation and co-maintenance of FAIR learning materials, videos, and other resources, iii) and increasing the number of instructors trained with pedagogy suitable for teaching technology from novice to intermediate level learners.


## Situation before October 2021

The formal governance body of this project is the steering group which represents all partner organizations of the project and in which steering group members have been appointed by their respective organization. The project manager is responsible for the day-to-day management and has been appointed by NeIC.


## Situation after October 2021

The CodeRefinery project has applied to the NeIC Open Call 2021 ([2]). If the proposal is successful, then the governing body will need to be represented by the in-kind partner organizations.

> [name=rkdarst] I guess if NeIC funds CR, then there has to be a steering group for NeIC funding, like before.  But either way, we should have a governance method where non-NeIC partners can join have a voice.  Because of the way legal stuff goes, will need two structures?  Either way the non-NeIC one will be the hard one.

If the proposal is not successful, also then it makes sense to continue this project and this document is to plan this transition in a structured way.
> [name=Anne Fouilloux] I disagree strongly: it does not make sense to continue the project. What makes sense is to have a non-profit organization to i) keep the name CodeRefinery (as a "trademark"), ii) be able to apply for funding as CodeRefinery organization, iii) eventually deliver workshop with volunteers (but only if it helps volunteers in their own career).
> [name=rkdarst] I interpert this document as: these notes become the planning/governance structure of that nonprofit we have to create if the NeIC project is not funded.

## Why

Bootstrapping a governance body is not easy and is a process but perhaps it can be helpful to start asking why we do this? What do we want to achieve by this? What do we want to avoid?

What do we want to achieve?
- Offer a decision mechanism that partners (in-kind, volunteer) can turn to
- Define who owns the intellectual property (the GitHub repos, the data, website) and the name
  > [name=rkdarst] IP is simple to me, distributed copyright.  Does this mean "who sets policies for github organization/domain/HackMD org/data locations."
- There is a decision process on what to call a CodeRefinery workshop that organizations can turn to in doubt
- Contact point for coordinating workshop scheduling across centers
- Consortium can participate in funding applications
- A body that gives direction to the effort
- Have any way to make decisions on behalf of the project and communicate on behalf of the project

What do we want to avoid?
- Unclear contact point
- Some other project/company takes over the name CodeRefinery which may harm the reputation of the current project and project members
- Currently fruitful collaboration simply stops
> [name=Anne Fouilloux] Maybe we should explain why collaboration would stops (current staff evolving in their career and no on-boarding procedure for new staff)
- Training offerings stop
> [name=Anne Fouilloux] This is not really a "CodeRefinery" problem. Training offerings will probably stop if there is no paid staff anymore (who is paying is not important). 
> [name=nt] The two above could be happening due to similar reason; namely if an employer organization such as a university considers if it is worth, or even better, beneficial to let employees work in this context (or in other words, take advantages of CodeRefinery as an opportunity) and deliver trainings to their "end users" by coorperating with others in CodeRefinery and using the lesson materials (and develop them further). 
- Fragmentation into national CodeRefineries
> [name=Anne Fouilloux] And then what would be the disadvantage? I mean we should explain why this is a problem.
- People or organizations want to do things but because nobody wants to decide or take the responsibility, good initiatives stall.
> [name=Anne Fouilloux] CR training material can be reused/mixed, etc. without the permission of anyone. Here (like for the previous point), we need to elaborate on why collaborations within the Nordics for developing & delivering training are necessary. 

- [name=rkdarst] Too much structure too early


## What should the governing board be deciding on, advising on, and be informed of?

(Good question taken from [1])

Some thoughts on points which may or may not fall into these categories:
- Strategic plan
- Mission, vision, values
- Budget
- By-laws
- Selecting chair
- Electing some members
- Deciding whether to participate in funding applications
- Formation of committees
- Equity, inclusion, and access matters
- Representing the project at conferences/media

If management is about the day-to-day, where does management happen?
> [name=Anne Fouilloux] This is where we should talk about CodeRefinery membership. So at least we have a bit of money for managing, advertising, etc.


## How

If the proposal is successful, then a starting point for a governing body could be formed by representants from all in-kind partners. This body can then bootstrap an election process and develop by-laws.

But what if the proposal is not granted? The board could then still be formed by representants from those organizations and groups who want to collaborate anyway. It would be nice if also volunteers who may not be attached to a contributing organization can be represented.
> [name=Anne Fouilloux] Creating the CodeRefinery organization should not be linked to it. We need to create a non-profit organization for CodeRefinery as soon as possible (so we can also apply for funding).

Maybe too idealistic but RB hopes that we could start this by inviting everybody who is really interested in the future of the project to join the governance body.
> [name=Anne Fouilloux] I am not sure it is idealistic but it can be very messy. From my point of view, we should define a list of necessary "roles" for running CodeRefinery non-profit organization and as part of it a CodeRefinery membership. Then we can discuss who can be part of the governance body (paid members).


## Members

Carpentries have decided to use a combination of community-elected, and council-elected members ([1]).

Questions:
- Community-elected members: who are the community?


## Code of conduct

The governance board can adapt a worked out code of conduct from a similar organization, such as the International RSE Council, which has recently been through the process of drafting a [code of conduct](https://researchsoftware.org/council/code-of-conduct.html).


## References

- [1] https://carpentries.org/blog/2021/07/carpentries-governance/
- [2] https://coderefinery.org/about/reports/open-call-2021-proposal.pdf
- [other writing from rkdarst, more focused on practicalities](https://hackmd.io/l9rOEa5eSjSXNa_5xqEqDA)
- recommended reading by RD: [Agile Startup Boards leaflet](https://www.boardmangrow.fi/content/uploads/2018/03/Agile-Boards-leaflet.pdf)