To Core or Not To Core? (A question each instance must answer)

About this post: this is assembled input and wisdom from @Jen, @Rachel, @lin_d_hop, @berniemabbs, @konrad , and @lauriewayne1 . We propose to gather input over 4 weeks from the discourse community, make any changes, and enact this process starting at the next instance managers meeting in October 2021.

The global team, which creates and cares for the commons (code, assets, and knowledge) has only limited resources available (time and money) to provide support to instances worldwide.

The idea of a core instance does not reflect how important or legitimate it is, so instead of referring to a “level;” we are referring to a “position” to describe how the activities of instances are integrated with the global team - core instances are closer and more aligned, and other instances tend to be more independent and self sufficient while still being part of the community.

This post is an attempt to:

  • Document community agreements regarding the rights and responsibilities of instances with different positions (core or basic) in the OFN community.
  • Propose a process, including minimum requirements, by which an instance’s position (core or basic) is accepted and formalized.
  • Propose a process for the community to review an instance’s position on a regular basis.

Rights and responsibilities in the OFN community

We have made a quick overview of instance rights and responsibilities based on the instance’s position in the community - spreadsheet link . An image of the chart is copied below.

We would like input from the community as to any item that should be in the chart but is not, or is on the chart and should not be, as well as what type of instance the item applies to.

The blue cells where there are question marks indicate that we have the following questions:

  1. Is it a basic instance’s responsibility to (that is, is this a requirement rather than a suggestion):
  • Join and participate in Slack, Github/Gitbook, Discourse, Notion, Miro, or others for collaboration with the global community?
  • Attend quarterly instance manager circle meetings and monthly global check ins?
  1. Is it a core instance’s responsibility to (that is, is this a requirement rather than a suggestion) to participate actively in circles other than the instance manager’s circle? If so, which one(s)?
  2. Is it either type of instance’s responsibility to contribute to the User Guide? If so, how is that measured?

Proposal: Process by which an instance’s position (core or basic) is accepted and formalized

An instance’s position will be agreed upon in the instance managers circle quarterly meeting.

  1. Instances willing to become a core instance can ask for approval by announcing it in the #instance-managers Slack channel and adding the request to the agenda of the instance managers circle quarterly meeting (both of these at least a week before the meeting).
  2. In the meeting, the instance’s request is reviewed, and any clarifications or questions that have been added to the agenda or voiced in the meeting are addressed
  3. If a consent agreement with no objections is achieved, the decision is considered to be made and is documented in the notes for the instance managers circle meeting.

Proposal: Process for each instance’s position (core or basic) status review

The instance managers circle is responsible for deciding the instance’s position of each instance. This means:

  1. Before each instance managers quarterly meeting, instances confirm that they are fulfilling their responsibilities and receiving services from the community that they are entitled to.
  2. If this is not the case, this concern should be brought into the agenda for the instance managers circle meeting, and the circle will decide on the appropriate action, which may include checking in, offering support or downgrading an instance’s position.

References:

4 Likes

This is a long post! The questions for you to consider and respond to in your reply, if you want, are:

  1. Is it a basic instance’s responsibility to join and participate in Slack, Github/Gitbook, Discourse, Notion, Miro, or others for collaboration with the global community?

  2. Is it a basic instance’s responsibility to attend quarterly instance manager circle meetings and monthly global check ins?

  3. Is it a core instance’s responsibility to (that is, is this a requirement rather than a suggestion) to participate actively in circles other than the instance manager’s circle?

  4. If so, which one(s)?

  5. Is it either type of instance’s responsibility to contribute to the User Guide?

  6. If so, how is that measured?

  7. Do have clarifying questions or additions to the proposal above for " Process by which an instance’s position (core or basic) is accepted and formalized"?

  8. Do have clarifying questions or additions to the proposal above for “Process for each instance’s position (core or basic) status review”?

1 Like

Thank you Laurie, for posting!
I am looking forward to hearing the opinions and suggestions of all the other awesome people here!
What about you, @dthomas @lbwright22 @thomaz @romale @Kirsten @VPotvin @hernansedano @alvarosaco @satya @DavieP

2 Likes

and @Evonne @ferrazfil? Sorry, there are only 10 mentions allowed in a post. :slight_smile:

3 Likes

Hi @lauriewayne1, I have read the post. Two questions comes to my mind:

  • What problem are you trying to solve to non core instances with this proposal?
  • With this proposal the global team are going to free resources (time and money)?

Hi @hernansedano as this proposal is basically about clarifying in instance’s status my thinking is:

  • There is not currently an established/documented way for a non-core (basic) instance to become a core instance. A non-core instance is currently wishing to become a core instance and is asking how that happens and since it has happened informally up to now there is not a good answer available to that instance.
  • Because the proposal includes expectations regarding contributions (both time and money) from all types of instances, there may be more resources available to the global team. Because the process will be clear and not ad-hoc, existing resources may be used more efficiently.

