- Pip install Boto3 - Thu, Mar 24 2022
- Install Boto3 (AWS SDK for Python) in Visual Studio Code (VS Code) on Windows - Wed, Feb 23 2022
- Automatically mount an NVMe EBS volume in an EC2 Linux instance using fstab - Mon, Feb 21 2022
The demand of Linux professionals was up 70 percent a year ago, and most of them were admins (58 percent). Of course, this high demand causes thriving salaries for Linux experts. After reading the article, I wondered how many PowerShell geeks could be bribed to change their PowerShell CLI to Bash. Jefferey Snover, the PowerShell inventor, once called PowerShell the renaissance of the command line. So perhaps the next big thing is the rebirth of the Bourne-again shell? This would totally free us from click-click-click.
The Linux guy
I guess the idea was planted in my mind by a comment from Dalmiro on Jeff’s very popular post, The PowerShell career pipeline. Dalmiro is doing everything on the PowerShell console, which is why he was called the “Linux guy.” Let’s leave it open if this was meant as a compliment or as an insult. But, when I read this, I had a question at my fingertips; I wondered if Dalmiro is ready to take the next step in his console career and move ahead to the original model of PowerShell, which are the Linux shells, of which Bash is the most popular.
Microsoft has, in a way, made many Windows admins feel it’s convenient to work on a CLI, and scripting on Windows is now almost as popular as in the Linux world. Once you have learned how much fun it is to script and work on a console, the inhibition level to move to an environment that is not so different is probably much lower. It is a bit like in the world of politics. If a political party tries to attract voters from another party by adopting one of their popular values, after a while, previously loyal voters tend to defect to the original when the once-despised value has become presentable.
Since the demand for Linux experts is now growing rapidly, the temptation of a gifted and ambitious PowerShell scripter to measure his skills in the homeland of scripting must be huge. Of course, you can say that The Linux Foundation is most likely exaggerating. After all, it is their job to make Linux shine. However, other indicators exist that make their numbers appear reasonable.
I think the main reason for the increased demand for Linux admins is the cloud. In my article about the growth of Amazon’s cloud, I presented some numbers that help estimate how fast this transition in IT is advancing. Now, if you have a look at the diagram below, which I generated at thecloudmarket, you can get an idea what has been growing at approximately the same speed in Amazon’s cloud.
Linux and Windows in Amazon’s cloud
To make the diagram easier to read, I disabled some of the Linux distros. Red Hat Linux, for example, is approximately at the same level as Windows (orange line). The red line stands for “other Linux,” and the blue line represents the most dominating OS in AWS, which is Ubuntu. Notice that this diagram does not represent the number of running systems in Amazon’s cloud; it only shows how many different offerings are based on a certain operating system.
I guess we would get a comparable picture for other big cloud providers, with one exception of course, and that is Windows Azure. We can only speculate how much Windows Azure could reduce the cloud effect on Linux. Nevertheless, it is interesting to note that even Microsoft had to pay tribute to the popularity of Linux in the cloud by offering Ubuntu, CentOS, and SUSE virtual machines in Windows Azure.
There are many reasons why Linux is so popular in the cloud. First of all, the fact that it is much more customizable than Windows allows admins to create images with a much smaller footprint. Server Core was Microsoft’s attempt to compensate this shortcoming, but I think this didn’t really work out as planned. Not even Windows Azure offers a Server Core image.
The licensing costs of Windows are certainly another important reason why Linux rules the cloud. Since the number of (virtual) servers is growing quickly, many Windows shops are beginning to feel the server OS costs.
Another important factor is that many companies of the “new economy” are offering web-based services (Google, Facebook, etc.) where Linux always had a strong foothold. It is hard to imagine how these businesses could even exist by running Windows servers instead of Linux. The tribute they had to pay to Microsoft would certainly be huge.
At the moment, most servers are still running on-premises; however, this is changing swiftly. And I think that the popularity of Linux in the cloud is beginning to affect on-prem installations as well. Once you have the CLI and Linux guys in the house, it is tempting to save licensing costs by moving a couple of servers to Linux.
The cloud alone certainly doesn’t explain the rising popularity of Linux. Android and the Internet of Things also have their effects. What I find most interesting about Android is that it proves that it is indeed possible to slap an easy-to-use interface onto Linux.
Ease of use
The main reason why Microsoft was able to hold Linux in check over so many years was that Windows was so much easier to use. Android changed this on the client side. Whenever I meet someone with an Android tablet (or an iPad), I ask them why they prefer their tablet over a Windows 8 laptop. The answer is never “touch;” rather, it is almost always “easier to use.”
I have been asked several times already by Windows 8 and Windows 8.1 users how to shut down a computer. Or can you tell me why Microsoft hid the “Show desktop” icon? I could give you countless other examples where Microsoft now expects end users to “learn syntax” before they can use their products. Microsoft is now forced to significantly slash Windows prices which is sign that the easier-to-use Linux-based competition is getting closer and closer.
The just announced Update 1 of Windows 8.1 brings some UI improvements. However, the fact that the Windows UI always needs to be fixed after a new release shows that Redmond is really in need of new UI designers. The Windows Server 2012 R2 Update which also come this spring features some “minor UI enhancements” as well. In my view, Window Server doesn’t really need minor UI enhancements. I believe a major strategy change with regard to UI design is necessary. What Microsoft really needs is an ease-of-use renaissance.
One of the major reasons of the growing popularity of Linux is that the Open Source OS is much easier to use than in former times. I remember quite well how complicated it was to install the simplest applications on Linux. You usually had to compile the application yourself, which resulted in endless dependency fights. Thanks to very powerful package managers of popular Linux distros, it is now often easier to install an application on Linux than it is under Windows.
For Microsoft’s own server applications, you now often need a step-by-step guide where you have to manually install required components in the right order. This frequently ends in an orgy of moving back and forth between a GUI and a PowerShell console, which creates a very bad “admin experience.” I’d prefer no GUI at all instead of this GUI-CLI hodgepodge.
Organizations were willing to pay the license tribute to Microsoft because it saved them payroll costs. Now, as they need more and more PowerShell scripters and DevOps to run their networks—who are certainly more expensive than traditional Windows admins—the difference to Linux with regard to payroll costs has become much smaller.
It will be interesting to see if Microsoft’s new CEO is able to stop this trend. The first thing I noticed when I first logged on to Windows Azure was how thought out and well designed the user interface is. Actually, my first thought was, “Whoa, Microsoft has its mojo in UI design back.” Since Nadella was previously responsible for Microsoft’s cloud, I hope that this interface has his handwriting. Thus, I do think that Microsoft can rediscover its old strength and make using and managing computers so easy that people can focus on what they want to do with a computer rather than spend so much time finding out how they can do it.
I personally also find the Bash console easier to use than PowerShell. Maybe it is just because I have been using Linux consoles for such a long time. Or maybe it is because Linux was designed to be managed from a console, whereas managing Windows on a console feels somewhat unnatural. Bash commands are usually quite short compared to PowerShell commands, which means much less type-type-type. However, I have to admit that when it comes to scripting, PowerShell is much more powerful than Bash.
How about you? If the salary increase is high enough, would you trade your PowerShell console for the real thing, a Bash console? Would you be proud if someone called you the “Linux guy”?