As I learned at the MirageOS retreat, good community work is about three things: Giving people time and space to deepen social ties, but in a way that suits them individually; daring to let go of structure and become all about participation in order to build up energy and motivation for the time between the retreats; and providing really, really good food.


FOSS infrastructure projects have very different ways of collaborating and organizing their communities – the spectrum varies from communication over pull requests, IRC channels, mailing lists to regular meetings, either digitally or in person. As these communication channels came up frequently in our interviews, either as a factor of creating community or as a stumbling stone when communication and interaction among collaborators are not managed well. Among the biggest challenges for successful community work are: Getting new people involved in the project, both socially and in regard to shared knowledge; clearly named contact persons for community issues, especially non-technical ones; and the very different needs of paid staff, freelancers, and volunteers that need to be moderated and managed.

One project we talked to stood out in regards to how they conceptualize this challenge: MirageOS. To learn more about their community formats and the people involved, and whether their concepts of community might be of value to other FOSS infrastructure projects, I asked to join them for their semi-annual MirageOS retreat.

My sincere thanks to everyone at the retreat for letting me join, and for sharing their thoughts, their love for their work, and their experiences with me!

Moroccan tiles with a colorful geometric design
A historic venue: Priscilla Queen of the Medina (photo: IDE)

The MirageOS retreat

About the MirageOS community

The structure of the MirageOS community is in some respects average, in some respects unusual. Average, because the roles in the community are quite similar to those we encountered in other FOSS infrastructure projects: People self-identify as volunteer or occasional contributor, as freelancer, working either on MirageOS or with the underlying programming language OCaml, as community organizer, and as employee at one of the companies from the MirageOS ecosystem. At the retreat itself, even more people were present: developers with a vague interest in either MirageOS or OCaml, but also people in supporting roles (e.g. in administration and funding), artists and the odd researcher like myself.

What sets MirageOS apart from other projects is the fact that it is based on the functional programming language OCaml, which was created in an academic context. MirageOS itself still has strong ties to academia, but it also has a solid business side and volunteer contributors outside of academia. The special feature of the MirageOS community is that it is small enough for these three groups to interact on a regular basis and on a personal level.

About the retreat

The MirageOS retreat plays an important role in creating a spirit of community between people of different personal roles as well as of the different backgrounds. The retreat has been taking place twice a year since 2016. All but the second event have taken place in the same venue, an artist community space in the historic center of Marrakesh that serves the participants as both a place for work and living space for one full week.

The retreat is radically self-organized. There is a very basic structure to the day: The participants share three meals a day (more on the importance of food later) and take part in the daily standup. Everyone sets their own goals for the day, which are shared at the standup meeting, together with accomplished tasks, current challenges or requests for help. The equipment is also basic and communal: Internet access runs over one LTE access point, the furniture is functional, rooms are shared, there is little space for privacy.

All participants can volunteer to give a talk in the evening, about work-related or very different topic, serious and not-so-serious projects. Excursions into the surrounding Medina of Marrakesh or sightseeing tours are also self-organized.

There is a moderate participation fee that covers room and board; people of little financial means can ask for a rebate. The participants also cover their own travel costs. In some cases, this is covered by their employers. Financials are run through a non-profit organization that serves as a fiscal sponsor for a number of FOSS projects.

14 participants agreed to be interviewed, six of which were attending for the first time, three were female-presenting.

The organizers

The event is organized by the MirageOS developers themselves, with one person taking care of most of the logistics before and after the retreat. The spirit of a self-organized event serves two ends: Firstly, it pushes the participants towards taking an active role, secondly this is taking load off the organizers’ shoulders.
The idea behind the retreat is to start a community; meeting in person from time to time helps while working remotely by building social ties. It is also a goal to steadily grow the community through the retreats – around 20–30% of the participants attend for the first time. To keep track on who participates in the retreat, people write a short, informal application letter to the organizers a few months before the event takes place.

According to my own impressions, the retreat is also a check whether new people are a “social fit”: By sharing one space almost all day for a week, the participants implicitly negotiate the terms of social interactions; I experienced them as friendly and calm, honest, willing to share and focused. This was also mirrored by the recurring participants, who emphasized the culture of sharing, but also of respect of each others’ time.

Why do people take part?

The MirageOS/OCaml field has its own appeal: The MirageOS project is considered “cool” by number of participants, as are the people who are involved, who are described as domain experts. But OCaml too gets its fair share of praise: Its structure and design make it “so much better” than other programming languages that people make it a career choice to work in this programming language.
The opportunity to collaborate with experts, to share knowledge and to learn from others that share a similar interest, and the genuine will to get a deeper understanding of the concepts behind MirageOS and OCaml are the main causes for people to work in this field and also to participate in the retreat.

First-time visitors had a much more goal-oriented approach, which did not always pan out (see below). On the other hand, participants appreciated the fact that there is no external pressure, even in the case of those who are taking part for work – this lack of pressure enabled the participants to make the most of the unforeseen things that came up during the retreat in an almost creative way.

For recurring attendees, the fact that the venue takes place at the same venue is actually a plus: It creates a sense of orientation and structure and security of what to expect.

Interestingly, people’s motivation and individual goals did not vary on whether they were there for work, on their own means, or even had to take a week off their regular work; both groups were mostly driven by the intention to learn and improve, and on a less explicit note, to meet people in person and build personal ties (either as a goal in itself, or because it helps to understand people better while collaborating remotely).

Results and benefits

