Menü
Image of construction workers overlaid with ferns
Image of construction workers overlaid with ferns

Part I: Contributions to Social Change initiatives


This article shares our experiences in supporting social change with tech. It reflects on the underlying principles and good practices that help organizations to get most out of the help offered. We conclude with a recent example of two teams working on open source software used in the health sector.



Contributors: 

Chad Wathington | Wolf SchiegelSatish Viswanathan


< Main page | Next article >

Tech for social change is one aspect of ThoughtWorks’ social change model. For many years we have helped movements and organizations pursuing various forms of social and economic justice with software, design, consulting and strategy skills. This happens in different ways: as pro-bono or low-bono work supported by ThoughtWorks, or as voluntary work by individuals, often coordinated through our social change leads.


Understand what is needed


We have learnt that, as strange as it may sound, sometimes there can be too many helping hands. Significant crises, such as large numbers of people seeking refuge from war and violation of human rights or the current pandemic, trigger a wave of initiatives where people want to help. While this is a good starting point, people need to think carefully about how their contribution can have a real impact. 


Building the umpteenth translation app to support refugees is well-intentioned but chances are that there are better and more effective ways to help. Take time to look at the bigger picture and listen to organizations to understand what is really needed. We are experts in building software products but we are not experts in resolving humanitarian crises. 

Illustration of healthcare and frontline workers
Illustration of healthcare and frontline workers

Solidarity over charity


“The recipient community is in the best place to determine its own needs, and they have the right to determine how and when and if a service will be provided and by whom.”

— Tim Wise 


Stepping back to reflect ensures we act in solidarity, rather than with the mindset that ‘we are here to help, so get out of our way!’ It’s important not to impose solutions on organizations, but help in a deferential way. For this reason, we seek out partners that are helping people solve their own problems, and that have significant domain expertise. Our advice is: instead of trying to build expertise, seek to add what you’re good at to the experts’ toolkit.


A great example of this principle is our work with Start Network's Disaster and Emergency Preparedness Programme (DEPP) Innovation Labs (DEPP Labs) [1]. The program helped identify and incubate innovations from communities facing natural and man-made disasters. The ideas which came directly from the impacted communities were often the best fit to tackle the issues. We offered support to bring them to life and pitch to potential funders. In this way we supported many diverse innovators from four countries. Amplifying others’ contributions is a really effective way to help.


Who wants a gift horse?


Building a software product for a movement or organization is one thing. Maintaining, extending and operating it for years is another. As technologists, we need to take extra care that our solutions are sustainable and that organizations can continue to use them when we are no longer around. It is good practice to think in terms of minimum viable products and go for the simplest solution first. When working for non-profit organizations, simplicity is paramount as it is directly related to the long-term benefit of any contribution. What’s fit for purpose is also very context dependent. From a user research perspective, we must not only account for the end users, but also the end maintainers.


Impact over coolness


What has more impact on society – building a new website for an NGO or contributing to a humanitarian open source product that is used in many places all over the world? What if the former work is more interesting and challenging than the latter which involves working on software that is 15 years old? 


There should be only one criteria when it comes to answering these questions: ‘what has the bigger impact?’ Tech for good is not about finding interesting work for ourselves but making lives better for as many people as possible. 


The remainder of this article tells the story of two ThoughtWorks teams that have recently started working on OpenMRS and gives an outlook on the Bahmni COVID-19 project.

Open MRS logo and photographs of people and plants
Open MRS logo and photographs of people and plants

OpenMRS in a nutshell


OpenMRS is an open source electronic medical record system that allows hospitals to capture and analyse patient records. The starting point for OpenMRS was implementing a database system in a single clinic in Kenya in 2004. Fast forward to 2020 and OpenMRS is used in more than 5,500 health facilities all over the world. A global community of volunteers contributes to OpenMRS and improves health care delivery in resource-constrained environments.


