Last week CloudShare joined the 2014 Build Conference in San Francisco. If you have never been to the conference, I recommend it. It is a great way for developers to find out what is new in the Microsoft Dev Tools world, meet with Peers to solve real world problems, and get up to speed on modern day trends. Like one of this years themes, DevOps.
This event, has been increasing in popularity, and all the developers leave the show blushing from all the attention they received. This year, more than any other was a slew of new announcements. And a chance for Microsoft’s new CEO Satya to make his plea to developers that Microsoft is Cross-Platform, and they should commit. The other emphasis of the show was DevOps which is no longer some strange game that the cool kids play. It is a real thing!
There is no stopping the DevOps freight train. Much like Agile came as a distributive approach to development, but now the norm. DevOps is going to do the same. And like Agile, what is being disrupted is not only the process but the whole organization. Because DevOps is not just a set of technologies it is also a culture. At the show Microsoft announced many enhancements to Visual Studio Online, and an even deeper understanding of the future world of DevOps. But have they fully embraced the DevOps world beyond just the tools?
What is not yet being addressed is the new set of problems, albeit good ones, that DevOps is creating. Namely the fact that dev teams are now capable of moving faster then they have the ability to manage. Releases are flying out the door on every commit, and now the bottleneck is the QA process trying to find bugs and report them back to the dev team just as fast as the releases happen. This is a very big challenge.
At the heart of this new challenge is some limiting factors, one being the team, but the biggest one being the infrastructure. If the infrastructure is not part of, and move with, the rapid releases, then there is no effective way to isolate, and fully test builds against the entire application.
At CloudShare our approach is a little different. We think you should be able to version your infrastructure and provision environments with every new deployment. To do this, every deployment needs to go on a brand new instance of infrastructure that is identical but separate from all others. And the QA process and team needs to be able to create copies of these environments. So they can test the entire applications, not just the front-end in a fully isolated instance. What if, instead of sending developers a daily barrage of screenshots and cryptic descriptions of bugs, you could send them whole instances of the application front-end and back-end with the bug exactly as it happens?
This is how we believe it should be. Infrastructure that is part of the application should be treated just as the code is. Re-created on every deploy, versioned, and automated. This is the only way to make the QA team move at the speed of DevOps.
The future of DevOps is promising, and as the new challenges surface solutions like CloudShare TeamLabs will meet the challenge with a new way at looking at not only how you deploy your code, but how your manage the process around these rapid deployments.
I look forward to next years Build and talking to companies who are now already in the thick of a new way of developing applications, and finding unique solutions to the problem of being to efficient.