2012 Amazon Web Services (Health) User Conference Trip Report: Sounds Like (Nine)Teen(99) Spirit

[CW: The 2012 Amazon AWS re:Invent conference happened last week. The 2012 mHealth Summit is going on this week. At the moment I'm at WIPJam @ mHealth Summit: Mobile Development, part of the mHealth Summit. I'll be tweeting a link this blog post, so I added the following antescript. I added an addendum with tweets from 2012 Health Summit to illustrate overlapping concerns.]

AS (like PS, but comes first) Secure, flexible, scalable, context- and process-aware cloud-based backends will be key to secure, flexible, scalable, context- and process-aware front-end mobile apps used by patients and healthcare providers. While AWS re:Invent did not have a healthcare track, defacto cloud-computing “reference implementations”, such as those of Amazon, Microsoft, Google and others, will have profound impact on mobile health and medical app design.

About that title!

Amazon Web Services is Amazon’s set of 30-plus cloud computing services.

amazon-web-services

Amazon Web Services fit together like LEGO building blocks.

lego

“Spin up” an instance of a server (virtual hardware), operating systems (Linux or Windows), and an application server (Java, .NET, Ruby, PHP, Python). (Sounds like a DJ!) Upload your code and you are good to go: inexpensive (dollars vs thousands of dollars), scalable (10 millions users once a week for five minutes), agile (Obama campaign moved AWS-based 27-terabyte database, 500K transactions/second, 200 application infrastructure from East to West Coast night before Sandy), and reliable (they didn’t need to).

elastic-beanstalk

Catch the not-so-subtle reference to the Stables “That Was Easy!” button?

I once read a science fiction novel in which entire cities (where non-virtual biological humans lived) were actually generated by software. Imagine 3-D printing that doesn’t require a printer or cartridges and can create a a city the size of New York. (Yes, bugs caused human disasters. Look, that’s why it’s called science *fiction*.) City planners casually referred to “spinning up a suburb” in the same casual tone Amazonians speak of spinning up a a server to host some application or other.

A “bookseller” created the 10th wonder of the world, in the words of their CTO. :) It’s a remarkable story, told dramatically well at the link in the tweet below.

This blog post about AWS re:Invent is divided into five sections. Feel free to pick and chose and ignore the rest.

As I’ve blogged before about workflow and BPM technology, component-based modular architecture, and live tweeting conferences, there will be lots of links to previous blog posts.

Social and Social Media at #AWSreInvent #reinvent

By “social” I mean social media (blogging and tweeting) and fun social aspects of AWS re:Invent. For example, I wrote a pre-conference blog post and tweeted it.

  I was excited to attend AWS re:Invent. I showed up early the day before the conference for one of their “Boot Camps”.

But it got really crowded, really quick.

I wasn’t the only one who noted similarity to the early JavaOne conferences.

Nirvana’s Sounds Like Teen Spirit played a lot during the keynotes, hence my hokey attempt to combine a references to the heady days of the 1999 Internet boom: Sounds Like (Nine)Teen(99) Spirit.

Me too. I hummed Sounds Like Teen Spirit for days.

Feel free to watch Nirvana perform Sounds Like Teen Spirit.

The little Twitter bird and #AWSreInvent and #reinvent hashtags were omnipresent. By the way “swf” stands for “Simple Workflow”, Amazon’s workflow engine-in-the-cloud. We get to more about it later. twitter Reinvention was a theme. Not just reinvention of IT, but reinvention of everything that depends on IT, which seems like just about everything these days.

I hope I’ve given you a vivid impression of the (nine)Teen(99) Spirit that pervaded the first Amazon Web Services user conference. Now let’s dig down in its substantive aspects relevant to health information management.

Is AWS Secure Enough for Patient-Identifiable Data?

I’m not a security expert. But I absolutely understand the need for security. As occasional developer, I prefer making wonderful things possible for good people than terrible things difficult for bad people. That said, I absolutely understand the need for security. I even said it twice, here, in the same paragraph. Amazon Web Services speakers were focussed and concerned to make sure we attendees understood and appreciated how important security is to them. For example, everything is encrypted in files and structured and unstructured databases. Transmission too.

Among almost a dozen security certifications and regimes I did catch sight of a logo for the Health Insurance Portability and Accountability Act. hipaa I found the following document, and quote, on the Amazon Web Services website.

