Hey Siri, fix my PC.

If the machines are taking over the world, are they coming for our jobs too?

“Automate all the things!” is the current trend in our industry. Chef, Puppet and Ansible scream that they are the solution to the end of monotonous work. We script all the things, ending the days of clicking Next, Next, Next, Finish. We’re using machines and machine languages to build, update and alter other machines. Right now, they still need us. They’re just making our lives easier.

Or are they enabling us to take an acceptable step towards outsourcing our tasks …. to them?

This year Zendesk dipped their toes in the water with Automatic Answers. The feature “uses machine learning capabilities to analyze customer and agent actions over time, learning which articles solve tickets associated with specific keywords and topics. If a customer indicates their inquiry has been solved successfully, the ticket is closed. For tickets that remain unsolved, they proceed to the customer service team as normal.”  It’s easy to think of that in a B2C scenario, say if I’ve emailed a company asking about the status of a product return. Automatic Answers could glean enough information from my email to check another system and reply with an answer, minus any human interaction. With in-house tech support, maybe that frees up the Helpdesk from questions like “how do I give someone else access to my calendar?” or “how do I turn on my out of office replies?” DigitalGenius chief strategy officer Mikhail Naumov confirms that customer service is easy because a history of recorded answers is a goldmine for machines to learn appropriate responses from.

At the other extreme, we now have robots that can heal themselves and this technology has been around for more than 12 months.

Somewhere between the two sit our software machines. Without physical moving robot parts, the technology that we interact with from our desktops or mobiles boils down to a bunch of code on a hardware base. If it all comes down to binary, will it one day be able to fix itself?

Software developers might start to get worried. Grab a cup of coffee and read this article about how we’ll no longer write code to program machines, instead we’ll train them like dogs. Yippee says the girl who hates coding.

A toe in the water example is Microsoft’s ‘Troubleshooter’ capability. Still initiated by a human, it will look for known common causes of problems with Windows Updates, your network connectivity or Windows Store Apps.  Yes, I know, your results may vary, but it’s a start.

IBM was playing around with Autonomic Computing back in 2003. They mention automatic load balancing as an example of self-optimization which I guess is a very rudimentary autonomic task.

Now we’ve built some intelligence into monitoring, diagnostics and remote management. Some monitoring systems can attempt a pre-programmed resolution step for example (e.g. if the service stops, try and restart the service). There are even a few conferences on Cloud and Autonomic Computing http://icac2016.uni-wuerzburg.de/  http://www.autonomic-conference.org/iccac-2017/

But autonomic computing of the future looks to building systems that can monitor, react, protect and manage themselves without human intervention. Systems will be self-healing, self-configuring, self-protecting and self-optimizing. We won’t program automation anymore, we’ll train the systems what try when they are failing (or maybe train them to aid each other? Paging Dr Server!).

I’m not sure if that’s a future I’ll really looking forward to or if it scares the heck out of me. When I get flashbacks to server that won’t boot and log in after a failed Microsoft patch, I’d gladly settle for one that correctly identifies it was a bad patch, reboots & uninstalls and actually returns it to the previous good state, all automatically.

But maybe the service desk tickets and red dashboard icons are keeping me in a job? What would you do if the servers & networks could fix themselves?