OpenStack isn’t dead. It’s boring. That’s a good thing.
NOTE: The opinions shared in this post are mine alone and are not related to my employer in any way.
The first OpenStack Project Teams Gathering (PTG) event was held this week in Atlanta. The week was broken into two parts: cross-project work on Monday and Tuesday, and individual projects Wednesday through Friday. I was there for the first two days and heard a few discussions that started the same way.
Everyone keeps saying OpenStack is dead.
OpenStack isn’t dead. It’s boring.
“The report of my death was an exaggeration”
Mark Twain said it best, but it works for OpenStack as well. The news has plenty of negative reports that cast a shadow over OpenStack’s future. You don’t have to look far to find them:
- HPE and Cisco Moves Hurt OpenStack’s Public Cloud Story (Fortune)
- Is Cisco killing off its OpenStack public cloud? (Computer Business Review)
- OpenStack still has an enterprise problem
This isn’t evidence of OpenStack’s demise, but rather a transformation. Gartner called OpenStack a “science project” in 2015 and now 451 Research Group is saying something very different:
451 Research Group estimates OpenStack’s ecosystem to grow nearly five-fold in revenue, from US$1.27 billion market size in 2015 to US$5.75 billion by 2020.
A 35% CAGR sounds pretty good for a product in the middle of a transformation. In Texas, we’d say that’s more than enough to “shake a stick at”.
You can learn a lot about the transformation going on within OpenStack by reading analyst reports and other news online. I won’t go into that here since that data is readily available.
Instead, I want to take a look at how OpenStack has changed from the perspective of a developer. My involvement with OpenStack started in the Diablo release in 2011 and my first OpenStack Summit was the Folsom summit in San Francisco.
Much of the discussion at that time was around the “minutiae” of developing software in its early forms. We discussed topics like how to test, how to handle a myriad of requirements that constantly change, and which frameworks to use in which projects. The list of projects was quite short at that time (there were only 7 main services in Grizzly). Lots of effort certainly poured into feature development, but there was a ton of work being done to keep the wheels from falling off entirely.
The discussions at this week’s PTG were very different.
Most of the discussion was around adding new integrations, improving reliability, and increasing scale. Questions were asked about how to integrate OpenStack into existing enterprise processes and applications. Reliability discussions were centered less around making the OpenStack services reliable, but more around how to increase overall resiliency when other hardware or software is misbehaving.
Discussions or arguments about minutiae were difficult to find.
Boring is good
I’m not trying to say that working with OpenStack is boring. Developing software within the OpenStack community is an enjoyable experience. The rules and regulations within most projects are there to prevent design mistakes that have appeared before and many of these sets of rules are aligned between projects. Testing code and providing meaningful reviews is also straightforward.
However, the drama, both unproductive and productive, that plagued the project in the past is diminishing. It still exists in places, especially when it comes to vendor relationships. (That’s where most open source projects see their largest amounts of friction, anyway.)
This transformation may make OpenStack appear “dead” to some. The OpenStack community is solving different problems now. Many of them are larger and more difficult to solve. Sometimes these challenges take more than one release to overcome. Either way, many OpenStack developers are up for these new challenges, even if they don’t make the headlines.
As for me: bring on the boring. Let’s crush the hard stuff.
Photo credit: By Mike (Flickr: DSC_6831_2_3_tonemapped) [CC BY 2.0], via Wikimedia Commons
#cloud #development #openstack #servers #virtualization