Friday, December 21, 2018

Adding a process. Think about how it gets removed.

Are you adding a process to your system?  

Consider deciding and possibly defining under what circumstances it can be removed. 

Otherwise, you may just be stuck with it when it's no longer needed.

I once received a phone call from a mainframe operator who had been running an obsolete procedure for years without knowing it. When an automated procedure aborted, he went through his list of contacts (my guess would be that I was the 20th person in order of priority as the previous people were no longer reachable). 

I asked when the last time the procedure produced paper output was (part of it's procedure was to print invoices). His response; "2 or 3 years ago".

I respected the professionalism of the operator for following his checklists (his system) and asked that he find out if that type of business activity still exists before we proceeded. As suspected, I never heard back from him.  

I later found out that the business need for the procedure stopped 3 years earlier. The error was caused by the back-end server being powered off.

I will always remember this story when someone talks to me about adding a process.  

I always wonder to myself.....  

How will they know if and when this process can be removed?

How many people are executing processes that no longer serve their intended purpose?

Wednesday, November 21, 2018

A phrase for your future. Test Driven Development for Infrastructure as Code

Consider spending some time researching the following terms...
  • Test Driven Development
  • Infrastructure
  • Infrastructure as Code
You will find an abundance of information on any of them. There is some, but very little combining the various concepts into one.

Consider that some day the phrase "Test Driven Development for Infrastructure as Code" will become widely used.

As technology gets deployed automatically (think Electricity Grids, Gas or Oil Pipelines, Autonomous Vehicles, Trading Systems, Health Care systems, etc.) the time required to test new features will become harder and harder to execute in a reasonable time-frame. 

This will become evident as you research and learn more about the term "Infrastructure as Code".

Testing in this realm will become increasingly burdensome as IF statements are added to deployment scripts to accommodate different versions of hardware, operating system or environments. 

To help yourself, remember this one question....

How do we know all the security patches and updates are actually there after the deployment script says it is complete?". 

Manually will take too long and might already be too late.

Note: For the novice. It is possible for the script to be complete and indicate completion. However, critical updates have not in fact been executed. If you are not sure how this is possible, ask someone you trust to explain how this is possible. Ask about increasingly complex IF statements.

An answer to this question will ultimately become...

"Test Driven Development for Infrastructure as Code"

As a bonus, this approach will help to bridge the gap between infrastructure, software and testing. This excites me as I enjoy it when people with various backgrounds have the ability to come together to solve or work on a problem.

If you want to learn more, I encourage people in these different groups to spend a bit of time participating in events or conferences put on by the "other" groups. The future synergies might surprise you!  

Enjoy what you learn :->

Mike Caspar

Wednesday, June 27, 2018

You are the Product Owner of Your Life

For my agile aware friends and colleagues that are struggling to make big changes in your lives because of their complexity:

Consider that You are the Product Owner of your Life.

Use some of the tools you already know to remove complexity. It may help.

Monday, May 21, 2018

Social media and positive comments (post 1 of 2)

A comparison of two articles follows;

Article A
I often find that sharing my approach with others allows them to decide what might be appropriate for them. 

Article B
I often see posts where people bash others and then tell them how they should act or behave. The more appropriate thing to do is to give your opinions and thoughts about the topic.


Ask yourself...

 "Which of these two articles best reflects the way I want to treat people?"

My personal approach has evolved to ask myself;

- "Will suggesting people are incorrect as the starting point add value to what I am trying to say?"

- "Will telling people they are wrong open them up to listen?"

- "Can I share my approach in a positive way and still add value?"

Personally, I prefer to learn from those who don't start by telling me I'm (insert your negative word or comments here).

I seriously considered simply removing everything in this article and posting as...
"I often find that sharing my approach with others allows them to decide what might be appropriate for them."

To see what that post might look like, click here for the peer to this post.

The post you are reading in it's entirety and the fact that it could have added value with just the one paragraph is for your consideration. 

My aim is to help some of you out there struggling to let yourselves be heard.

What you have to add or share
might be awesome on it's own.

This is half of a two part series about the value of your message on social media.

The other half of this post can be found here

Mike Caspar

Social media and positive comments (post 2 of 2)

I often find that sharing my approach with others allows them to decide what might be appropriate for them.

This is half of a two part series about the value
of your message on social media.

The first part of this post can be found here.

Mike Caspar

Monday, April 23, 2018

Be curious

What is being said is valuable. 

What is not being said
can sometimes be more valuable. 

Next time you are trying to assess a situation, consider specifically asking yourself...

"What is one thing that was not said that I missed?"

It just takes a moment to determine how well you were listening.

Friday, March 9, 2018

TDD for Infrastructure as Code. Collaboration with security and governance.

One of the benefits of using a Test Driven Development (TDD) approach to Incremental Infrastructure as Code is that the same tests that were used to build out the system can later be used to monitor the system for security or state.

This can be a great way to help collaboration between development and security or governance folks.

Consider reaching out to an experienced technical coach on TDD or BDD to learn more.

A link to a potential illustration of how this might work is in the references below.