Andy Jassy, SVP Amazon Web Services and Amazon Infrastructure, spent a lot of his keynote talking about security. security-priority Folks who (presumably) know a lot about security than me were tweeting things like “Very impressed with Cloud Security.”

I attended Security IN the AWS Cloud. security-cloud It was intense. Slide after slide looked like this all of text. critical-security-controls

CSIS: 20 Critical Security Controls - Version 4.0

After the conference I saw the next couple tweeted links to further reading about AWS security.

Then there’s this:

cia-security-quote

Hey! If the CTO of the CIA is impressed, I’m impressed. Here’s the article from which the quote apparently came from.

What Does AWS Bring to the EHR and Health IT Party?

Most of the benefits for healthcare of cloud computing are the same benefits for other industries and purposes. However, healthcare has some interesting cloud computing use cases worth noodling. benefits-cloudBenefits of Cloud Computing

  • Replace capital expenses with operational expenses
  • Lower total cost of ownership
  • You don’t have to guess how many servers and software licenses to buy
  • Faster to develop, more easily modified, enables more innovation
  • Does routine stuff (the “undifferentiated muck”) for you so you can focus on your unique value proposition

commandments

“Architectures in the cloud era should follow “four commandments”: They are controllable (the business can control the architecture), they are resilient, they are adaptive (“meaning you are no longer dependent on fixed resources”), and they are data-driven, not model or prediction driven.” Werner Vogels: The ‘four commandments’ for 21st century application architecture

Amazon Web Services are a wide and deep defacto reference implementation of a cloud computing ecosystem. One the great things about reference implementations is they lend themselves to “crisp”, rather than “fuzzy” definitions. The first sentence of Getting Started Guide: Analyzing Big Data with AWS defines big data simply and elegantly:

Big data refers to data sets that are too large to be hosted in traditional relational databases and are inefficient to analyze using nondistributed applications.”

Of course, everything looks like a nail if you have a hammer (Amazon Elastic MapReduce, yes, Amazon has an EMR!). In that sense this is a self-serving definition. But that does not diminish its relative crispiness relative to a multitude of other definitions of big data that do not rely on specific software platforms and tools.

Speaking of self-serving (hey! “self”-”serving” is a pun! AWS has a bunch of servers. It’s a “self-serve” MIS department for infrastructure and platforms) how about this list of predicted increased skills demand: cloud service manager, cloud solution integrator, cloud solution architect, cloud service broker. Of interest to me, since this blog is about EHR workflow and business process management systems, is tweet refers refers to “business designer” and “business process architect” as “BPM”.

SMAC (not SCAM)

  • Social
  • Mobile
  • Analytics
  • Cloud

Reminds me of STEM (Science, Technology, Engineering, Medicine). Of course, there’s smack, or heroin, too. We’ll see if SMAC is as addictive.

Why is the software development cycle some much faster? Cloud’s benefits: cheaper, more predictable, more flexible, scalable, etc. In some ways, cloud computing returns us to the era (I thought was gone) where a couple people in a garage can invent something insanely great and change the world. Innovation is much discussed in healthcare. The right programmer and the right doctor working together in a virtual garage are today’s version of this meritocratic ideal.

By the way, the day before AWS re:Invent I attended a daylong bootcamp.

Building Internet-Scale Web Apps using Elastic Beanstalk and Amazon RDS

“This hands-on course will teach you how to quickly and easily build, deploy, and manage highly available, Internet-scale web applications using Elastic BeanStalk. You will build a sample application that uses Amazon S3 for storage, Amazon CloudFront for edge caching with maximum performance, and uses real-time metrics to Auto Scale your application servers on EC2. You will also learn to use and operate a fully managed relational database using Amazon RDS. You will learn best practices for running high available databases, including seamless database failover, monitoring, data loading, backups/snapshots, horizontal and vertical scaling, tuning, and more.”

It was awesome. In retrospect I chose well. I probably would’t have been to attend the three or four sessions on the same topics the next two days. The lines were that long. If this was a tweet I’d end it with the hashtag #smug.

This is an amazing example of how scalable mobile solutions can be if they are cloud-based. Apparently there is a popular TV show in China that can be viewed on mobile phones. Once a week a push notification causes 10 million users interact with their phones vigorously for a short number of minutes. 10 million users, five minutes a week, the rest of the week: nothing. That’s scalable!