When asked what single aspect stood out during people’s stay at the mirage retreat, the interviewees above all else mentioned the social aspects that were also reflected in their reasons to join the retreat in the first place – overall, the (generally high) expectations were met.

Participants repeatedly mentioned the self-organized nature of the event as the core source for their motivation: For anything to happen, they need to actively shape the retreat in a collaborative way. First-time attendees assumend that this would result in ownership and long-term commitment to their work with MirageOS; those that had taken part in a retreat before validated this assumption from their past experience. The self-organized nature was explicitly mentioned as something people intended to bring back to their work or into other projects they are working on.
The very basic structure also meant that participants found the time to think and reflect on their work more than they can at work or at home – again this was true for employees and feelancers as well as volunteers.

While you would assume that the technical feats and results stood out to many at a developers’ retreat, the opposite was the case: As one participant put it: “It’s the social factor that counts – I can hack better at home.” Even though this sentiment prevailed, an impressive amount of work was accomplished during the retreat; getting things done was just not the motivation, it was the result.

This also reflects in the results the organizers want to see: To get more people to write code over time.

Changing experiences

I asked those that had attended the retreat several times how their perception of the event had changed over time. The general trend of “less tech, more talking” prevailed here as well. In an interesting dichotomy; people on the one hand stated that they had learned not to bring too many tasks or goals (or none at all) to the retreat, they also felt that they were now both contributing more to the event (e.g. by organizing things ad hoc during the event) and getting more out of it.
Participants welcomed the fact that the retreat is taking place in the same venue every time; it helps to develop a routine for the time spent there.

What didn’t work out?

Not all is perfect though. Apart from initial goals that were set too high, two factors lead to the retreat not being quite as successful as it could have been: First and foremost, the heat in Marrakesh in late September; and secondly, the comparatively low bandwidth of the internet access. This was contested though: While some mentioned this as an obstacle to their productivity, others welcomed it, since it reduced distraction and made people focus more on the retreat.


I also asked how the participants thought that the retreat could be improved. The answers showed that people are not the same; most aspects mentioned here were mentioned as an advantage of the retreat by someone else.

Working and living conditions

The art space where the event takes place is a historic house in the Medina of Marrakesh, in which rooms open towards one central courtyard. People worked either there or on the roof on makeshift furniture; this setting was less ergonomic than a regular office environment and, for some attendees, after several days took its toll in form of back pains.

The shared rooms were also mentioned as a challenge; they offer little privacy and cannot serve as a “place to hide” for less extrovert people or for people who see this more as an event they attend for work.

The sometimes challenging working and living conditions might contribute to who is participating, and who is not: A lack of accessibility and of options to withdraw from the crowd can keep people away.


The retreat “is a homogenous crowd, and it will likely remain that way – it’s a shame”, as one participant put it. Diversity – or lack thereof – was mentioned several times during the interview; both organizers as well as participants are aware that the community is by no means a representation of humankind. In addition to the working conditions that might deter people of a more advanced age, people with chronic conditions or disabilities, people of color, people from the global south and women in general were also underrepresented – of the four women present, only two were contributing of developers. (EDIT: This has been a comparatively low rate for women participants at the retreat – for the following meeting that was planned for March 2020, 8 of 40 registrations were made by women, all of which actively work on OCaml or MirageOS projects.) With its background in European Academia, this is not surprising and compares to the makeup of other communities.

The organizers try to mitigate this in several ways:

  • Unbureaucratic travel support is offered for people who do not have the financial resources.
  • Women are actively encouraged to take part – even from non-technical backgrounds. While this might help to normalize the presence of women at the retreat and make their needs more visible, it does not automatically lead to more women working on MirageOS.

These challenges in regards to diversity show the limits of the retreat in regard to diversity efforts: It brings together people who are already connected to the project, even if only in a loose fashion. However, it does not effectively bridge the divide to underrepresented groups, since it comes with high stakes: Newcomers, especially from diverse backgrounds, need to be able to ascertain that their time and money will be well spent at the retreat. For people with tight resources, forming or strengthening social ties can be to little of an outcome, as they need more palpable results like attestable professional growth, work opportunities or contracts.

What can other communities learn from the MirageOS retreat?

How far can the MirageOS retreat serve as an example to other communities? I asked this question to the participants, since most of them are engaged in other projects as well and thus have the possibility to compare different approaches.

The self-organized approach towards a community retreat featured centrally here: As one participant put it, “an event should not be in the way of people to interact”, e.g. by strict timetables or structure for structure’s sake. For this approach to work, the participants need broad-mindedness or tolerance towards people who work at a different pace or have different goals. For this, expectation management is key: Individual goals that are set too high can lead to disappointments and build up friction.

With the focus on being together in person and working side-by-side, other aspects of organizing a retreat become less important: No entertainment program is needed, nor does the retreat get boring because it takes place at the same venue every time – quite the opposite. People will organize small ways to entertain the group, if they feel like it, and they will also feel free not to take part if they are already overwhelmed by the intensity of the retreat experience. And to know the venue helps creating individual routines that also alleviate potential stress factors.

Last but not least, the one thing that was mentioned most often during the interviews has to find its place in this report: The importance of food and the way it is consumed. While it may seem obvious, the tasty and varying food that was provided by the people working at Priscilla Queen of the Medina created that little bit of structure during the day, and at the same time made this structure not about working and reporting, but about joining a communal meal, chatting, and relaxing.

The sky over Marrakesh (photo: IDE)