GSoC 2020 : Project/Mentor Brainstorming

Hi all,

Happy new year folks, This is a good time for the community to get into the Google Summer of Code 2020. Following on the success of more than a decade of involvement in Google’s Summer of Code initiative, OpenMRS once again planed to apply as a mentoring organization for Google Summer of Code™ 2020 , and we are looking forward to identifying potential project ideas and mentors for GSoC 2020 as part of the organization application process. The organization application is due on the 06th Feb , so we would like to get as many projects fleshed out by then. If you have any ideas for projects , and/or would like to volunteer as a mentor , this is the time and place to get those discussions going.

GSoC 2020 timeline,

  • Jan 14 - Feb 06, 2020 - Organization Applications
  • Feb 21, 2020 - Organizations Announced
  • Mar 16 - 31, 2020 - Student Application Period
  • May 18 - Aug 10, 2020 - Coding Period
  • Aug 25, 2020 - Results Announced

For more information on project timelines and expectations for primary and backup mentors , please refer to the OpenMRS GSoC 2020 wiki page . The wiki page will be updated with the list of projects and mentors as they are identified.

Adding more information to the previous post - Brainstorming GSOC 2020 Project Ideas

GSoC Projects

See the above list of last year’s GSoC projects and the current list of unassigned projects for motivation and ideas. You can have a look at past year’s discussions about Google Summer of Code in OpenMRS .

GSoC projects can be new modules/OpenWeb Apps/projects, involve enhancements/new features for an existing module/OpenWeb App/project, or PoC work for an idea, but should have the following attributes:

  • Must involve coding(Major part) and be OpenMRS-related ideas
  • Clear objectives and requirements
  • A minimal viable product can be completed in 6-8 weeks (allowing time for bug fixing, documentation, and getting to production).
  • Meaningful contributions to the community
  • Involvement of at least one motivated product owner (e.g., implementation) eager to use the project’s output
  • Should have some features which may give a chance for design, coding, testing, and documentation as well as analytical thinking and creativity for students.
  • Available mentors (If don’t have, we can get it later)

New Project Ideas

If you have any new ideas which are supposed to be initiated through GSoC 2020, please go ahead and arrange a Design forum for it or post it in the Talk and get the community opinion on that ideas. (You can contact any of us, and invite our community also).

Creating a GSoC 2020 Project Page

  1. Browse to unassigned projects on the wiki or have your own idea
  2. If there is already a wiki page for your project or very similar project, update that page instead of creating a duplicate. If you need to create a new project page, please choose the “Project Page” template.
  • Project name *: Foo Bar Project ← by convention, end your page title with " Project"
  • Primary mentor *: Your OpenMRS ID / TBD
  • Backup mentor *: TBD
  • Assigned to *: TBD
  • Abstract *: 4-5 paragraph(s) describing the background, purpose, motivation of the project. Make it exciting! The more interesting your project sounds, the better the applicants you will get.
  • Sample use cases *: Provide 2 - 5 sample use cases which need to be developed. It should be simple which could able to understand by a person who doesn’t have any experience with OpenMRS.
  • First Task : If you have any simple task(which can be completed with in 3 - 5 days) related to your project, mentioned that in here. It can be a JIRA issue or any PoC. You can use to evaluate the capability of the student for that project ( Optional - But good to have)
  • Project champions : name one or more product owners (who will use the output?)
  • Required Skills *: list the skills required to apply (e.g., Java, React, Angular, REST, HTML/CSS, basic SQL, etc.)
  • Objectives *: A short list of what should be accomplished during the summer
  • Extra credit : list any nice-to-have features or approaches
  • Dev Tracks * : Include GitHub URL and JIRA URL of the project
  • Resources *: include links to any wiki pages, Talk discussions, websites with related/helpful info
  1. Add page label: gsoc2020
  2. Add a link to your project page and proposed mentor below.

Thanks.

7 Likes

Thanks @suthagar23 for the great job

I would like to kindly mention @dev5, @dev4, @dev3, and @dev2 folks to provide their ideas for GSoC 2020.

2 Likes

Kind Remainder on the above request to move forward with Google Summer of Code 2020.

Attention Please: @dev5, @dev4, @dev3, and @dev2 f

Aside from past pending GSoC ideas we can go with some experiments like

OpenMRS porting to other DB: Is there any work in progress for porting OpenMRS to other databases, especially postgres. This is a huge effort and needs to closely monitored by an OpenMRS expert but there is a lot of work involved like converting liquibase scripts to use liquibase xml mapping, that just needs a guidance and would be interesting for students (as opposed to someone else).