IaaS stands for Infrastructure-as-a-Service. PaaS stands for Platform-as-a-Service. A Developer’s Perspective on IAAS vs. PAAS See further below for a related block and layer representation of Amazon Web Services.

  • Data
  • Applications
  • Database (provided by PaaS)
  • Runtime (provided by PaaS)
  • Middleware (provided by PaaS)
  • Operating System (provided by IaaS, provided by PaaS)
  • Virtualization (provided by IaaS, provided by PaaS)
  • Servers (provided by IaaS, provided by PaaS)
  • Storage (provided by IaaS, provided by PaaS)
  • Networking (provided by IaaS, provided by PaaS)

election-day

The combination of flexibility and scalability provided by Amazon Web Services PaaS allowed the Obama campaign to move their entire mission critical collection of 200 applications from the East Coast to the West Coast the day before Sandy hit the East Coast.

All this automagical creation of servers led to lots of humorous comments and tweets about the long lines at the men’s restroom (didn’t scale) and the remarkable conference food and beverage service (scaled).

If you are not a programmer you have no idea what excitement “Everything is programmable” causes in a developer. Programs are these fragile little ghettos of computation over which programmers are Lord and Master (or Lady and Mistress). Programs have all kinds of arbitrary limitations. They can’t start themselves. Though they can usually stop. Sometimes they can’t even access files in the surrounding file system due to security concerns. “Everything is programmable” means that not only can you clickity-clickity-click create servers and provision them with operating systems and databases and other wonderful things, you can make a computer program do that clicking for you. Now, obviously, with great power, comes create capacity to wreak havoc. So what? As long as you have the appropriate backups, you’re free to experiment and to break and to succeed in unusual ways.

Everything is Programmable

  • Data centers
  • Networks
  • Computers
  • Storage
  • databases
  • Load balancers

30% IT projects fail? 50% over budget? Sound familiar? I’ve heard ballpark similar statistics for EHR implementations.

I’m familiar with a long list of “-awares” in computer technology: context-aware, process-aware, safety-aware, user-aware, to name a few. “Cost-aware” architecture really made me perk up my ears. I was a pre-med accountancy major. I took courses in cost accounting, economics of the firm, engineering economics, and the slides and terminology remind me a lot of those classes. At a very, very high-level, cost-aware software intelligently knows how to configure, behavior, monitor, etc, so as to minimize total cost of operation. At least that’s my take. Seems sort of relevant to healthcare, don’t you think?

There’s a popular saying in software, “It’s a feature, not a bug.” It’s usually said sarcastically, sardonically, even sadly. It acknowledges that all sophisticated software ships with bugs. The disingenuous side of this coin is the attempt to convince a user that the software really is supposed to work that way.

“Everything fails all of the time” and “Failure is just another form of deployment” is the ultimate “It’s a feature, not a bug” but in a good way. Instead of too expensive to be practical strategies to eliminate all bugs (or human error, for that matter), focus on building systems that tolerate bugs and error well. EHR design could learn from this philosophy.

Wow!

Again: Wow!

S3 is Amazon’s Simple Storage Service. It’s a popular place to store webpages and media such as images, videos and sound files. HA stands for High Availability. If you multiple out times how many seconds in a year I get about 3 milliseconds (I might be off a digit or two, how many nines are in 99.99999999?). Of course a lot of other things not under Amazon’s control can go wrong between you and your blog. But still.

Ahh! Here’s a health information management use for Amazon Web Services!

Here’s an overview of the major layers and categories of the 30 some Amazon Web Services.

aws-platform-overview

I was going to create imaginative and dramatic health IT use cases, listing benefits for all the AWS services. For example, I was watching the movie Contagion last night and thought about time-to-deploy and scalability issues of supporting a medical app for use in a worldwide pandemic. Then, what if people didn’t just die, but they turned into zombies and began taking down data centers. That sort of thing. But this blog post is getting awfully long.

However, there is one particular Amazon Web Service that I’m particularly interested in…. Want to spend some time on…. It lives in the application services layer….

Chuck: Your Blog is Called EHR Workflow Management Systems…Well?

You’re right. This wouldn’t be a blog post in EHR Workflow Management Systems without a section on healthcare workflow. Amazon Simple Workflow is a workflow engine in the cloud that conveniently interoperates other Amazon Web Services. Recently I interviewed the founder and CTO of KISSFLOW, a workflow engine for Google Apps. That blog post, Healthcare Workflow-as-a-Service may be worth a review.

workers-activity-workflow

