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.
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).
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
Add page label: gsoc2020
Add a link to your project page and proposed mentor below.
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.
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?
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.
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
@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 ,
Kind remainder on this regarding the projects for Google Summer of Code 2020 . 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.
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.)
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.
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).
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.