Over a million developers have joined DZone.

PaaS: Breaking Ties, Increasing Focus

· Cloud Zone

Download the Essential Cloud Buyer’s Guide to learn important factors to consider before selecting a provider as well as buying criteria to help you make the best decision for your infrastructure needs, brought to you in partnership with Internap.

[This article originally written by Ho Ming Li.]

Abstraction

We learn the basic principle of abstraction early in our computer science studies. The ultimate abstraction is really not having to care about what you are abstracting away at all. Take the typical example of a microwave: most people don’t know how it works, it just does. All we need to know is how to use it. Even for a geek like me who is intrigued to know how it works, and why it works the way it works, not having to care about fiddling with the internals is truly a blessing.

Today, when developing applications, most developers and operations staff aren’t enjoying that carefree state. Although they have very different concerns, most developers are still bogged down by infrastructure concerns, while Operations still needs to understand more than they should with the underlying application requirements.

Developers

My developer experiences have not been extensive, but I certainly have interacted with many developers through my studies, working in the industry, participating in hackathons, and just over coffee at conferences. Developers prefer to focus on writing code for their application. Do they really care about whether the application runs in a physical server, many physical servers, VMs, containers, or just in some little corner in the cloud? Provided that their application is running and performing as desired, visibly bug-free, the developers are happy.

Let’s look at what generally matters for developers:

  • New frameworks (express, hapi, grails, spring)
  • New languages (go-lang, node.js, etc.)
  • New application architecture
  • Application security

Operations

I have worked under the Operations group in IT shops, as well as in a Solutions Development team designing and implementing architectures that spanned multiple data centers and geographic locations. Within the Operations business unit, we cared very deeply about the infrastructure. The focus with Operations is definitely on infrastructure management, whether or not they are supporting the contractually required uptime, whether it is easy to maintain, whether it is secure. That being said, is it part of their duty to be concerned about what the application actually does for end users?

This is what generally matters to Operations:

  • Availability/Uptime
  • Backup and Disaster recovery
  • Geographically distributed configurations
  • Resource Utilization
  • Infrastructure security

No Overlap

I see no overlap. But let’s not kid ourselves, applications do need proper infrastructure to run on and this is not changing. Not too long ago, definitely less than a decade ago, the physical resources played a vital role as a major constraint to architecting and deploying applications. An application and its supporting hardware were very tightly-coupled. However, with advancements in both infrastructure and applications, the locking between the two have now loosened. While many IT personnel today still associate applications with physical or virtual hardware, this shouldn’t be the case anymore with modern cloud technologies like platform-as-a-service (PaaS).

Infrastructure has advanced significantly over the years, moving away from physical servers to virtualization of machines, virtual networking, and most recently, to lightweight containers. A prime example is the widely popular open source Docker project that was launched in early 2013. Applications have also advanced significantly with introduction of new frameworks, new runtimes, even new languages that are designed with the intent of running on various platforms. Node.js, for example, is a javascript engine that has a common API across Windows, Mac, Linux, and even SunOS.

The loosely coupled association between application and infrastructure has opened up a new world for both groups. PaaS facilitates the abstraction, enabling developers to focus on their applications and operations staff to focus on the infrastructure. It doesn’t matter whether you are a developer writing applications or in Operations working on the infrastructure, you can focus on what you need to do and what you care about. [1]

The Clear Benefit: Focus

Before PaaS, applications had, by today’s standards, unnecessarily strict infrastructure requirements. There’s no doubt in my mind that the most significant benefit you get from a PaaS is to break those ties, allowing everyone in their respective role to focus on their already difficult-enough tasks at-hand.

[1] Leave comments below whether you’re a developer or in the operations function. Tell us your top-of-mind and what you care deeply about.

If you would like to learn more about PaaS, I'll be hosting an introductory webinar on February 12. You can click here to register for the webinar.

The Cloud Zone is brought to you in partnership with Internap. Read Bare-Metal Cloud 101 to learn about bare-metal cloud and how it has emerged as a way to complement virtualized services.

Topics:

Published at DZone with permission of Kathy Thomas, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}