What happens when a web application you depend on
Lee Atchison:goes offline? It can be inconvenient, disappointing and
Lee Atchison:potentially cause serious problems for you.
Lee Atchison:But what if you find out that the web application wasn't
Lee Atchison:working by design, because it was down for maintenance? That
Lee Atchison:only makes the situation worse. Your customers expect your
Lee Atchison:application to be operational when they need it. Not when you
Lee Atchison:find a convenient maintenance windows impose your schedule on
Lee Atchison:your customers, and can negatively impact their
Lee Atchison:experience. And there is no reason for it. A well designed,
Lee Atchison:well operated modern web application never ever has to be
Lee Atchison:down for scheduled maintenance. In this episode, we'll discuss
Lee Atchison:why maintenance windows are a thing of the past. Are you
Lee Atchison:ready? Let's go.
Voiceover:This is the modern digital business podcast, the
Voiceover:technical Leaders Guide to modernizing your applications
Voiceover:and digital business. Whether you're a business technology
Voiceover:leader, or a small business innovator, keeping up with the
Voiceover:digital business revelation is a must here to help make it easier
Voiceover:with actionable insights and recommendations, as well as
Voiceover:thoughtful interviews with industry experts, Lee Atchison.
Lee Atchison:Several years ago, I purchased a digital smart
Lee Atchison:thermostat for my home, I wanted to be able to set the
Lee Atchison:temperature remotely and check on it when I wasn't at home.
Lee Atchison:Basic requirements of a smart thermostat nowadays.
Lee Atchison:I set it up and connected it to the manufacturers cloud back
Lee Atchison:end. All was fine. Or so I thought.
Lee Atchison:A couple of weeks later, I received an email from the
Lee Atchison:manufacturer about the upcoming upgrade of their back end cloud
Lee Atchison:service.
Lee Atchison:During the time of the upgrade, which was going to last for
Lee Atchison:several months, the company would be bringing down its
Lee Atchison:applications for quote many hours at a time and would do so
Lee Atchison:at quote various times during the day.
Lee Atchison:They wouldn't commit to specific days and times, just that they
Lee Atchison:would be bringing the system down for a while, seemingly
Lee Atchison:randomly, many times over the next several months. The
Lee Atchison:company, of course, apologized in advance for the
Lee Atchison:inconvenience.
Lee Atchison:Yeah, right.
Lee Atchison:What was that all about?
Lee Atchison:at seemingly random times, my thermostat would stop working
Lee Atchison:for many hours at a time. And this would go on for months. I
Lee Atchison:don't think so. The very next day, I replaced the thermostat
Lee Atchison:with one from another company throughout the old one and wrote
Lee Atchison:them a scathing negative review, there is no way I would deal
Lee Atchison:with that level of bad service.
Lee Atchison:Available availability matters.
Lee Atchison:Let's look at another example. In order to receive certain
Lee Atchison:disability benefits that he's eligible for, my son has to
Lee Atchison:report his income to the US government. To do that he uses
Lee Atchison:an application on his cell phone. Once a month, he logs
Lee Atchison:into the application to report his income for the previous
Lee Atchison:month.
Lee Atchison:This iPhone application, however, has a major problem
Lee Atchison:with it.
Lee Atchison:When you launch the application at the wrong time of the day, it
Lee Atchison:shows you a message. The message says this application only works
Lee Atchison:between the hours of 8am to 5pm. Eastern Time, Monday through
Lee Atchison:Friday.
Lee Atchison:Hmm, what is that? That's right, this online SAS based web
Lee Atchison:application only operates during, quote normal business
Lee Atchison:hours. This obviously makes the application very hard to use.
Lee Atchison:Why would they restrict the hours that you'd use an
Lee Atchison:application like this?
Lee Atchison:As a government institution, they undoubtedly figured they
Lee Atchison:didn't want to let the application run when nobody was
Lee Atchison:in the office to support it. After all, how could they
Lee Atchison:possibly fix anything that went wrong if they weren't in the
Lee Atchison:office?
Lee Atchison:Availability matters.
Lee Atchison:These two stories are extreme examples, but they represent
Lee Atchison:examples of a common problem in many online applications. The
Lee Atchison:company's operating the applications create maintenance
Lee Atchison:windows, periods of time where they regularly bring the
Lee Atchison:application offline in order to perform routine maintenance and
Lee Atchison:upgrades. Wants to find they treat these windows like they
Lee Atchison:are free downtime periods. They feel they are free to bring
Lee Atchison:their applications down and work on
Lee Atchison:Mmm. Without it counting is downtime.
Lee Atchison:Well, nothing could be further from the truth. Downtime is
Lee Atchison:downtime, whether it's planned, unexpected, or unplanned and
Lee Atchison:unexpected if your customers want to use your application,
Lee Atchison:and the application is not available for any reason, it's
Lee Atchison:downtime.
Lee Atchison:You cannot operate a modern digital online application or
Lee Atchison:service without maintaining a high level of availability.
Lee Atchison:When your customers want to use your service, they expect your
Lee Atchison:service will be operational. They do not care about
Lee Atchison:maintenance schedules, they do not tolerate downtime.
Lee Atchison:They use your application when it's convenient for them, not
Lee Atchison:when it's convenient for you. It's bad enough when a real
Lee Atchison:application failure causes your availability to suffer. But
Lee Atchison:planning and having downtime in the form of a maintenance window
Lee Atchison:is just formalizing customer dissatisfaction.
Lee Atchison:In these modern times, with the tools and services that are
Lee Atchison:available for modern cloud native application development,
Lee Atchison:there is simply no reason why a digital application should
Lee Atchison:require any sort of downtime at all, for any maintenance or
Lee Atchison:upgrade. In today's world, it's unnecessary. From a customer's
Lee Atchison:point of view, it is unacceptable.
Lee Atchison:Almost any upgrade can be made live without any downtime. Even
Lee Atchison:upgrades are required database schema changes and other data
Lee Atchison:migration tasks can be implemented without requiring
Lee Atchison:any downtime. maintenance tasks can be performed while the
Lee Atchison:application continues to operate. There is no longer any
Lee Atchison:valid reason for you to plan on bringing your modern application
Lee Atchison:down.
Lee Atchison:And if your application does require maintenance windows, due
Lee Atchison:to some historical architectural issue with your application,
Lee Atchison:they used to treat this as what it is a serious problem. This is
Lee Atchison:technical debt imposed on your application that is costing your
Lee Atchison:company money. Your customers don't care why your application
Lee Atchison:is down. They just care that it is down. as your application
Lee Atchison:grows and expands it will be harder to justify having a
Lee Atchison:regular downtime window. customer usage patterns expand
Lee Atchison:and customers expect the application to operate at all
Lee Atchison:times of the day and night.
Lee Atchison:Additionally, building systems and processes for your
Lee Atchison:development organization that don't require the use of
Lee Atchison:maintenance windows encourages them to adhere to deployment and
Lee Atchison:operational best practices. You see, we developers tend to get
Lee Atchison:lazy when we act like we know we have maintenance windows
Lee Atchison:available for our years. designing and implementing
Lee Atchison:changes that don't require a maintenance window requires
Lee Atchison:additional time and thought, which encourages better
Lee Atchison:attention to detail and to best practices. When developers are
Lee Atchison:required to think about the operational impact of a change,
Lee Atchison:they tend to produce fewer operational problems than when
Lee Atchison:they simply throw it into production and not consider the
Lee Atchison:ramifications when you depend on maintenance windows. Ultimately,
Lee Atchison:overall quality and availability suffers. Even if you currently
Lee Atchison:have easily identifiable low usage times during which you
Lee Atchison:feel you can afford to bring your application down. That
Lee Atchison:doesn't mean that those same low usage times will be available to
Lee Atchison:you as you expand and grow. International expansion products
Lee Atchison:that expansion, customer base expansion can all contribute to
Lee Atchison:increased need for 24 by seven availability. A previous client
Lee Atchison:of mine regularly scheduled a two hour maintenance window each
Lee Atchison:week, so they can perform upgrades and data adjustments
Lee Atchison:while allowing them to keep operating normally the rest of
Lee Atchison:the time. The problem is the maintenance window is by itself
Lee Atchison:a major hit to their availability. a two hour
Lee Atchison:maintenance window means that the greatest availability they
Lee Atchison:can offer their customers was 98.8%. By definition, you will
Lee Atchison:not be able to operate greater than 98.8% of the time by
Lee Atchison:comparison to other online applications 98.8% is a horrible
Lee Atchison:statistic. For example, the Amazon s3 service guarantees 99
Lee Atchison:Point 99% service availability, their data integrity SLA is even
Lee Atchison:higher than that. This guarantee amounts to a maximum of 61
Lee Atchison:seconds of downtime each week. In order for s3 to make this SLA
Lee Atchison:consistently, they can never planned to have any downtime for
Lee Atchison:any maintenance ever. Any outage at all will cause them to fail
Lee Atchison:their contracted SLA. And they back up their SLA policy with
Lee Atchison:money. If Amazon s3 is down just a mere 4.3 minutes in any given
Lee Atchison:month, then AWS will refund 10% of everyone's storage costs for
Lee Atchison:the entire month. As you can imagine, this would be a
Lee Atchison:significant amount of revenue loss for Amazon. And it's not
Lee Atchison:just s3. It's a mindset across all of AWS and across all of
Lee Atchison:Amazon. This commitment is ingrained in the minds of every
Lee Atchison:engineer that works at Amazon. You build everything so that no
Lee Atchison:downtime is ever needed. No matter what the change to the
Lee Atchison:system involves no downtime ever.
Lee Atchison:Yes, 99.99% is a high level of availability to guarantee and
Lee Atchison:not every company needs that level for their business to
Lee Atchison:thrive. But even at a lower percentage of availability,
Lee Atchison:there's no room for planned maintenance windows. 99%
Lee Atchison:availability means 1.6 hours per week of maximum downtime. 99.9%
Lee Atchison:availability, which is pretty reasonable, means 10 minutes per
Lee Atchison:week of maximum downtime, and 99.99% availability means less
Lee Atchison:than 61 seconds per week of maximum downtime. Even at these
Lee Atchison:lower availability levels. A planned two hour maintenance
Lee Atchison:window each week means your application will always always
Lee Atchison:fail its SLA. Now some companies don't count planned downtime as
Lee Atchison:official downtime, but you can bet that your customers do And
Lee Atchison:isn't that what really matters. Thank you for tuning in to
Lee Atchison:modern digital business. This podcast exists because of the
Lee Atchison:support of you my listeners. If you enjoy what you hear, please
Lee Atchison:leave a review on Apple podcasts or directly on our website at
Lee Atchison:mdb.fm/reviews. And if you'd like to record a quick question
Lee Atchison:or comment, click the Microphone icon in the lower right hand
Lee Atchison:corner of our website. Your recording might be featured on a
Lee Atchison:future episode. Make sure you get every new episode when they
Lee Atchison:become available. Click subscribe and your favorite
Lee Atchison:podcast player or check out our website@mdb.fm If you want to
Lee Atchison:learn more from me to check out one of my books, courses or
Lee Atchison:articles by going to Lee atchison.com. And all of these
Lee Atchison:links are included in the show notes. Thank you for listening
Lee Atchison:and welcome to the world of the modern digital business.