These aren’t the devs you’re looking for

February 2, 2015

In the OpenMRS community, we often hear reference to “core devs.”  Who are these people?  What make them “core devs” anyway?

A little history...
OpenMRS started when Regenstrief Institute and Partners In Health (PIH) decided to collaborate while building systems for separate HIV-related projects (Regenstrief in Kenya, PIH in Rwanda).  Originally, Ben Wolfe and Darius Jazayeri were the primary developers for Regenstrief and PIH, respectively.  Both developers were primarily focused on coming up with a solution for their own organization, but collaborated on the same platform toward that end.  Several years later, Paul Biondich, leading Regenstrief’s Global Health Informatics team, arranged for Regenstrief to fund and sustain three developers (Daniel Kayiwa, Wyclif Luyima, and Rafał Korytkowski) to be covered full-time to focus on OpenMRS development.  Because Daniel, Wyclif, and Rafał are able to focus solely on OpenMRS development (other developers in the community were volunteering time or being paid to work on OpenMRS part-time), these three devs have often been referred to as “core devs.”

OpenMRS is used all over the world with more than 115,000 downloads across more than 200 countries.  As of February 2015, there are 1263 subscriptions to the OpenMRS Developers Mailing List.  The initial release of OpenMRS 1.9 was thanks to substantive contributions from more than 70 devs.  GitHub shows 930 forks and over 140 contributors to OpenMRS Core for openmrs-core.  As of the OpenMRS Implementers Meeting in Maputo (#MOZ15), we introduced Developer Stages, both to recognize & empower developers based on their level of expertise and community engagement and to adopt a more scalable approach.  If you listen to Yehuda Katz’s great discussion Indie OSS, it’s not healthy to make a distinction between “the core team” and community.  So, why are we referring to a few developers as “core devs” and labeling the 99.9% as non-core?

These aren’t the devs you’re looking for.Obi-Wan Kenobi (sort of)

As a community, we need to evolve beyond using distinctions like “core” vs. “non-core” developers toward a more scalable approach: Developer Stages.  So, if you see me (or anyone in the OpenMRS community who agrees with me), calling someone out in the future for using the term “core devs,” please understand it’s not for a lack of respect & appreciation for the awesome contributions from those who have been attributed as such; rather, it’s out of an appreciation for all the awesome developers around the world in past & future, including the “core devs,” who have contributed and will contribute to saving lives through coding for OpenMRS.

From now on when you feel the urge to say “core devs,” try substituting it with “/dev/5’s” or “available /dev/4’s & /dev/5’s.”  As a community, we will be working to make this attribution easier to see and understand, so, in the future, when someone refers to the “available /dev/5’s”, they’ll be referring to far more than a three people. 🙂