Sunday, January 23, 2011

MedConnector.Com –what, why, how

Over at http://www.medconnector.com I created a site (more or less a “labor of love”) where I can organize links to useful health information on the web.  I also wanted a way to organize prescription medications to make it easy to print a list before a doctor visit; or, to quickly retrieve my list using the web and so there’s a section for medication management.

I recently re-developed the site to use open source JavaScript libraries and as a result, the site now works pretty well on smartphones such as the IPhone.  In fact, I have used the site to manage my medication list, saved it as a .PDF and easily stored it as an IPhone “IBook” so it’s very simple to retrieve the list when needed.

I posted a YouTube video here that shows how the site works including the new feature: the ability to quickly link to the National Library of Medicine’s Consumer Health site: MedLinePlus.  Here’s a sample.

To address how I developed the site, I started with the FDA’s Orange Book, their drug list of “Approved Drug Products with Therapeutic Equivalence”. In order to process the files, I created a series of .NET entities (collections) to hold the metadata about each prescription drug.  After the current FDA drug list is downloaded, it is processed into an xml “database” file using the entity classes.  Here’s a sample.

This “database” is used for the subsequent AJAX calls and  it supports the cascading options for presenting the medication list.  For example:  start with a drug name, then the way it is delivered (orally, injection, etc.), next the packaging (such as liquid or capsule), and finally the associated strengths.  These are cascading options so a user selection from a list will change the contents of the subsequent lists. For example, by selecting a drug name, the “How Taken” list will only show valid options. This reduces user errors since they cannot select an invalid medication and makes it quick and easy to detail the prescription.

image

After each selection, the web form makes an asynchronous AJAX call to the web server to get the contents for the next list to present to the user.  This is very fast and improves the user experience.

When a user first visits the site, they can either put in some type of identification that is easy to remember (such as a phone number); or, they can accept the GUID that the system generates which can be a one-time key which guarantees privacy if they care.

After the list has been completed, the user can save it one of several formats.  For example, when I used this on my iPhone, I navigated to the medconnector web site, input my personal ID which retrieved my medication list and pressed the “save as pdf” option.  When the pdf web page returned, I saved it as a PDF to the iPhone IBooks library and then bookmarked the URL so I can always retrieve the most current version if I need at a doctor visit.  Here’s a rough iPhone screen shot:

image

The user can also save it in Word or Excel format so they can edit or add over-the-counter medications to their list.  Their list is saved (as an XML blob) on the server to make it easy to return later to re-print the list or to make additional edits.

As I mentioned, this was a “labor of love” and it is a continuing work in progress as I add additional tools to help me and others manage their health and wellness.

0 comments:

Post a Comment