Go DevOps try continuous Insights
Like most at my age, I am forced to watch my weight and diet! I have lived through seasonal changes of weight going up and down without really having to do much! Of course, there have been pangs of emotions to focus on weight, leading to reduction through a serious diet and exercises, but they have always been short lived. This sinusoidal nature of gaining and losing has not really bothered me all along.
But a few years back, in one of those emotional push, I had joined a course on diet and weight reduction, where they taught me to measure my weight and other parameters around it, on a daily basis and write down what I ate the day before. While this was something I did, I had not given enough importance on what it meant and how I could have used it. But I guess, it is now opening my eyes.
For the past year, I am at it again! I have pulled out those track pants, walking shoes and am back at it. This time I did one thing differently. Measure only one parameter – Weight. I am sure this is not the only measure of health but a very good metric to measure progress of what you are doing, and also the easiest one to measure. I did ensure the I measured my weight always at the same time, with the same set of clothes, always after a daily set of activities so I can confidently (or reasonably) say that the result was due to a set of activities I did yesterday (or so I thought!)
I have been now at it for the past one year, and the learning has been remarkable.
A few of those below:
1. My binge of food eating during week-end affects my weights not the next Monday but on the next Tuesday.
2. When I fast for a day, the weight affected almost the next day, as expected.
3. When I had sweet the night before, it hardly mattered for the weight the next day, and I could not see the impact a day after as well.
4. It takes two missed sessions of walking, for the weight to increase the third day.
5. I am now trying to measure the impact of Potato intake on my body – a small “experiment” in progress!
and the learning, intent to learn and the fun goes on.
But the key message is this, with just one measure done continuously, I can almost understand my bodily behaviour, far better than I have known myself all these years!
Seeing this from a DevOps lens
“If you measure a set of relevant metrics continuously and start correlating the changes in the eco-system, the potential to learn software delivery and operations will be beyond imagination! I call this as Continuous Insights, an important parameter to implement DevOps, effectively.
Keys for Continuous Insights are:
1. Identify what to Measure:
I picked weight as it was simple for me to measure so I can continuously do the same. The same should be done, when doing DevOps, so the measure can be automated and consistently confirmed to be reasonably accurate.
2. Measure consistently:
Automate all measures to ensure consistency of data and ensure these are run at same time to ensure there is minimal temporal changes.
3. Measure continuously:
Measure daily or whatever frequency to ensure that there is a continuously inflow of data to correlate changing events and what is being measured.
4. Monitor what is changing the system:
Ensure that you know what is changing the system – your food intake, your systemic changes like cold, fever etc so you can measure the impact of the same. And grow this list as you start measuring. I am sure we will never get this right, but correlation of unrelated things will open up multiple measures to control what you are measuring.
I know I am saying the obvious and something that has been said and written for ages, but we are at a time where doing this is becoming easier by the hour and hence it makes every sense to start implementing these at your organisation.
A few of those are changes that is making it easier are:
1. The ability to read and measure things is at its easiest low – SOA and REST APIs are now a norm. Products are getting build first with APIs and then with UIs. This makes it easier for you to collect data frequently.
2. The ability to monitor change is also becoming very simple – Thanks to those CI engines which have really changed the way code changes can be monitored. Thanks to tools like Monit which helps monitoring infrastructural changes.
3. The ability to act on those changes is also becoming easier – There are numerous tools that help implement actions on those changes both on the infrastructure side or on the application side (given they are written to take these changes). Configuration management tools like chef, puppet, ansible, to cloud APIs are a few which can effectively help implement various infrastructure level changes.
4. The ability to identify metrics and build workflows for measure is also very much possible today – All that is needed it to identify what to measure and build a continuous workflow to measure monitor them effectively so you can correlate on these and take decisions. There are several platforms including CloudMunch which can help.
5. The ability to define, change and store the information collected and crunching of data has become simpler with no-sql and big data infrastructures – There again are several platforms including CloudMunch which can help in this space.
Try continuous insights and it may really open interesting data for making a change that you always wanted to do. This is where agile companies differentiate in making those quick change to differentiate themselves from the rest.
I would put Continuous Insight as the first step towards DevOps as it helps you to identify what you should do – given you are already doing a lot in this space, be it Continuous Integration and Continuous Deployment.
Go DevOps, and try Continuous Insights. You can’t do DevOps, if you can’t continuously measure and get Insights!
Comments