An IT environment is a complex system. You have many layers of technology that are reacting and interacting with each other in a very fluid dynamic. And like most systems, they can arrive at some level of stability when energy is put in to them to help organize and stabilize them.
This view of systems has heavily influenced our approach to technology. One of the ultimate goals of any technical system is stability, predictability and efficiency. When a user needs to use technology to complete a task, they need to be able to rely on the technology consistently.
What destabilizes a system? In my opinion, it’s introducing change; whether it be intentional change or simply change that is derived through entropy. Think about a pond of water where you have just dropped a stone — the ripples of the water elegantly flow away in concentric circles from the stone. Then drop in a second stone and see how its concentric circles influence the first stone’s rings. It’s the same principal in IT systems. Energy is expended to bring the system to stability and predictability and if change is introduced, you will influence that system in intended and unintended ways.
So, what does any of this have to do with Maintaining Stability in Windows 10?
First, a little background about how Microsoft has changed their approach to delivering improvements to your operating system. Do you remember the days when you would purchase a machine with the latest version of Windows and within a few years Microsoft released a new operating system? Let’s say you had Windows XP and then Microsoft releases Windows 7. You would purchase an upgrade and either reinstall the new operating system or upgrade. That is what I call a monolithic development style. Microsoft would set about the changes that they felt their customers wanted and work on that for several years, then finally say “that’s it,” that’s everything that’s going to go in to this release. They test it and finalize it for production and release it to the public. Over the next several years there would be releases for software updates to fix bugs or security problems but very little in the way of new features, user interface changes or other improvements, until several years later when you would purchase a new machine with the new operating system or purchase the software to do an upgrade or reinstall.
Microsoft has turned all of this on its head. They are now doing what I call an iterative approach to development. I’m sure all developers have another official term for it, but this is the way I think about it. The idea currently is that you won’t need to purchase another operating system to get new features, enhancements, user interface changes, etc. These will be released on a regular basis via an update process. So your operating system will still be Windows 10, but you will be receiving enhancements in a more rapid deployment schedule without having to purchase a new operating system.
What we’ve found is that this is all totally cryptic and confusing to the end users. In fact, what we’ve seen is that customers will call us wondering why their machine is prompting them to reboot in the middle of the day, and then after the reboot they’re being told things are being upgraded (putting them out of commission for 45 minutes). When the upgrade is complete, things aren’t working correctly after this change, etc. In fact, with a recent feature release, machines were very unstable and some were unable to connect to network resources after the update.
What Kinds of Updates Are Available
- Feature Updates: These are the equivalent of actual operating system upgrades — the ones that are significantly changing your operating system. Microsoft plans to release these twice a year. Often they are named things like “Fall Creator Update” or “Spring Creator Update.”
- Quality Updates: These are updates for security and bug fixes and don’t include new features. These are released monthly in a cumulative roll up.
Take Control of Windows 10 Updates
Luckily, we are able to control how quickly a machine will receive updates and have a process for deployment of the feature updates on a more delayed schedule to help to maintain the stability we are looking for in the system. We need to slow down the deployment of the Feature Updates so longer periods of stability can be achieved. Here are a few resources and a few things to consider, so you can achieve this as well.
Get Off the Fast Track
Microsoft has several “Channels” that define how quickly a machine will receive Feature updates. In fact, a user can go as far as signing up to get some of the earliest releases available before they are released to the general public — this is known as the Insider Program. In my opinion, the best approach is to move the majority of your machines to the slowest channel. We recommend for any business to use Windows 10 Pro, which will give you some flexibility along these lines. For Windows Home users you don’t have this option. Microsoft Servicing Channels
We recommend setting your Windows 10 system to be on the Current Branch for Business, also known as the Semi-Annual Channel. Additionally, you can delay the release further by deferring the feature update for up to 365 days.
This article outlines the options you have for changing how Windows 10 will receive their updates: Take Control of Windows 10 Updates.
Test New Feature Updates
Set aside a few machines that aren’t critical to business operations to be on a faster track. By doing this, you can get the feature updates and see if there’s anything that you would benefit from. You will also have an opportunity to see how it interacts with your existing infrastructure. We typically keep most machines on a faster track, so we will see the impact before our customers are impacted and we can be familiar with the upcoming changes.