We believe that the health care system in the United States can be made exponentially better and more efficient. Today, over 300 billion dollars are spent each year on administrative costs, bureaucracy, and overhead among doctors and insurance companies, all detracting from the amount and quality of care that clinics can offer their patients. Further, when we visit the doctor, we are implicitly charged for all of these billing and insurance-related activities such as chasing after unpaid medical bills, negotiation of treatment costs, processing insurance claims, forcing us to pay more for the same care. This is unacceptable. We knew there had to be a better way; the possibilities of leveraging new technologies were particularly enticing. Thus, we decided to embark on our project at TreeHacks 2018, as part of the health care vertical.

What it does

The overall goal of our app is to streamline the process of obtaining a fair price bill from a copy of a patient’s medical record, detailing the procedures that the patient underwent and must pay for. To begin, we enable the doctor or insurance company to upload the patient’s full record onto our system. Then, using several backend scripts, we parse through the data, extract relevant information about procedures, match procedures to their appropriate medical codes, and use our unique database of codes to identify a fair price estimate for each procedure. Finally, we present to the user the sum total that is to be expected using fair price estimates of all of the patients’ procedures.

How we built it

We wrote our main algorithm to parse and identify procedures from patient records using Java. This algorithm involved semantic analysis and other NLP techniques in order to identify biomedical keywords from patient records. Furthermore, in order to match these keywords to medical and procedural codes, a medical ontology in the form of a tree data structure was traversed and analyzed. This part of the application involved efficient backend manipulation of the filesystem, data structures, and data parsing. We continued by building our database of procedure codes and their fair prices. We created this database ourselves using Python scripts with Beautiful Soup that automatically queried various websites that contained the cost information. The data was pushed to a MongoDB database supported by mLab and hosted on Microsoft’s Azure, using the PyMongo Python client. We then created our user-facing application using HTML5, CSS, and Javascript on the frontend, along with a node.js and express.js backend. Features that we implemented in this application include a file uploader that enables users to upload their patient records, a way to communicate between our Node backend and Java algorithm in order to query our algorithm with different user inputs, and a way to take our algorithm’s fair price output and display it to the user. Throughout our project, we used git for version control and collaboration.

Challenges we ran into

At every step, encountering a framework or concept that we had never seen before was both incredibly challenging and drove us to learn at an incredibly rapid pace.

Accomplishments that we're proud of

We are proud of our ability to put together a fully-functioning app using technologies that we had only barely heard about at the start of the hackathon.

What we learned

We learned that every little feature takes time to finish and get right.

What's next for Fair Price

We hope to translate this into an actual product that hospitals, insurers, and patients can use. name:

Share this project: