Windows Server has always been something of an oddity to me. Traditionally, server environments have always shunned a GUI in favour of the leaner, more precise command line and I have to say, I prefer it. It looks like Microsoft might be beginning to agree with me.
At its Build 2016 developer conference Microsoft unveiled “Bash For Windows” which is, more precisely, the entirety of the GNU core userland tools natively inside a Windows environment. The Windows command line has always been a little anemic in both features and syntax so the addition of the Bash shell is long overdue.
Slightly fainter on developers’ radar was the announcement of Windows Server Nano which is a completely headless server environment with no GUI capability at all designed to be deployed on minimalist hardware or virtualized in teeny tiny containers.
So now with the familiarity and compatibility of Bash along with the already extant Powershell, we now have two powerful and widely used remote operations platforms in Windows and a headless OS option. It would be fair to say that the server graphical UI is not long for this earth.
Of course, the death of the server GUI doesn’t mean we won’t use graphical tools to administrate servers. It’s just that those tools will be running locally and only interfacing with the server, rather than running the whole GUI layer on the remote hardware.
Why are Microsoft making the change now? Probably Azure. Windows Server is not good when running at scale. Large cloud applications are traditionally run on *nix based systems due to the lower costs and the greater efficiencies but Azure changed that. Now Windows based servers have to deal with large scale deployment and automation. You can’t point and click a million times on a million servers. Instead you need to automate, and for automation, the shell is king.
WRITTEN BY STeve Poulton, Technical Lead
