PaaS is BadaaS

Admittedly it has been a long time since I have written code as part of my job. I have written scripts and worked on projects but not really true code writing to build an application. Now everyone seems to be doing just that, my 9 yr old daughter is interested in writing her first app for her iPod Touch, my 13 yr old nephew has taken coding classes and gone to coding summer camp.

I am however a big consumer of apps, whether it is the Movember app during the month of prostate awareness in November, or twitter or any of the countless others that I have installed across devices. The saying “software is eating the world” appears to be true. I am constantly looking for ways to interact with customer service and sales people less and less and report issues or buy things through apps.

The types of applications have changed too, I am not talking about the Exchange and SharePoint monoliths that require months of planning and deployment time and consulting hours. I am talking about the mobile applications and the homegrown in house finance and collaboration systems that are popping up through out corporations and agencies. These applications are written in Java, Python or Ruby and are developed using agile methodology. They are deployed iteratively and constantly updated to ensure they are meeting their users needs and requests. This is the age of software, and perhaps it really is eating the world.

Enter PaaS

That’s where PaaS comes in, let’s imagine a world where corporate Git repositories are leveraged to collaborate on application builds. The code is then stored in the repository, the agency has infrastructure in multiple datacenters and have already tackled the job of creating a service catalog for the traditional platform 2 applications (Exchange, Windows, SharePoint). In this world there would be a PaaS instance deployed in each of their datacenters, as well as into a public cloud offering like vCloud Air\vCGS or even AWS. Now let’s say that our Developers have access to that PaaS and a browser (crazy talk I know).

Leveraging a Cloud Foundry deployment they could perform CF Push commands from the CLI or via the browser GUI call the Git Repository and deploy their application to any of the sites available to them or all the sites at once. Each dev team could have their own agnostic CF environments to deploy their application into and unlike OpenShift from RedHat these teams won’t be able to see or sniff the traffic running in other dev instances.

These applications can be pushed across sites and scaled up in seconds, 100’s of instances near instantly deploying all from code. The PaaS examines the code determines the infrastructure requirements and if they have the appropriate pieces be it a linux VM or an in memory database service and builds the required pieces as it deploys the application.

I know what you are going to say so let me beat you to it, “But Docker can containerize the application and allow me to deploy it to blank infrastructure as well”. The answer there is both yes and no, because Docker can enable application decoupling from the infrastructure and container based apps can be deployed more nimbly, however Docker requires a pretty sturdy infrastructure to stand on and still relies on a third party configuration and automation layer; think Puppet, Chef or Ansible. Docker is a cool technology but it fails to meet the same ease of deployment that Cloud Foundry has.

Don’t believe me? Check out this video demo:

Ok I get that it’s a marketing video but you see the potential it’s a matter of pushing out application code and being able to do it across instances and change pointers without downtime. Meaning you can have continual releases of the application. All Cloud Foundry cares about is Apps, DNS names, and number of instances, you don’t have to worry about whether the instance is starting because once you push you are told when the app is deployed. No more checking on your AWS instance to see if each service started.

To me PaaS really is the future and it’s cool as hell.

Try it yourself at

http://Run.pivotal.io

Could geeks create utopia?

I have been with EMC for a year, for those of you that know me personally you know that the 1 yr mark is when I make up my mind of whether to stay with a company or look for something else. I think it takes a year to really see the culture and understand the job requirements that weren’t in the online posting. As I hit this small milestone I tend to have conversations with those in my life that are more enlightened or at least help me to focus on myself. Mostly monks and want to be monks that have been my friends for years. (Note: if you don’t have a monk as a friend I highly recommend it the conversations are never direct and often filled with more questions than answers)

While the decision itself is personal and I begin to be introspective about where I am and where I want to go I had a bit of a realization. My monk friends would say that it was a moment of clarity or a vision of utopia. Who is to say for sure but what I realized is no one tech company has all of the answers. No matter how broad their portfolio of products is. This most likely explains the EMC, VMware, Pivotal federation of companies. But from a broader perspective maybe the truth of the matter is there is space for so many because of the differentiation of each, the niche products fill a need and solve a problem.

So what was my realization?

The realization was that if we set aside the concept of making money (I’m not a communist just stick with me) and all of these tech companies were one massive organization of geeks collaborating and building and innovating at will then what could we accomplish?

I honestly believe that geeks could run the world in a way that would make life easier for all people. Not that our tribe is any less prone to the –isms that cause segmentation but because we try to be inclusive based on knowledge and technology.

The community is our real world answer for this notion. For me the IT community has taken so many shapes over the years but currently it’s influence is seen via twitter and show floors as well as small community events. There teams form and people collaborate on new projects outside the confines of their regular day jobs. This is pretty amazing to me and I love being able to contribute to these projects and learn and help others learn.

It’s to the community managers and operators and my IT sisters and brothers on there that I want to thank for this last year. You all have made my first year on the vendor side fly by and have helped provide the clarity of my place in the community and industry at large.

Thanks to everyone, I can’t wait to see what the future holds.

How to get started with DevOps

DevOps-Panther I have previously covered what DevOps is, there is a greater question of whether or not DevOps is a good thing or not. I believe that DevOps can help but may not be for every working environment or organization.

I was working with a team recently on a proposal to help a customer who wanted to implement a DevOps and service catalog framework. One of the team members sent me the Statement of Work (SOW) and it had a few objectives and associated goals and tasks. All in all a very nice representation of an SOW for project related activity. What it wasn’t though or at least not in my opinion was an implementation of a DevOps model.

We went back and forth via email on what DevOps is and what first phases were it went something like this:

Them: We are looking to do an application rationalization engagement and build out the hybrid cloud service catalog.

Me: But you said the request was to transform their teams to utilize a DevOps model of application and infrastructure management. That means we need to help them visualize the work they have in process (WIP), identify their workflows, and leverage the team mentality that will reduce deployment cycles and improve time to value.

Them: Right we are going to do that by showing them where their application workloads should sit.

Me: …