ThoughtWorkers, individually and in teams, have been involved with OpenMRS for a long time. Apart from coding, we have talked at conferences about humanitarian software and organised OpenMRS hackathons to get more people involved. Through this process we have learned that while it is easy to find interested people it is hard to translate initial enthusiasm into something sustainable.

Enter COVID-19


As a consequence of the economic downturn triggered by COVID-19, some ThoughtWorkers found themselves on the beach (not assigned to client-related work) and started to look for meaningful work to do. Ideally, this work would be related to COVID-19.


Among many other efforts, we set up two teams of OpenMRS volunteers, one in Europe and one in India. Both teams began work on introductory tickets, to familiarize themselves with the codebase, then settled on larger features. The ThoughtWorks India team started working on the visualisation of time series of lab results, while ThoughtWorkers in Europe chose to build a new frontend for patient registration. Neither of these topics is directly related to COVID-19. 


At the time the teams started, COVID-19 related features were underway and being developed by established members of the OpenMRS community. In picking up other features, these teams enabled those with more experience in the domain to focus on the urgent, COVID-19 related needs.

Lessons learned


What are the lessons learned from this experience? What should others who want to contribute to social change in similar ways bear in mind?


  • The relationship between ThoughtWorkers and the OpenMRS community is based on solidarity. This is important because it allows the community to determine what needs to be done and where help is needed. ThoughtWorkers then offer their expertise to make that happen; critical in ensuring the right work is prioritized.
  • The transition from initial enthusiasm to a sustained contribution is not easy. Both teams experienced fluctuations: in some cases team members were reassigned to client work while others found alternative beach activities more interesting. That is perfectly ok, others will follow and fill the gaps. Having a long-standing team member take the time to onboard new joiners helps keep momentum. 
  • Last but not least, team autonomy is an important success factor. The teams learned the trade by working on introductory tickets [2] and then engaged with the OpenMRS community to find larger and more interesting topics. Finding their own topics strengthened the sense of purpose and commitment.
Bahmni logo and photographs of people working in a hospital setting, overlaid with plants
Bahmni logo and photographs of people working in a hospital setting, overlaid with plants

Bahmni COVID-19 global response


While the teams working on OpenMRS are not directly contributing to fighting the COVID-19 pandemic, another team, who have been working on Bahmni for several years, started thinking about how it could be extended in that context.


Bahmni [3] is an easy-to-use EMR and hospital system for low-resource settings, which addresses all aspects of running a hospital. It combines and enhances existing open source products (OpenMRS, OpenELIS, Odoo & dcm4chee) into a single solution.


For COVID-19, there is an urgent need for integrating the clinical systems of providers that do COVID-19 testing and need to share information with relevant authorities in a secure and safe manner. 


The idea was to enhance Bahmni by adding features that would allow healthcare providers to track COVID-19 testing and treatment. There is also a proposal to build in features that would allow doctors to offer telemedicine consultation to patients.


Using existing systems such as Bahmni (in place in over 500 hospitals) means that uptake and usefulness can be immediate and widespread, in areas which have great need due to their lack of funding and low staffing levels.


Similar to the work on OpenMRS, the bulk of the work on Bahmni is being undertaken by a global community of ThoughtWorkers who are currently not assigned to client work or volunteer to contribute in their private time. These people continue the tradition of generations of ThoughtWorkers who helped, and are helping, to build a more equitable and socially just future.

Dive in: the story of Bahmni began at the JSS hospital in Chhattisgarh in 2012, you can also learn about our first international implementation of Bahmni, with Possible, and more about the broader Bahmni context in our Social change report Edition I.


If you’d like to contribute visit Bahmni.org

[1] https://startnetwork.org/depp-innovation-labs
[2] Introductory tickets are bugs/defects which are simple to understand and fix for someone new to the software codebase. Often, OSS projects will tag certain tickets as such to encourage first-time contributors.
[3] ThoughtWorks built Bahmni as part of various engagements in the health space and evolved it into a full-fledged product. The ownership of the product is now with the Bahmni Coalition (a group of organizations involved in Bahmni - users, contributors, implementation partners etc.).