OpenMRS QA: We leave responsibility of QA on developers. One of the project could be to do a proper QA of OpenMRS, create JIRAs on corresponding projects with appropriate priority would not help community but would also help students who are pursuing SQA as career. This would need guidance from a QA expert/mentor to define the QA processes.

4 Likes

I know that the QA Team has been working on identifying and prioritizing test cases that can then be automated. @christine @k.joseph What do you think about @maimoonak’s suggestion? Do you think we could come up with a good QA project for GSoC?

1 Like

i think @maimoonak has great ideas .We may probably need to take some of those ideas to the design forum

Happy New Year!

Assuming I’m not too new to the community, I’m willing to serve as a mentor for either the System Metrics Monitoring project or the OAuth2 / SMART project (or potentially both if there’s enough interest). Also, if any projects come up that might want to use FHIR, I’m happy to provide whatever support I can.

1 Like

Thanks a lot @ibacher, We will be adding those projects to our GSoC project list.

Hi all,

Looking at the growing interest to have openmrs domain objects support annotations, I suppose that the work that was started on making this happen gets pushed ahead even to the finish line in a GSoC project. I get some more motivation for this from this blog

2 Likes

@ruhanga , Thats very powerful , .Am also seeing that a very potential and useful project. Can you lead that out and draft a project . I understand some work has been done , and some partially reverted though :worried: ,

1 Like

Thanks @mozzy, I’ll surely draft out the project on the wiki and I’m comfortable backing up a primary mentor on this, this could be you. :slight_smile:

cc: @wyclif

1 Like

Thats fine with me , we shall have some more discussion with @wyclif and @dkayiwa ,to fine tune it. You can start up the draft

1 Like

Mentors,

Kind remainder on this regarding the projects for Google Summer of Code 2020 :slight_smile:. Please help us to apply with a considerable amount of projects.


@maimoonak @chrispre @k.joseph - Could I get the project draft proposal about the project which is mentioned above? So we can go ahead and add it to our project list.


@ibacher - Let me add the projects ( System Metrics Monitoring and OAuth2 / SMART project - @mavrk @prabodhk )


@ruhanga - Can you please confirm and create a draft for your proposal?

Thanks.

1 Like

Some potential ideas for GSoC 2020 projects that might help give folks additional ideas…

Microfrontends

  • Enhancements we’d like to have but aren’t high enough priority for implementations to do now. Any new feature(s) suitable to be done by a talented developer in 8 weeks between May & August 2020.
  • Implement admin features (porting concept management, user management, module management, etc.)
  • Bug fixes (e.g., fixing CSS to address progressive app issues, ensure support for major browsers)

FHIR enhancements

  • Resources that are non-mission critical and well understood. Those resources that don’t require a lot of design decisions to map or resources.
  • Cross-cutting features needing time to develop (e.g., implementing robust search support, profile support, etc.)

Community metrics

  • Pulling together & linking GitHub archive + Talk + Atlassian activity to generate searchable data on OpenMRS-related activity (e.g., What code is getting the most attention this month? How quickly are we responding to PRs? etc.)
  • Requirements: DevOps skills, Docker, ELK stack (Lucene queries)

Library upgrades

  • Platform dependencies that are due to be upgraded, upgrading doesn’t have wide-reaching side effects, and can reasonably be completed in 8 weeks or less.
  • Requirements: Java, Spring, Hibernate, MySQL
3 Likes

@burke great ideas. Can we have people specific into those areas to enhance those ideas ?? cc

Thanks @suthagar23, I’ve created a draft for the project,

Switching from XML Mappings to Annotations on OpenMRS domain Objects

1 Like

Some things we could use do with, FHIR-wise:

  • A robust implementation of search that can translate to efficient queries on the backend, support multiple parameters, etc. Possibly including support for GraphQL.

  • Support for FHIR narratives, i.e., human-readable displays of FHIR resources.

  • Proper support for multiple FHIR versions (i.e., we should be able to publish all R4 resources according to the DSTU3 definitions).

  • Support for extended operations.

There are also some things that might be part of larger community efforts with some support in FHIR such as:

  • Harmonized appointment scheduling

  • Mapping forms to Questionnaires and QuestionnaireResponses. Especially if this can be built to generalize HTML Forms, it might provide a decent way of harmonizing form implementations.

I’ll try to find some time to draft proposals for at least the first three of these.

1 Like

That will be great @ibacher

@dkayiwa , can we have one or two of the above libraries (that can be managed with in that period) worked upon this GSOC 2020 ??