[A better title might be, "How to Drive Yourself Crazy Thinking About Your Career in Tech"]
I wasn’t around when the horse and buggy era ended, but sometimes I feel like I’m having the same conversations that the blacksmiths, saddle makers and stable sweeps had back in the early 1900s. Fast forward a hundred years and this 3rd platform transition has a lot of people wondering what to do next.
Let me step back and put some of this in context. During the late 1990s and early 2000s, the Internet changed everything. Where we work. How we work. The importance of technology for business success. And because of technology, very few of us have the same career path that our parents had before us.
- Companies are no longer centrally located, with their workforces being globally dispersed.
- Companies no longer maintain all their own internal services, often using resources available over the Internet to achieve the best mix of price and service.
- Companies no longer provide long-term pension plans (except some government agencies), so employees rarely stay at the same companies for their entire career.
- Customers (buyers) no longer get all of their knowledge from their suppliers. The Internet allows thousands of voices and opinions to impact their knowledge and buying decisions.
- Customers (buyers) are increasingly looking for new sources and consumption models for the technology that will help their businesses.
- Public Cloud and Open Source Software are moving the margins and control away from vendors and onto parties that can more directly control their future. The supply chain is shifting and with it is the location of value-capture.
So what does this have to do with Cloud Computing? Most people would tend to think that the majority of my days and nights are filled with deep, enlightening conversations about the topic. I wish. In fact, I am spending more and more of my time with people asking what’s next, specifically as it relates to their career in technology.
The Rise of the Rockstars
No phrase in our industry drives me crazier than “He/She is a Rockstar!” Why? A couple reasons:
- Most bands aren’t made up of dozens of people on stage; instead it’s just a few. So most people are either roadies or groupies.
- Rockstars travel. A lot. That’s part of the job. The big money is in being close to the customer. No travel, no rockstar.
- Not all rockstars make the big money. There are plenty that are only headlining at small venues in 2nd or 3rd-tier cities.
- Except for a few rare exceptions, Rockstars burn out in a short period of time.
- Rockstars begin to expect indulgences that lead to unrealistic expectations. Continued »
The “Five Computer” Theory
In 1943, Thomas Watson said, “I think there is a world market for maybe five computers.“ Then in the early 2000s, when the Web 2.0 era was starting GigaOm- resurrected the idea (sorry, can’t find the link, circa 2001-2003), but this time it was five clouds – Google (Search/Ads), Salesforce (Business), Amazon (Retail) and two others. In the first case, it was well before the PC and Smartphone era. In the second case, it was believed that we’d see massive consolidation of web services as companies struggled to figure out business models beyond freemium or backed by Google Ads.
Since then we’ve seen the rise of many “giant computers” – AWS, Google Compute Platform (and all the Google properties – Search, YouTube, Gmail, Maps, etc.), Microsoft/Windows Azure (and their other online properties), Twitter, Facebook, WebEx, Ebay – as well as the rise of many businesses built on top of those computers – Dropbox, SnapChat, Zynga, Box, NetFlix, etc.
We know from the Gartner IaaS MQ that it can be very difficult for smaller companies to catch up to AWS. But this year, I suspect the chart will be somewhat different as Google Compute Platform and VMware vCHS are added, and Microsoft Azure has expanded. Will we begin to see rapid consolidation of the “giant computer” market, with more businesses being built on top of the leaders? Or is still too early to see how the evolution to the 3rd platform will play out?
Opportunities for DevOps Consultants
My friend Jeff Schneider (MomentumSI, Transcend Computing) recently wrote a nice blog on how to evaluate consulting companies that focus on Cloud Computing. More and more, I get questions from my friends working at VARs (and vendors) trying to figure out how to get better prepared for DevOps (tools, methodology, skills, etc.). I believe there is a huge opportunity for the DevOps focused consulting companies to target VARs and existing vendors with training that would accelerate the understanding of this space. Some might argue that this could eventually eliminate the consultants existing business, but I believe the opposite would happen. They’d see an acceleration of companies looking to adopt the skills/tolls/methodologies, and they would continue to be the leading experts. The VARs (and vendors) would bring them into customers at a pace they have never seen before, because of their local presence and existing relationships. The gap between the consulting experts and the average Dev or IT team is huge. There is opportunity there to shrink the gap and significantly expand the market demand.
Can anything slow down AWS?
I get asked this all the time. Watching them continue to innovate and reduce prices, it can often be difficult to image a scenario where this happens. But there are plenty of possibilities: Continued »
The week of March 23rd, 2014 might go down in history as 1 AG (After Google). By launching (or re-launching, who can really keep up), the Google Cloud Platform (GCP) officially created a public utility cloud marketplace.
What? How can that be, considering that there are lots of recognized Cloud providers? While it’s true that all of these companies exist, and many run excellent businesses for specific market segments, most of them aren’t focused on the utility elements of the market.
On the 8th day, the Internet was created. And with it came (basically) seamless ability to access and move information around the big tangled mess of Intertubes. Apparently those TCP/IP inventors were pretty smart. And apparently ever since that day, or whenever Cloud Day 1 was, people have had the belief they could coordinate to do something similar for applications, application-containers and all of their associated data. They like to draw analogies to how email works, or how your mobile phone roams from carrier to carrier. And hence, there is the dream of a Federated InterCloud of Hybridness.
This past week, the market rumbled about how Cisco was planning to spend $1B to create the InterCloud. Since $1B is the new starting point for making cloud announcements or investments, this caught people’s attention. Also, because some media misunderstood it to be that Cisco was actually going to get into the Cloud business and directly compete against AWS, GCP, Azure, Rackspace, etc. That’s not actually the case. This about selling equipment to lots of SPs, with the hope that they will interconnect and allow companies to freely move between them. InterCloud’ing at the network layer, with a means of interconnecting with public cloud APIs.
But Cisco is by no means the first to drive this concept. Let’s take a look at who else has been driving this.
One of the most interesting things about doing The Cloudcast (podcast) is the variety of topics we get to discuss and the perspectives from people across our industry. Over the past few weeks, we’ve done shows focused on the evolution of PaaS, trends with AWS and public cloud, and how large-scale web companies scale. Regardless of whether the perspective was about large Enterprises, using Public Cloud providers or running large-scale operations, every one of the guests repeatedly brought up the growing demand for DevOps skills.
Let me step back and clarify a little bit. Saying a company needs “DevOps skills” is sort of like saying that a company needs to buy “Cloud products”. Both Cloud and DevOps are terms used to describe operational models. And in most cases, they are intertwined. Cloud tends to be more focused on self-service, on-demand resources. DevOps is focused on agile development and agile operational models than are tightly integrated. Both are focused on increasing the velocity that applications can be deployed (and updated) to help a business reach their goals.
There were a few interesting/insightful comments from those shows that got me thinking quite a bit:
“While many companies will use tools like Puppet or NewRelic (or whatever) to deploy to AWS, they have alot of skepticism that their tools companies will be around in a few years. So these companies are encouraging their people to really understand the mechanics of how they deal with operations and deployments. Over the next 2yrs, DevOps skills will be the most highly in demand, especially for anyone that considers themselves in IT Ops today.” – Mat Ellis (Cloudability)
“The problems within an Enterprise are no different than the problems of a start-up, especially if you buy into the notion that every successful company over the next 10yrs will have to have a significant involvement with software (across any industry).” – Mark Imbriaco (GitHub) Continued »
When I got into the technical side of the IT industry back in the 1990s, there was a company just down the street that was starting to gain some traction – RedHat – and they were pushing this new variant of Unix that some of my more experienced colleagues thought was interesting. Most of them already had deep UNIX backgrounds, so they were excited about the idea of a free version that ran on x86 hardware. I was less interested at the time because I thought the things a Cisco IOS box could do were pretty interesting and gave me more than enough to study for my pending CCIE.
Flash forward 15+ years and all that LInux stuff is all over the place as more capabilities that used to be in dedicated devices has now moved out into various LInux-based products and open-source distributions. Whether it’s in the networking space (OpenDayLight, Open vSwitch, OpenStack Neutron, Cumulus Linux, Quagga) or the storage space (CEPH, OpenStack Swift/Cinder, RedHat Gluster, etc.) or the Cloud management space (CloudStack, OpenStack, Cloud Foundry, OpenShift, etc.) or the underpinnings of modern application development, Linux is behind the pace of change in Cloud Computing. Continued »
Before getting into any technology discussions/definition about Hybrid Cloud, it’s important to understand what value it potentially provides to businesses. In the most basic definition, “hybrid” means multiple things brought together to work as a unified system. For most businesses, this means that every function (Finance, Sales, Marketing, Engineering, etc.) will utilize whatever mix of resources provide them the most efficient combination of agility, cost and risk-management. IT should be not different. In fact, given the popularity of SaaS applications, most IT organizations have already deployed a variation of a “Hybrid Cloud” or at least “Hybrid IT”, where it makes sense for them to utilize outside resources for functionality that might not be core to their business (Core vs. Competency). From a business perspective, IT organizations that look for Hybrid Cloud solutions are seeking ways to maximize their ability to deliver technology solutions for their business, utilizing the most appropriate global resources available to them at any given time. IT organizations need this flexibility to be able to align to how the rest of their peer groups within an organization operate.
Evolving Hybrid Cloud Definition
- The industry needs a definition that isn’t just about Public+Private = Hybrid, but needs a definition where Hybrid is also about Platform2 + Platform3 apps. (Platform2 = Existing, traditional applications; Platform3 = modern, next-gen, web-scale, mobile, social, big data applications)
- The industry needs a definition that allows customer to Build+Buy Cloud (CAPEX+OPEX) to deliver the best overall cost (long-term apps = BUILD; short-term, variable apps = BUY)
- Businesses want to seamlessly manage both Platform 2 and Platform 3 applications, within an integrated framework of SW + HW
- Businesses want to mix and match HW-defined and SW-defined across clouds to deliver Hybrid Cloud services across any cloud
- Businesses want toSaaS simplicity with Enterprise security & control.
Earlier this week, Andi Mann (@andimann) posted a simple question on Twitter about how we should treat our data. It evolved out of the commonly used phase that “you should treat servers like cattle and not pets“, a reference to more modern applications that are modular and designed around the failure characteristics of commodity hardware.
[NOTE: There is some debate over who originates or popularized this phrase]
While choosing how to treat your servers can be closely aligned to the types of applications being used, it’s a little more complicated when trying to align an analogy to data. First of all, some people think data (by itself) isn’t very valuable, until you apply some context around it and turn it into information. The “Data Gravity” theories (podcast). Other primarily focus on how data is organized and manipulated within various databases as the critical element to address. Still others are focused on the complexity and variability of the storage mechanism of the data (lots of architectures and form factors).
So why would I say that we should treat the data like “grandparents”?
Let’s start with some basic analogies and comparisons.
Value of Data – Most people would not argue with the idea that their data is important and are willing to spend large sums of money to keep it protected from being lost (or corrupted). This is not only true of the storage industry, but also of the human life industry. In data, just as in life, we will often spend 3-10x the cost to retain and protect the data as we did to create it. Backups, Clones, Snapshots, Archieves, Cloud Storage, Home Storage, etc.. All to make sure that data is around for a long, long time.
The first one was an article by Ben Kepes (@benkepes) that called out a recent JPMC report that focused on the transformation of networking equipment. It highlighted that in comparisons between ‘whiteboard’ (or ‘bare-metal’) networking equipment and Cisco equipment, that support costs were adding a significant level of cost to the overall price.
“….However, one of the insights we come away with is that Cisco’s services fees and licenses significantly inflate their pricing. Over time we would expect these fees to come under the most pressure as Cisco is forced to compete with lower cost solutions….” - JPMC
The second one came from EMC with their announcement that the ViPR storage software would be offered for free, with community support. EMC is obviously not the first company (or community project) to release free software, but this is definitely a different path for a traditional Enterprise vendor to take with a new product. Make it easy to download, trial and use the technology. Update the wiki-based documentation as problems are found. Consult with others using the software, in real-time, on the communities. It’s not your grandfather’s Enterprise vendor engagement model anymore.
Still other activities are starting to take the place of traditional tech-support. Sites like StackOverflow are there to help software developers. Projects like OpenStack are driving community efforts around documentation and training, to augment existing tools like IRC to drive community-based support. And programs like #EMCElect, #CiscoChampions, and VMware vExperts are trying to identify their best and brightest, with some people taking this a step further and setting up various fee-based activities to capitalize on their knowledge and community building.
Instead of continuing to build (or outsource) large tech-support organizations, will we begin to see Support-as-a-Service groups start to emerge? For fee, the best-of-the-best, knowledge repositories and discussions to supplement or replace support over time? Can this be done in real-time as tools/software/products report their status and intelligent analytics systems seek rememdiation in real-time?
What do you see as the future of support in the Enterprise?
Many years ago, NIST set out to define Cloud Computing. In doing so, they laid out a stacked model of IaaS, PaaS and SaaS. The leading public provider is lumped into the IaaS category, but offers many PaaS-like services. Some people are saying that maybe PaaS is dead, or at least needs to be redefined.
But recently, we’ve seen more and more people saying that maybe there will be a layer in between the IaaS and PaaS defintions. As the ability to offer “everything as a service” has evolved, so too has the thinking around the concept of “IaaS+”. IaaS+ is the idea that it’s more than just provisioning VMs and the underlying infrastructure, but also a rich set of services that can be used in conjunction with the apps in those VMs. And it implies a more modular approach than the platform/frameworks of PaaS.
- Gartner talks about IaaS+: http://cloudpundit.com/2014/01/28/the-end-of-the-beginning-of-cloud-computing/
- Moving from IaaS to IaaS+: http://www.cumulogic.com/making-the-move-from-iaas-to-iaas/
- Defining why developers like AWS: “It’s the Services”: http://blog.ingineering.it/post/47329908147/why-aws-is-so-far-ahead
There are already companies like Cumulogic (podcast), Transcend Computing and others that are building these IaaS+ layers on top of various IaaS stacks. We’re also seeing projects like OpenStack start to consider this approach with projects like Trove, Marconi, and Savanna.
“To me, the main problem is that IT assumes that VMs “as a service” is enough for developers. But watch AWS, Google and MS. What “cloud services” are they innovating with these days? They’re focused on more than just VMs, that’s for sure. DB services, Queues, CDN, etc… Developers want these higher value services, and they don’t get that from basic IaaS (or even worse, virtualization farms called “clouds”). Until IT departments (1) understand the difference and (2) find a way to deliver these services, the developers will continue to use the clouds that *do* provide them.” - Chip Childers
There are obvious trade-offs between using a platform-centric approach (PaaS) and a decoupled-services-centric approach like IaaS+, especially for the groups that have to operate and maintain the systems. It will be interesting to see which approach accelerates and emerges over the next few years, especially as more of this technology gets adopted by Enterprises for new and modern applications.