That’s my take on it. Looking forward to other perspectives!

3 Likes

Thanks @lauriewayne1 now is clear for me the necessity, I guess is an important core instances decision.

@hernansedano yes, and for any instance that might want to become a core instance at some point. My understanding is that any instance that has someone who has signed the community pledge for that instance gets a voice?

First of all @lauriewayne1 thank you for starting this topic as I believe there is a bit of confusion of where the responsibility of an instance starts and finishes, and how can we support the current needs of the network without getting lost.

I have made some comments on the google doc, but will try to further present my views on the matter (to highlight these are my own views and not the views of OFN Ireland).

@ferrazfil could you elaborate more on your proposal to subdivide each classification (core or basic)? What problem is it solving for whom, what are the definitions of “junior” or “senior”, what is the process for an instance to be so classified, and would they have a different set of rights and responsibilities?

1 Like

@lauriewayne1 will try to go over your questions one by one:

What problem is it solving for whom?
r.: the problem to be solved is to further clarify and support both the incoming instances and the ones that have been around for a bit longer.
More specifically, in your initial proposal you are trying to clarify which can instances take different roles depending on how much they can contribute. However, what they can contribute is not static in time. As I mention in my earlier post, a newly arrived instance, could in principle, provide resources to become Core, but that does not mean they have enough experience to participate in all core circles. This would probably need a bit more support from more senior instances until they get there.

In the extreme opposite, you can have an instance which despite having been associated to OFN for while (more than 2-3 years) cannot extend the resources to become core, but maybe could contribute to some specific tasks (eg.: contributing to develop the user-guide; contribute to a communications circle perhaps, organize gatherings, etc…).

So in my view, the key problem is: there is much work to be done in the network and it seems to me, that a lot of responsibility is put ion the shoulders of Core instances that could be distributed by others. Maybe this happens because there is a misconception (or miscommunication) about how instances that are not core (or have not been around for long enough) should contribute to the network. In my view, these two extra types of instances could support in clarifying this.
Additionally, as the network grows, it will gradually become more difficult to have meetings with everyone if we want them to be effective…Therefore, it could also support the decisions around who should be called to participate in some meetings.

what are the definitions of “junior” or “senior”?
r.: from my current experience I would make a general definition (but totally open to change)

  • junior - 1-2 year in OFN
  • senior - from 2 (maybe 3) years onward

what is the process for an instance to be so classified?
r.: Same as you propose in yours, just adding the concept of junior and senior based on the time they have been associated to the network.

would they have a different set of rights and responsibilities?
r.: yes.

  • particularly in onboarding, Junior instances need to have more support… example a Junior Core instance could be supported in many ways by a Senior Basic Instance (this might actually free up some time from the current Core Instances).

  • all instances should contribute to the development of the global network, but those that have been around for more than 2 years should definitely be more involved. I guess the development of the organizational circles could contribute to clarify what needs exist and where. (Note: there should be space to open exceptions as sometimes it can be difficult enough to run a national instance… but that’s it, should be seen as an exception)

  • in decision making processes all instances are relevant + should be heard + contribute to the platform. But let’s be realistic: instances that have been around for longer and have contributed more (Senior Core Instances) should be the ones having more weight in final decision making if there is no consensus around a particular matter.

Hope I was able to clarify what meant but let me know if there is something I should mention further. In any case, if you feel what I am proposing is only going to complicate the process please move forward, because better there is a process to move with, than none (and I do like yours).

1 Like

Hello and thanks @lauriewayne1, @konrad and everyone else involved in the making of this proposal. I think it is very clear and well presented, including the questions points. These are my thoughts:

1. Is it a basic instance’s responsibility to (that is, is this a requirement rather than a suggestion) to join and participate in Slack, Github/Gitbook, Discourse, Notion, Miro, or others for collaboration with the global community?

– Yes. Maybe we could summarize this with ‘communication tools used by instances to share content and collaborate with each other’ or something like that.

2. Attend quarterly instance manager circle meetings and monthly global check ins?

– Yes.

3 and 4. Is it a core instance’s responsibility to (that is, is this a requirement rather than a suggestion) to participate actively in circles other than the instance manager’s circle? If so, which one(s)?

I’m not sure about this one, since I’m speaking from a ‘basic instance candidate’ position.

5 and 6. Is it either type of instance’s responsibility to contribute to the User Guide? If so, how is that measured?

