Inspiration

I was inspired by my extensive and ongoing, personal experience in the systemic & operational deficiencies of the New Zealand public health system, in reliably and consistently managing Personal Medications of New Zealand citizens.

What it does

GetMedNZ allows each of the following Four (4) parties to seamlessly work together, in assisting a Citizen to Request, be Issued and Manage the relevant Medications to support their Health:

  • Supported_Client: Patient
  • Healthcare_Provider: Medcentre
  • Prescribing_Clinician: Doctor
  • Pharmaceutical_Provider: Pharmacy

There are another Three (3) parties who have important but peripheral roles, and subject to time constraints and functional merits, may or may not be included in the final version:

  • Government_Authorising_Agency: MedSafe NZ
  • Adverse_Pharmaceutical_Agency: NZPhvC
  • Pharmaceutical_Supply_Entity: PharmaWarehouse

How I built it

The tools that I have used in this project are:

Challenges I ran into

This is the first occasion in which I have participated in a publically-accessible Hackathon. In addition to that, as a Daml Smart Contract & Ledger novice, I have had to approach the project very logically, specifically to separate out the Architecture and Business Logic.

While syntactically the Daml language is nowhere as complex as Node.JS or Java, without a high degree of familiarity with its logical edge-cases, it is easy to become logically-conflicted and therefore not be able to action, simple functions.

Another issue was support for Daml-related queries. The Daml Forum is supported by extremely talented people who are mostly professionally employed; therefore, they contribute when they are able to. However, being in a specific duration event, my needs are far more time-sensitive, and with also being in New Zealand, frequently I find myself in this very drawn-out Query/Answer time loop, of sometimes greater than 24 hours.

That said, the support from the Daml Forum is amazing, and just about always correct the first time.

I also could have spoken to more professional developers, to get their overview as how to scope out, design and implement an application like this. This would have allowed me a greater degree of control, accountability and milestone benchmarking.

Accomplishments that I am proud of

During these past 5 weeks, I have committed a lot of Time & Energy to increasing my current knowledge of Daml, and applying it to a specific issue. This has been a very interesting way to learn more about the core language and using it to identify, and explored further use-cases.

I have enjoyed the structure and commitment of participating in a competition to produce a Minimum Viable Product (MVP), especially as I have never written a non-trivial software application before. The nexus of real-world experience and a novel, interesting programming language (Daml) have provided challenges both Logical and Operational.

Although, with a deep, and wide range of previous skills & experiences, I have been able to draw from previous projects, various techniques to assist & support me in achieving this specific goal.

What I have learned

The top Five (5) learning points from my perspective, are:

  1. That Daml Documentation while good is not crystal clear for non-Developers & Novices.
  2. That with a deeper knowledge of the core language, Daml development would not need an IDE.
  3. The potential for extremely powerful, and flexible functions is available through Data & Record Types.
  4. That the Daml language allows for a non-professional to design, build & publish tools of value.
  5. That with further compounding of my knowledge and exposure to use-cases, I could see myself training other potential users of Daml, both absolute Novices and Business professionals.

What's next for GetMedNZ

The plan is to make the codebase, fully Open Sourced and allow the global Daml developer community to use it, as it needs to affect much needed sector change. In addition to that, I will continue to contribute to and extend this application for both potential users and personal skill development.

Built With

Share this project:

Updates

Private user

Private user posted an update

I have an R, RStudio, Github-based blog located at Quid Agis but if you would like to see only the Hackathon-related posts, checkout the Hackathon tags.

If I participate in another Hackathon, I will search for, an implement a more comprehensive Logging/Publishing solution. God luck ot all of the other participants, I cannot wait to see what Daml-awesomeness arises from this event.

Log in or sign up for Devpost to join the conversation.