You Had Me at “Swift”

by Jerome Carter on August 18, 2014 · 2 comments

Some things are simply destined to happen.   I have written a few times about my multi-year journey in modern software development.   Over the last few years, I have studied software architecture, object-oriented analysis and design, discrete mathematics and workflow analysis and had a lot of fun.  Netbeans and Xcode are on my MacBook Pro, and I have discovered that I like PHP, Python, and C#.  I am also happy to report that the web application I have been working on for what seems like forever is still on schedule.

When first announced, Apple’s Swift programming language struck me as interesting, but I did not give any serious thought to using it for anything, being already occupied with the web application.  I played with it, but only in a summer romance kind of way.   Well…things change.

Swift has a few things that make it really attractive for me.  It is compiled, but acts like a scripting language.   Syntax-wise it seems very familiar, and thinking in Swift is coming easier than expected.  Going from Python and PHP to Swift is not the least bit jarring.  Even better, all of the OOP that I learned–patterns, interfaces, closures—is readily usable with Swift.

Alone, Swift was enough to get me thinking about potential projects.   However, since I was still trying to get to beta with the web application, entertaining another real development project was out of the question until I looked at the other goodies that Apple provides with Swift.

Everyone has heard about HealthKit, which I think is a great idea. Apple’s rumored partnerships with a few major academic medical centers prove I am not alone here.   Even so, from a developer standpoint, I find the CloudKit to be just as compelling.   CloudKit provides seamless cloud data storage for structured data and documents for iOS apps via an API.  This feature has not received much press, but as someone interested in data-based apps, it is a big deal because it allows data management to be handled as part of the application environment.  There is no need to deal with separate database software and the issues that come with it.  Suddenly, iOS apps appear to be less complex to build and deploy than regular web applications.

So what’s the big deal, you’re asking?  Well, I once wrote an EMR-like application for my personal use.  It was written in Foxpro 2.6 and took nearly five years to complete.   I even went so far as writing a user manual and having it beta-tested, though I never released it as a commercial product.   It was finished right before I went to UAB, and I decided to focus on academic pursuits instead of selling software.

I referred to it as a clinical information manager (CIM) because, even though it could keep and search patient notes, it was not intended to help with billing.  It was designed solely to help with the 100-times-a day things that occur in primary care practice.    Using the CIM on a mid-90s laptop proved too cumbersome, and when I got to UAB, it simply wasn’t feasible.   Looking back, I realize that what I had created was a productivity suite for primary care docs.  Now, the iPhone and iPad make all of the laptop issues go away, and even better, together with HealthKit and CloudKit, they provide features that counted as science fiction in 1994–Star Trek PADD

A few months ago, I found copies of the FoxPro code.   Some of it was in the, “What idiot wrote this?” category, but some of it, like the care planner, was pretty good. Having source code for an application is a good start, but not enough to jump into a whole new development line.  The recent demand from primary care clinicians for better tools for clinical work has convinced me that there is a market for these tools. Having practiced primary care in both community and academic settings for many years, I get it.   The modules in this application address the things that kept me in the office for two hours after the last patient had left. They can be integrated with an EHR, but do not require one.  For solo practitioners, they might be the perfect first-step.

I had decided, at one point, never to get involved in writing clinical software again—distribution was a challenge and few clinicians routinely used computers.  So much has changed since mobile devices became available. What healthcare professional doesn’t have a smartphone and access to the Internet?  Obviously, it’s time to rethink my position, and having a completed application with full source, even one that is nearly 20 years old, is a good start.  While the interface may be passé, the algorithms are still current.

The future is always uncertain, but if all goes as planned, in 2015 Informatics Squared, Inc. will cease being a consulting company and become, I hope, a provider of clinical productivity applications and informatics tools. It’s funny how things work out. A few announcements from Apple, and cleaning out a closet have made clinical software development a viable pursuit.

EHR Science will continue; the web application is a definite go; the academic papers are in the pipeline; and as it turns out, designing software is irresistible.    It seems some things are simply destined to happen…

See you in two weeks.


Leave a Comment

{ 2 comments… read them below or add one }

Baby Djojonegoro August 19, 2014 at 1:19 PM

Congratulations on entering a new phase with your company. Seems that the technology’s caught up to your vision, allowing you to revisit and improve your big project. Funny how things work out sometimes. I’m hoping for a similar return to informatics, myself (though on a much smaller scale compared to you). Good luck!


Jerome Carter August 19, 2014 at 1:54 PM

Thanks for the good wishes.

In July of 2004 my brother and I spent a few days on vacation discussing software/technology that we would like to make our lives better. The top of the list was a computer we could carry in a pocket that was always connected to the internet and could be used by talking to it. It seemed like a pipe dream at the time.

We also mused that it would be great to be able to manage networks and databases without having to have local hardware–and now we have the cloud.

That summer, I began keeping a list of potential projects. While many could be done in a browser, they are best done on a mobile computer. The developer tools announced by Apple in June are the final pieces needed to create software that I have been thinking about for years. Now that is awesome.

Hope that you can get back into informatics. Once it’s in your blood, there is no getting away from it.


Previous post:

Next post: