Configuration Management and Desired State Configuration (DSC)

In the last post, we talked about PowerShell and DSC at a technical level.  In this blog post, I wanted to cover the challenges and bottlenecks that I see within companies as the code enters the build, test and release process (BTR process). To be clear, I am not talking about the practices of how to perform build, test and release. What I am referring to is configuration drift, which is the change from a baseline to a new configuration state. Continue reading

What is a Software Delivery Pipeline and why do we need it

The build and release process is the backbone infrastructure of software development. While it may not be the coolest or hottest part of the software development process, it is a very necessary one. 

Why, you might ask?

Software delivery is about reduction of risk and waste, ROI on new features, and flow of value to our customers.  Yes, we have heard these definitions before, but how do these definitions really relate to our everyday lives? Continue reading

The 3 R’s in Continuous Delivery

We have all seen the latest buzzwords of Continuous Delivery over the last few years. The name “Continuous Delivery” gives a general idea of the practice: continuously deploying an application or code into a system. The word “continuous” does not provide the detail of what we are trying to achieve in the Continuous Delivery practices. This is where the 3R’s of Continuous Delivery come in: Reliable, Repeatable and Reusable. Continue reading

Three Golden Rules for Continuous Delivery

What are the three major golden rules for continuous delivery? Why are they important? In addition, how can these help an organization and team deliver software? In this blog post, I will be covering how the three golden rules for continuous delivery address and answer these questions.

Continue reading

Neuroscience and Application Lifecycle Management

How does neuroscience relate to software development? Surprisingly these two fields have a lot in common with each other. Neuroscience is the study of a complex computer system (our brain) that we are constantly re-programming to meet our external requests. Just like software development, our brains like small units of information to process with fast feedback cycles.

Continue reading

Release Management – Build, Deploy, Test, and Continuous Improvement

If you have been in the software industry for any length of time, you have heard or even experienced release management practices – the good, the bad, and the ugly.

If you are new to release management practices, it’s the “art” of building and deploying software into a consumer type of environment (yes, release management is an art).

Continue reading