2019-01-31 Architecture and Framework Meeting

Follow Up meeting (Q&A) to 2019-01-23 Architecture and Framework Meeting

Agenda

Presentation by Carl Leitner on FHIR integration

Feedback on proposed Stack

Note: retained stack will be maintained and further detailed in Target Technology Stack

Front (Material-ui, React & Redux)


Back (Django / Python)

  • reaction from TZ: No experience with Python, but .NET, PHP and Java
  • reaction from Nepal: preferences more towards Java, Python (GIZ & Nepalese Companies)
  • typing of variables in Python is very flexible, but would need a very strict naming convention for variables
  • Using node.js as backend to have consistency to react in the frontend? Bluesquare preferred to have something more conservative/reliable/well documented in the backend.
  • Language popularity of python vs. Java
  • Historical consistency of programming languages vs 'trendy' scripting languages: Python has a huge impact in the data science community - could be a good basis to stay

Database (SQL-Server <> Postgres <> FHIR DB)

  • Carl: there are a number of FHIR libraries http://wiki.hl7.org/index.php?title=Open_Source_FHIR_implementations. There is a python library, but I don't have direct experience with it and it may be focused on SMART on FHIR
  • Decision to be made: FHIR as API-format or as a persistency layer / database back-end
  • Option: Connectivity teams (e.g. connecting to OpenMRS) could use a FHIR backend as a buffer in the data exchange and we gain experience before making a final decision for openIMIS

Containers (Docker)

Airflow for Monitoring of Batch processes


Modularity in proposed Technology Stack

Documented in: Target Technology Stack

Licenses

docker: Apache 2.0 license

postgres: https://www.postgresql.org/about/licence/ “a liberal Open Source license, similar to the BSD or MIT licenses.”

python: https://docs.python.org/3/license.html > https://opensource.org/

django: very light: https://github.com/django/django/blob/master/LICENSE

django REST Framework: https://www.django-rest-framework.org/#license

reactjs: MIT  https://reactjs.org/docs/how-to-contribute.html#license

redux: MIT  https://github.com/reduxjs/redux/blob/master/LICENSE.md

material-ui: MIT  https://material-ui.com/discover-more/backers/#sponsors-amp-backers