This is the workflow for finding lost packages. I’m sorry that is is not healthcare specific. But I don’t think it takes a lot of imagination to replace “pages” with medical tasks or even patients (got temporarily lost all the time at Cook County). This example has three potential steps (top). There are three activity workers. The first searches the warehouse (perhaps by querying databases, perhaps by assigning staff the job of a visual search). The second arranges for shipment of the package, if found. The third arranges to cut and send a check to the customer, if not found. There is one Workflow Worker (bottom), who job it is to coordinate the activity workers.

timestamped-workflow

This talk on Amazon Simple Workflow was a tour-de-force. I believe it will be posted to Amazon Web Services YouTube channel, so I won’t rehash it. But I will touch on one portion of special interested to me. In the next slide, see the “00.21.32″? And the “1″, “2″, and “3″? And the file symbol containing lines 1, 2, 3? It’s the event log, which can be data-mined (called process mining) for workflow insight. I recently gave a presentation and published a proceedings paper on process mining of EHR event logs. The time-stamped data can be used to understand otherwise invisible workflow (often very different from what people think) spot stuff that shouldn’t happen but does (or should happen but doesn’t), and generally enhance workflows to make them more effective and efficient.

workflow-auditability

As debate about EHR usability turns to EHR design, medical error, and patient safety, EHR auditability will be increasingly important. Once problematic workflows are identified, the most effective way to improve them will be to improve the process definitions consulted by a workflow engine to drive workflow behavior. Speaking with representatives from Amazon Web Services and indicates that they are enthusiastic about the potential for EHR vendors and health IT systems to embed Amazon Simple Workflow into their applications. I enthusiastically and strongly endorse this use for Amazon Simple Workflow.

further-resources

If you are interested in learning more about Amazon Simple Workflow these two slides provide links to a variety of documentation, communities, and videos. If you do anything interesting, I hope you’ll come back here. I’d be delighted subject you to one of my 10 Questions About X Plus a One-Minute Interviews.

learn-more-workflow-2

Tab in AWS Management Console You’ll need an AWS account to get to this console, so here’s a screenshot.

simple-workflow-dashboard

Amazon Simple Workflow Service AWS Developer Forums: Amazon Simple Workflow Service

AWS Flow Framework Recipes

Amazon Simple Workflow Service and Flow Framework

AWS Flow Framework samples for Amazon SWF

Code Recipes

Webinar Videos

AWS Flow Framework source on GitHub

By the way, Amazon Simple Workflow isn’t the only process-aware technology living in the AWS cloud. There’s also the Amazon Data Pipeline, which was introduced at a keynote. Using its graphical editor, you draw workflows from data sources, such as event logs, to various uses such as daily reports or weekly archiving. Big data meets workflow engines in the cloud.

data-pipeline

One aspect of cloud computing I’m particularly enthusiastic about is the same aspect I’m particularly enthusiastic with respect to mobile. As cloud and mobile (and social too, but different future post) technology defuses into healthcare, it will bring along workflow engines-as-a-service. These will be quick to deploy, scalable, and reliable backends that make mobile apps smart about which screen and what to present to which user when, where and why. I wrote about this in Contextual Usability, My Apple iPad, and Process-Aware Clinical Groupware.

Amazon Web Services: Not Just a Fish Story

Not many years ago, if I read this blog post, I might have thought it was a real fish story. Scalability this big? Ran the line how fast?

But this was no fish story. And it didn’t get away. In fact, even if you want to avoid it, and you’re in IT, or health IT, it’s coming to get you. You might as well string the high-test line, strap yourself in, brace your feet against the back of the boat, and get ready for the ride of your life. (Ouch! I might have taken the fish metaphor too far! Wait, scalability, scales….)

Thank you!

Addendum: 2012 mHealth Summit Tweets About Mobile, Cloud, Security, Scalability and Workflow

I’ve included these tweets because if you’ve read this blog post to this point, the overlap between mobile health computing concerns and benefits of Amazon Web Services should be evident.

Mobile health needs the cloud.

I agree!

Mobile workflow is key.

Scalability!

Amazon Web Services are exceptionally scalable.

“Cloud computing” is vague.

Wide, deep, documented examples of cloud computing are less vague.

Security in the cloud!

That whole “Make It Easy” button for deploying apps.

This entry was posted in social-media. Bookmark the permalink. Post a comment or leave a trackback: Trackback URL.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

You can add images to your comment by clicking here.