The art of Linux
Image from Linux Network
As discussed in our earlier article -- Ready for LAMP, let's move on to our mainstream theme - The art of (tao) Linux!
The existence of Linux is inevitable in the realm of LAMP based web development. It is more than incomplete to talk about LAMP without the operating system - Linux. Although Apache, mySQL and PHP/Python/Perl are equally capable of running over non-*nix machines too, Linux predominantly holds a larger share in terms of developers' choice. Hence the acronym - LAMP.
So, where lies the difference? What is that one-great-thing which is tempting the users and developers to talk about Linux? Is it just the low acquisition cost and access to the source code?
There are a lot more reasons which form the basis for the increasingly high user-base of Linux operating system. We definitely need to know the reason 'Why' before we move on to explore every nibble of a technology. You would have come across a lot of them. Let's key-in some really important ones;
* The support: Linux has a pretty decent support available for free over the Internet on forums and IRCs. People have claimed that the free online support they get is as good as that provided for proprietary (i.e., commercial) operating systems for a fee. However, the option for a paid commercial support for Linux is always there. The support may be in terms of -- customization, assistance in installing new programs, patches to cope with new security threats or to fix newly discovered bugs. Fortunately, the need for the last two is relatively infrequent for Linux!
* Flexibility of Configuration: Linux systems have flexible configuration capabilities and hence a lot of customization can be accomplished pretty easily, without having to modify the source code. For example, it is pretty simple to configure Linux during installation so that it will be optimized for use as a desktop computer, notebook computer, web server, or even a router. Similarly, the appearance and behavior of the desktop, including icons and menus are configurable in an almost infinite number of ways, depending upon the users' taste or requirements. Should this not be enough, the ability to freely access, revamp and recompile the source code provides virtually unlimited flexibility of configuration.
* Great Hardware Support: Although drivers for relatively newer hardwares take a while to come up, but Linux is capable of operating on a wide variety of platforms (processors and architectures). Linux scales well and is well suited for use over a diverse array of equipments ranging from supercomputers to electronic medical equipment to industrial robots to mobile phones (and can even run on a wristwatch!). All this has been made possible due to greater optimization of the source code, including far less code bloat.
* Open File Formats: Linux uses 'open format' file formats for -- word processing, spreadsheet and other file types that conform to industry-wide standards and can be used by any developer of software, anywhere in the world to create compatible programs. This is in contrast to the closed formats commonly used by several proprietary software. This eliminates the problem of lock-in to proprietary standards, consequently putting off the expense and difficulty of switching to some other software in the future. It therefore allows the user to have complete control of its data.
* Security: Linux has great security which results in a very low rate of infection by viruses, worms, trojans, spywares and malwares. This is because *NIX related operating systems have been designed from the scratch with security in mind, rather than having attempts at security tackled on as an afterthought. For example, users do not always use the system as the root (admin) user by default. This protects key system files even in the event of a break-in by a malicious intruder. Most of the viruses are designed keeping Windows based systems in mind. They are generally of the extensions .ini and .exe, which do not affect the linux installations. The best partÂ is -- free availability of the source code allows thousands of people around the globe to search and report the security vulnerabilities in it.
* Choice and Flavors: Presence of numerous distributions of Linux, each having its own unique set of characteristics but, basically compatible with each other gives users' a variety. This allows users to select the versions which best meet their requirements. Moreover, if a provider of Linux were to go out of business, there would still be many others from which to choose. This results in fostering a healthy competition amongst them, thereby contributing to the continuous improvements in Linux's performance and quality.
* Each Device is a File: Linux considers devices as files -- each device has a respective file to mark its presence. *NIX security model is based around the security of a file, thereby making it easier and more robust to control the accessibility of a device. Hence, making the devices more secure.
* Linux is Stable and Reliable: That is perhaps one of the reasons for a large number of servers running on Linux.
Did I forget to mention that linux is FREE!
Let's hope these reasons do some good in our quest to master the-art-of-linux. We'll see more about Linux in subsequent articles. Stay tuned!