Upgrading our software for enhanced performance
As engineers, we’re used to creating hardware and software to make really complex systems. Tasks such as writing new software, debugging, testing, optimising, and upgrading hardware are normal everyday activities for engineers. Despite an increasing pace of technological advancement and understanding, there’s one complex system that we still don’t fully understand… ourselves! As humans, we are truly amazing and complex systems.
Like all systems, we can sometimes malfunction or break down.
When our hardware malfunctions, we go and see a doctor. Doctors have access to all sorts of diagnostic tools such as x-ray and MRI machines, that enable them to debug and fix our hardware. In some cases, they may crank open the cover and have a rummage around inside.
If something goes wrong with our software, we might seek the help of a psychotherapist who will use a range of interventions to help debug and resolve our issues. In some instances, there might be a conflict at the hardware abstraction layer where our software and hardware meet. For these, we might need the help of a psychiatrist who’ll prescribe medicines to address chemical imbalances.
But what happens when our system isn’t broken, and we’d simply like to upgrade our system?
For hardware enhancements we might turn to a personal trainer or nutritionist. Software upgrades; we’d work with a teacher to help us learn new skills. But what if we want to increase the performance of our software?
Whilst doctors can open up our hardware and rummage around inside, it’s much harder to debug and optimise our software. In this respect, we’re still pretty much a black box system. We can’t probe inside to see the software in action as the innerworkings are opaque to us. We can only observe the outputs of the system and how it reacts and behaves in responses to different inputs.
So, what to do? Well, you are the Engineer in charge of the performance upgrades; the leading expert on you. Like all good engineers, you have access to a whole host of advanced technologies that can help. One such example is a professional coach. Think of the coach as an advanced debugger, powered by an ‘intelligence’.
After you choose the right debugger for you, you start by configuring it to show you a view of how your system behaves in response to different stimuli. As it shows you new information and insights, you work with your debugger to further narrow in on the part of the system that you know requires special focus. As this is an advanced debugger, with its own in-built intelligence, it might offer back other insights and reflections for you to interpret, judge and apply meaning too.
Having used the debugger to get the necessary insights and awareness of your own system software, you’ll now be able to unleash your own engineering skills to undertake any software enhancements required. Once you’re on your way and confident that you not only know what you need to do, but have everything you need to do it, the work of the Coach is complete.