Summer Of Code ’24 with OpenMRS

Manojlakshan
4 min readMay 5, 2024

--

This article mainly talks about the Google Summer of Code program, detailing my journey to being selected for GSOC 2024 and crafting my proposal. It also discusses the organization I chose to work with during the program.

On May 1st, 2024, I eagerly waited for the GSoC results at 11:30 PM. I checked the GSoC dashboard, but there was nothing. Feeling disappointed, I thought maybe my proposal wasn’t chosen because I had already graduated, and GSoC mostly targets students. Then I opened a new tab on my browser and check my Gmail and found an email that waiting for me. My heart raced as I clicked on it, hoping for good news.

the email I received

huree!!! My proposal has been accepted to Google Summer of Code 2024, and I’m glad to be working with the amazing organization, OpenMRS.

Google Summer Of Code

Google Summer of Code (GSoC) is a program meant to welcome new contributors to open-source communities. Its goal is to encourage ongoing contributions even after the program ends. During this program, students spend three months working with an open-source organization.

In the early days, only university students could participate in GSoC, they are worked on projects during their summer vacations. However, if you’re not a student, don’t worry — you can still apply for GSoC, especially if you’re new to open source.

My journey in OpenMRS

I heard about OpenMRS from my friends who were GSOC students in previous years. OpenMRS is a platform for keeping medical records electronically. It’s like a big digital notebook for doctors and nurses. It helps them keep track of all patient medical information. OpenMRS is special because it’s open-source. That means anyone can look at the code that makes it work and even help make it better. It’s like a big team of people all around the world working together to make healthcare better for everyone.

The OpenMRS community is incredibly supportive. They maintain comprehensive documentation about the organization and its projects, conduct weekly squad calls, and utilize JIRA for effective issue tracking. OpenMRS talk, there online form to raise question and share our ideas with the community. Their motto, “write code, save life,” resonates deeply with me.

OpenMRS

About the project that I work on this summer

In this summer I have to work on two projects named openmrs flag module and openmrs FHIR module.

The openmrs Patient flag module provides the functionality to generate warning flags/ notifications in the patient dashboard. A flag is simply some criteria, and an associated message string and the patient flag module has been a tool in openMRS for many years. Current patient flag module is not worthy of integrating into OMRS 3.x because the module is slow.

FHIR is a standard for exchanging healthcare information electronically. This provides a FHIR REST API , that can be used by developers to fetch data from client side or facilitates the sharing of patient data across different healthcare applications and organizations.

Objectives of this project

Identify and optimize areas of the module that contribute to performance issues

add support for java 17 without removing java 8

Revamp the module code base and update modern openmrs standards

Introduce a new functionality to facilitate the translation of patient flags between the Flag — FHIR v5.0.0 Resource and the OMRS Flag model

How did I write the proposal

Openmrs has gsoc project proposal template. mainly it contains four sections such as about me, Gsoc back ground , openmrs experience and the our proposal section. form these, three section are mandatory and there are few question that we should provide answers. when writing the proposal section,I dived it into seven sections.

Introduction: I use this section to give a brief overview of the project, project objectives and discussed potential issues in current module.

Requirement elicitation: In this section, I discussed about the how I gather the project requirements, so I mainly use observation requirement elicitation method. After that I list down the project functional and non-function requirements.

Design: In here, I discussed about the design stuff, use a service level sequence diagram to visualize, how the internal services work together.

Implementation: This section mainly use for show How I am going to developed proposed and design solutions.

Timeline: project timeline and deliverables.

Demo: Provided sample implementation of proposed solution.

Future Enhancements: use this section to mention some functionality that is better to have in future.

Link to my gsoc proposal : Proposal Manoj Rathnapriya

My project timeline and deliverables

Project timeline

The project is mentoring by Wikum Weerakutti and Daniel Kayiwa. I am really excited work on this project.

I am wishing all who selected to google summer of code 2024. I hope this blog will help to get some idea about opensource and GSOC.

Thank you for the reading, Join me on this tech adventure! Follow my profile to stay updated on the cool world of technology and innovation. Your support means a lot, and I can’t wait to share more exciting stuff with you. Let’s stay connected for more insights and fun discoveries ahead!

--

--