– At a first glance this seems fair to me. Speaking from a ‘non-english speaking instance’ point of view, I think the translation of the user guide and the platform itself could count as ‘contribution’ in this respect as well. There is a lot of work involved in the translation of the platform and all the documents including the user guide, specially because the platform may work in different ways (even within english speaking countries). The contributions here may benefit the whole community, not only the instance involved.

Maybe there should be space for an instance to propose other ways they can contribute, that could be interchangeable. For example, an instance may be more apt to contribute with programming than with the user guide.

Defining how much should be contributed and measuring these contributions may be really challenging though, I’m struggling to come up with a good idea here.

@ferrazfil I understand your point. A greater number of instance types may help us be more precise in the classification. I’m wondering if it can also add more complexity to the process than needed? For example, I’m not sure that the time an instance has been active in the community necessarily means that it has more resources to make contributions. Or that a new instance has less resources.

In my view, it would be better to start off with the two categories proposed originally (basic and core) and observe how things go. We can always improve the process after some practical experience.

2 Likes

I wanted to make sure this part of a presentation that @lin_d_hop made at the last instance managers circle is captured, as it was the impetus for this conversation:

  • Some instances are managed by the global deployment process, meaning they run the up-to-date software. Others are not. This creates problems in tracking down bugs and creates unnecessary work in the community as deploying globally is super easy!

  • Some instances enable their stats and figures to contribute to the global data and others don’t. This makes it hard to tell the whole story when it comes to fundraising.

  • Some instances participate in processes for choosing issues eg papercuts, S3s. Others don’t. There is no process to decide who does and doesn’t choose. This seems unfair.

  • Could we work better as a community if we had clearer processes, similar goals, better support?

This proposal is an answer to the question: “How do we manage our commons so that we have clear rights and responsibilities?”

2 Likes

Hi @thomaz, I agree that additional changes could mean adding complexity to a process that doesn’t need them, however I feel I need to clarify my point as your comment seems to support mine… so maybe I did not explain well…

  • an instance that has been active in the community for a longer period (2 years plus) doesn’t necessarily have the resources to become Core but it does have something a newly arrived instance does not have → knowledge + experience… which means, if it cannot support anything else, it should at the very least contribute to onboard the newly arrived instance and show how to support the work being developed by the rest of the community. This should be the role of a Senior Basic Instance.
  • and exactly my point, a newly arrived instance could indeed have the resources to become Core from the very start, but it will not have the knowledge or experience to start working as Core from the beginning. In this case, this instance would be designated as Junior Core Instance and we should not be expecting that it to have the same output (or responsibilities) as a more senior Core instance. Additionally, and following the previous point, a Junior Core instance could in many ways (maybe not all) be on-boarded by a Senior Basic Instance and release a bit the load on the shoulders of other Core instances.

I am using on-boarding as a key aspect but it seems there is as much more that can and should be done (improvement of communications, governance, fundraising, etc.)… we don’t all have the same money, the same number of people (paid staff or volunteers) …even in the best cases we see big gaps to be satisfied. So let’s share the load, let’s try to understand how we can better contribute with what we have, seeing that none of us has it all, but we should all try and improve our work to make our community better.

@ferrazfil what do you mean ‘does not have the resources to become core’?

There are core instances whose 40% of time/money is a few hours a month of coordination. Others whose 40% is hundreds of thousands of euros. The ask is not a flat fee but a suggested percentage to enable this spectrum. So I would be interested to understand more about resources being a block.

@lin_d_hop I am not sure sure I understand your question and yet I am happy that you have made it. Mainly because I feel there is some disconnect between the terms we are using.

Here goes my attempt to go through your point;

  • I wrote a conditional sentence “does not necessarily have the resources…” meaning some might, others maybe not.
  • About those who cannot → I know of at least 3 instances in the European territory that do not have the money nor the time to dedicate to global. In the case of the money, it seems that is the situation with most instances and I believe there is not big dispute on the reasons why they do not have the funds to contribute. But in respect to time, what I mean is that these instances have to dedicate 100% of their available time to their own instance or maybe there won’t be an instance much longer. One of them I found recently, actually only has the server running but there is no one looking after it. So in this case, besides not having any time to dedicate (40% of zero is zero), they actually have a deficit of time and needed someone to help them. This is a quick review on resources being stuck. Its not a matter of it being a flexible contribution (which I agree with), its a matter of there not being any resources to contribute with. (there is a deeper problem here, that we should discuss in different occasion: how an instance launches and how the others can support them by making it resilient in the long term is something that affects the network as whole, not only the launching instance)
  • Please note, I believe there has to be an ask in respect to both money & time, and I feel that the founders (and other instances) that have made this network what it is, have been most kind in terms of requesting these contributions. However, there is a lack of clarity. One of them is a very tangible and clear contribution the other not so much. More specifically, it is clearer what 40% of money is, not so much what is 40% of time.
  • what is 40% of an instance’s available time? If you have one person working for your instance in principle you are more under-pressure than if you have 5 people (staff or volunteers). And what if they are not all working the same time? It seems to me that the sentence “donating 40% of time” is as accurate as “please give as much as you can”… this is another topic that should be discussed on a different occasion (how can the global network be more specific about needed contributions without being to strict but at the same time making sure that everyone understands there are pressing needs that need support).

