The use of a particular operating system should not be determined by the current hype surrounding it. Unfortunately the fear, uncertainty, and doubt (FUD) game is played by both the Linux, MacOS, and Windows groupies. When choosing an operating system for yourself or a client it should be chosen based on the use. It’s a radical concept that seems to elude people, but the use and user of a system should drive the requirements of a operating system. To often people try and make a case for using a particular genre of operating system and in that they create more FUD.
When choosing an operating system determining if the system is going to be a server, a desktop, a laptop, some special use system is quite important. It would seem trivial to ask these type of questions, but to often the technologist or system administrator has an agenda of using the systems they are comfortable with instead of meeting the customer needs. Also, many technology curriculums and training certifications are based on a PC centric design. The PC has many reasons to choose it for deployment, but it isn’t the only architecture. We’ll talk about different architectures later, and focus on operating systems.
So, how do we choose the correct operating system? Ask the user how they are going to use the system. A software engineer working on Linux operating system or kernel code is going to need a substantially different computer than the LAN gamer. Ask the user what the primary use, the secondary use, whether they need particular applications, if they have particular training already in place for applications, what are the security concerns, what compatibility issues are of concern, what hardware is already known, are there OS specific utilities that are needed, define the goals of future use for the system, and finally use a little imagination and experience where they user might be going.
Money is a large issue and there is a lot of FUD over the costs of particular vendors, and the sustainment of open source applications in the business environment. There is no really easy answer and the market place of technology is filled with poor research, marketing, substantial FUD, and the ire and angst of the fanatics. To determine a best course requires a technologist or system administrator to identify the best course within the scope of the problem. It is the ethical responsibility of the professional to not fall into the trap of advocacy or operating system fascism.
If you’re a client and considering adding computers to your environment and changing or looking at options be careful. If somebody makes a suggestion on a particular strategy before asking any questions then they are selling a box not advocating a solution. The crux of the issue is that a solution is based on the customers needs, and not every customer has the same needs. Determining a best course or strategy in solving your problem as a client is determined by your needs, not the particular offerings of a vendor.
In summary choosing an operating system should be done by determining the client’s needs and not part of a political movement. Professionals solve problems with the best tools possible and not as part of a social movement. Operating systems are fun to play with, change, adapt, and configure as part of experimentation. Putting that kind of experimentation into the enterprise is tantamount to failing the client.