Thursday, July 23, 2009

Considering Linux - Another Option

I am not a Linux guru. At best, I am what some might call a Linux enthusiast, which is a glorified way to say I know enough about Linux to be dangerous.

But it didn't start out that way. I started in the IT field, like so many others, working with DOS and then going to Microsoft Windows. This was for economic reasons as much as anything. Most IT professionals' career paths often follow the money. You learn and work with the systems and technologies that the industry is using because that is where the jobs are, and where the money is.

I had heard of Linux early on but never gave it much attention because Linux began as such an obscure operating system. Later I became more interested and actually tried installing the system. I will be the first to admit that my first attempts at installing and running Linux were fairly unsuccessful and I abandoned the idea and then went back and tried again several times. The first few attempts with Linux were, at best, hit and miss.

It took time, learning, and a whole lot of patience with the system for me to get the the point where I am able to say I can truly work with Linux.

I have been able to make a comfortable conversion over to the Linux side. This is not to say that I have moved completely from Windows to Linux, but that I have found a balance between both worlds.

Linux still is not, for me a completely flawless and 100% working environment. Believe me when I say I have I have gone through many frustrating difficulties working with the system. Linux is not easy. It is not built with check boxes and buttons that fix everything. Linux has a long history of computer and software development and it is still growing, improving, and being shaped by the community which uses it. But if you think Linux is difficult to work with today, try setting up an early version of Red Hat when it was free, say about version 6 or 7. In those days, we dealt with hardware compatibility issues that make today's Linux a cake walk.

Linux was not originally designed to be a one-size-fits-all operating system, nor does it have the same goals and philosophies of business and customer service that commercial software has. This is my opinion, but in my view, the goal of the Linux community and the software that drives it is to provide the groundwork upon which users, developers, programmers, and designers can build. Any Linux distribution "out of the box" has the potential not only to do amazing things, but also has the potential to fail, leaving it up to the owner of the hardware to have the choice of which kinds of tasks they wish their computer to perform. It is the complexity and the uniqueness of these tasks that dictate how much effort will go into the software.

Microsoft and similar commercial software developers have but one goal - make money. It would be a mistake to perceive them in any other way because they are businesses who exists for this reason alone. With that in mind, it is easier to understand why and how they develop their products, and where their focus and philosophies differ from the Open Source community. One is not better or worse than another; they are just different.

It is, therefore, important to understand what our goals as end-users and developers are so that we can take full advantage of the benefits of whatever tools we wish to use. It is no more beneficial to completely disregard commercial products than it is to give up entirely on Open Source. Both have great benefits, and both are here to stay. I have chosen to take the best of both worlds and try use the best from each.

It is also true that, in general, those who help themselves tend to find clearer and more precise answers from other Linux users and within the Linux community because the struggle to find your own answers to technical questions will narrow down what you are asking. For example, the question, "Why does my video not function?" is a much broader question than, "Can anyone tell me where I can find drivers for my video adapter in kernel version such and such?" The second question indicates that some preliminary research was done before the question was asked. My experience looking for help within both the Linux community and commercial software support has been that the more I have done for myself, the more willing help I have received. And conversely, the times I have obviously not done my homework were the times that I have been told I need to look further.


The process of going from a novice understanding of Linux (or any operating system) to being able to solve your own problems can be a long and frustrating road. I have been at the beginning of that road and have gone through many frustrating hours of not finding answers, both in personal research and with the Open Source community. And sometimes there is no answer. Some things simply do not work. But my experience has also been that finding the answers and fixing the problems has its own rewards. The truth is, no software developer, commercial or otherwise, can really know how to create a tool to work just for you. If that is the goal, then you, the user, will have to build it. To me, there is nothing like being able to customize a computer system to perform the tasks that I need in the way that works best for me. My personal experience is that Open Source provides the most options to allow you to do this, but it does take work and it can be frustrating at times.

If you are interested in learning about the Linux operating system and want to experiment with it I say go for it. The only thing you will have to put into it is time - but it is time well spent. If you are prejudice, however, about Linux and unwilling to consider that there may be other options out there, other than commercial software, my considered opinion is that limiting your options also limits your choices and the Linux philosophy is all about choice and the freedom to use software which suits the user.

Obviously, Microsoft has a different philosophy.