Regardless, and please for the sake of moving things forward and taking a decision: keep the mention of 40% of money or time. We can get to the remaining aspects at a later stage. But hope this has helped in explaining my earlier point.

However, I do have a question in return, as after reading your question I was not sure you are agreeing with the proposed topic by Laurie: do you agree with different types of instances (2 types or 4 types as I proposed), or do you feel like the flexible contribution covers it all, and that there should be only one type of instance with everyone participating proportionally in the same way? If the later, could you explain what is gain from this option?

1 Like

Hi all,

I have summarized the opinions on the open topics on the second sheet in the spreadsheet. Screenshot below. From the opinions I derived a proposal (yellow column).

If you don’t agree to any of the proposed decisions, please comment here and we will try to solve it here or in the next Instance Managers Meeting.

Deadline for comments is 12th December '21.

Thanks for doing this!!! Its so nice to see all the difference thoughts pulled into one place.
I’ve made a comment but wanted to share here too - because for me its kind of fundamental to this…

Do we have the expectation that a basic instance is on a path to become a core instance? It seems to me yes. We don’t see any benefit to the OFN community to have a group as a basic instance forever. The whole point of doing this, it seems to me, is that we want to help basic instances become core instances.

So - if that is the case - then wouldn’t we want to expect all the various forms of participation (attending monthly meetings, participating on slack…) as expectations of basic instances? Because this is the path through which a basic instance develops capacity and becomes a core instance.

I also commeted on the 8 hrs week threshold for a core instance to contributing to community conversations, etc. That seems like a lot of time for me. Is it just me? I think there is no way I have ever contributed 8 hrs/week on this. For sure, I spend 16 hrs/week easily bulding and maintaining the Canada instance - but I worry that if we expect volunteers to spend time maintaining the instance PLUS contributing a day a week to global discussions - we’ll burn people out fast. How many instances have volunteers who are contributing 3 days/week?

Thank you for commenting, @tschumilas! These are really great questions! I went through a partnered assessment with @berniemabbs and we definitely had some similar ones. The weekly expectation is a lot, and I am not even sure a number fits here, but how should we characterize or quantify regular contribution?

The bigger and more important (to me) question is whether the only path for an instance is from basic to core. I wonder, in terms of belonging in our open source community, whether the imperative is “get big or go away” or if there might be another choice. Two of the big consequences of making a decision like that (which of course includes a definition of “big enough” and also probably a time frame) are:

  • Instances that do not make the grade would basically be “kicked out” of the OFN community, and we don’t really have a definition of what that would mean - this sounds like a rewrite/re-doing of the community pledge and our policy about what “an OFN instance” is, and
  • Independent non-branded instances may proliferate, diluting or harming the reputation of the “official” Open Food Network product (since they would be unsupported by us but still look like us, even if they did not use OFN branding which will someday be trademarked) and potentially weakening both the diversity and range of the community and our ability to accomplish our mission

Few things go on forever, but is there a disadvantage or burden to the community for a basic instance to remain basic without making progress towards becoming core, and, if we prefer for an instance to become core in some timeframe (?), is there sufficient incentive for them to do it? Right now, if seems like the only big differences are that core instances get more technical support and more product input, and are expected to contribute more money. If basic instances are taking care of themsleves and contributing to community conversations including things like bug reports and documentation, is that enough, or do we want to set up a “pay to play” expectation after a known timeframe? As the recipient of much generosity from the global team and from individual instances, most notably and significantly, Canada, I do really want to get to a place where we can “give back” - maybe an agreement like a minimum financial contribution ($10k? $20k? something else, based on usership?) after some timeframe would both motivate an instance to raise funds and cause them to ask the hard question as to whether they are viable/sustainable/the right approach to solving food system issues in their region.

Hi, my comments:

  • “Is it a basic instance’s responsibility to create a business model or sustainability plan for the instance?”
    • The proposal is “No”, but this is the big challenge our instance is trying to solve in this moment, and if we can’t solve it soon the we have to close the instance here. Why the proposal is “No” the idea is to subsidize the instance from global pot?
  • In the same line I think the participation of a basic instance in the global meetings should be optional, the main focus first is to be financially viable.