- Apache
- A free hobbyist web server program that has gained widespread adoption within the Linux community (although not outside of it). It is useful for small websites serving static content, but its lack of scalability means that it cannot be considered as a true enterprise solution for mission critical platforms.
- awk
- A program designed to manipulate text data in various ways, now superceded by Pearl.
- Bash
- Another name for the Linux shell. Comes from an old MIT hacker joke about wanting to bash the terminal as it was so difficult to use. Unfortunately, it hasn't improved much since.
- BSD License
- Like the GNU Public License, the BSD license is a software license designed for open source software. Unlike the GPL it does not contain any viral provisions - it simply states that you are allowed to use the source code in any manner you wish and disclaims any liability for use of the code. The name comes from the FreeBSD distro which uses this license.
- C/C++
- C is one of the first programming languages developed, taking a lot of ideas from Pascal and improving them. It is a general-purpose functional language and has been used to write the majority of software available today, as well as both the Linux and Windows operating systems. Today however C has been superceded by C++, an object-orientated (OO) extension to C which enables advanced OO functionality to be included in your software, and the use of C itself is generally limited to maintenance of older packages.
- Compiler
- A program that takes source code written in a particular language and turns it into an executable that can be run by the user.
- cron
- cron is a program that acts much like Window's Scheduled Tasks folder - it has a list of programs to start at different times. Programs started in this manner are often called "daemons".
- CVS
- CVS (Code Versioning System) is a Linux program based on older programs like PVCS and SourceSafe which has recently become popular in certain areas of the Linux programming community. Its purpose is to allow multiple versions of the source code for a program to be kept on disk.
- Daemon
- An executable program started by the cron program.
- Distro
- This is a contraction of "distribution," and refers to a specific company's version of Linux. Each distro has it's own set of tools and software, and it's own method of configuring the Linux filesystem. The choice of distro is very important when installing Linux, as due to filesystem configuration issues some software will be incompatible with certain distros!
Some of the more popular distros are:
- Mandrake - an attempt to make a version of Linux as Windows-like as possible. More suited to the novice than any of the other distros as it comes preconfigured to handle most desktop tasks, however there have been reports of buggy installation routines trashing people's hard drives.
- Red Hat - this distro is aimed at the corporate user, and comes with a good support package and proper liability. Out of all of the Linux distros this is the only one that stands a chance of still being in five years time thanks to their corporate focus.
- Debian - Debian is an ideological distro, and as such should be treated very carefully by the novice user. It exists solely to provide a platform for the GNU/Linux philosophy of open source and as such excludes the majority of the more useful applications required to use Linux in a productive fashion. It also suffers from the burden of being maintained by people who are both rude and intolerant - don't expect any help for the novice here!
- FreeBSD - this distro is designed as a server platform and by all accounts does this very well, although its extremely nonstandard configuration hinders its use as a desktop platform. Its users are very antagonistic about other Linux distros, but they can provide help for the novice and unlike most distributions there is a reasonable amount of documentation, even if it is somewhat technical.
- Emacs
- An all-in-one text editor written by RMS, this huge program attempts to do everything, from text editing to email to browsing the web to organising your folders. As such it is loaded with features, but requires a comprehensive knowledge of the arcane language List to use many of them, and the software takes up a staggering amount of RAM - comparible to MS Word for instance!
- Eric S. Raymond
- Once a member of the Free Software Foundation with Richard Stallmann, Eric S. Raymond (also known as ESR) split from that group over ideological differences. As a staunch Republican ESR argued that open source software was not incompatible with the interests of big business and that they should take corporate interests into account. However RMS's Communist leanings wouldn't let him accept the truth of this position, and ESR was forced out of the group. Since then he has written several books suitable for introducing the concept of open source to the corporate world, and pushed Linux as a worthwhile corporate solution.
- Executable
- A program for Linux - what would under windows be a .exe file. Unfortunately Linux doesn't use extensions as a means of identifying files, so determining which files are programs can often be quite hard.
- ext2
- ext2 is the name of the file system that Linux uses, similar to the FAT system used by Windows. Although ext2 is more efficient than FAT in reading and writing files, in the event of a system crash it is extremely vulnerable to corruption (due to its lack of advanced journalling functionality compared to modern file systems like FAT), which is why good Linux administrators make system backups so often.
- Free Software
- c.f. Open Source.
- Free Software Foundation
- The Free Software Foundation is a group dedicated to pushing the idea that all software should be open sourced, and in pursuit of this aim they engage in legal proceedings against people or companies they suspect of having broken the terms of the GPL and encourage programmers to give them the copyrights of their code, ostensibly to allow them to better "protect" it against... well I'm not sure.
- GNOME
- GNOME is a window manager for Linux. It started several years ago following a vitriolic attack on the KDE project by RMS, who claimed that KDE failed to meet his definition of free, despite it being licensed under the GPL as anyone can check for themselves. The upshot was the formation of the GNOME project to create a rival window manager. GNOME itself is now fairly usable, although it lacks the maturity of even KDE, and is said to be notoriously difficult to develop under, which may explain the lack of decent applications for it.
- GPL
- The GPL (which stands for GNU Public License) is a software license similar to the EULA (End User License Agreement) that you are bound by when purchasing off-the-shelf software. However unlike most commercial licenses, the aim of the GPL is to ensure the spread of open source software rather than prevent the user from pirating the software. It achieves this through a viral clause which states that whenever the software is given to anyone else, they must receive the source code as well or be in violation of the license. In addition, anyone modifying this code, or including it in another program, must also use the GPL. In this manner, the GPL "encourages" people to share the source code of programs through the threat of legal action. However, it must be noted that the GPL is still untested legally, and that it may be nothing more than a house of cards that will topple as soon as it faces a legal challenge.
- grep
- A program which allows a user to search for words in a file.
- KDE
- Like X windows, KDE is a window manager originally programmed in Germany, as evidenced in the names of software like Konqueror, but now developed across the world. The aim of KDE was to take the functionality and ease of use of the Windows desktop and replicate it under Linux, and in many ways it has been a success - usability tests repeatedly indicated that new users were more comfortable with KDE than any of the other desktops. However it still suffers from inconsistency across different parts of the interface and different applications, and has a very annoying dependancy to lock up entirely on occasion.
- Kernal
- The kernal is the core part of the Linux operating system, and includes everything required to run software such as the file system and GUI.
- Konqueror
- Konqueror is the web browser for the KDE window manager. It is small and fast, and integrates solidly with KDE in much the same manner IE does with Windows, making it ideal for new Linux users. Konqueror is one of the few pieces of Linux software that compares well with their Windows equivalents, and I hope it continues in the same vein, avoiding the vast mistakes of the Mozilla browser project.
- Lunis Torrvaldez
- Vaunted "creator" of the Linux operating system, this Soviet hacker took a well-respected academic's toy Unix and repackaged it as his own creation, naming it after himself in a fit of narcissism. Since then he has led programming efforts on the Linux kernal, although his lack of exposure to modern tools such as debuggers and versioning systems has made the process torturous and slow. Matters have not been helped by his shameless leveraging of his position as Linux's "creator" to obtain cushy jobs in America where he does little other than attract investment from Linux zealots for doomed dot-coms.
- Minix
- The original operating system which Lunis Torrvaldez took and changed to make Linux. Minix was a toy version of Unix written by Andrew Tanembaum in order to illustrate a few basic points of operating system principles, and as such lacked the necessary complexity and underlying architecture required to implement a full multitasking, multiuser operating system, and these flaws have led to serious problems with the Linux kernal such as it not having a modern virtual memory system until very recently.
- Mozilla
- Mozilla is the name given to the rewrite of the old Netscape Navigator web browser which is now defunct. The project was started under AOL's auspices to free them from their use of Internet Explorer, and AOL recently released a version of Mozilla under the name Netscape 6. While Mozilla is currently in a usable state, it unfortunately retains many of the flaws the Netscape codebase suffered from, and has added new ones in its attempt to be all things to all men. Until recently it has been the only browser Linux users have been able to use to view the web, but now it has a serious competitor in Konqueror, which has avoided the poor performance and stability issues that have dogged Mozilla.
- M$, Micro$oft, Micro$haft Winblows, etc.
- Childish insults hurled by Linux zealots at a company that has achieved market dominance through a combination of good business practice, cunning marketing and knowing what their customers want. While it may seem that these insults are being hurled by 15-year old children, it is often surprising to find out that some of these people are older than you are, and are supposedly computer "professionals"!
- MySQL
- The only non-commercial database available for Linux, MySQL originally started as an interface to a set of data files and was then crudely extended to try and become a full relational database, with only limited success. Although at first glance it looks impressive, a closer inspection shows that it lacks almost any of the features that make up a relational database, and performance problems continue to dog it when under heavy load. Critical missing features mean that it cannot be considered for any application where data loss matters, which is basically everything apart from personal websites.
- Open source
- A philosophy which states that all software should come with the source code so that users can see how the program is written, and can thus modify it if they wish to. Software which doesn't come with the source code is referred to as being "proprietary." This concept was envisioned by Richard Stallmann, director of the FSF, and later also championed by Eric Raymond, who attempted to put a business-friendly spin on the concept.
- Pearl
- Pearl is one of the more popular programming languages available under Linux, primarily because for a long time it was about the only alternative to C/C++. Designed by Larry Wall, a "linguist" (received an M.A. degree 20+ years ago, but as far as we can ascertain, has no actual published work in linguistics), it avoids the trend of making programming languages easier to use in favour of "natural language" constructs which make it resemble assembler more than anything else and almost impossible to learn and just goes to show why programming languages should be designed by people that actually have programming experience. Unfortunately, because Perl is only available under Linux it has attracted a hardcore of fanatic supporters who will defend it at great length even when its flaws (and there are many) are obvious.
- PostgreSQL
- Postgres is the second most popular database available under Linux, behind MySQL. Unlike MySQL, Postgres is a fully-featured relational database management system that supports much of the advanced functionality offered by industry standard databases such as Oracle and SQL Server, and unlike MySQL is isn't free, but available for a small charge from several vendors. Again unlike MySQL development has been rapid with progress in both features and performance being made over the last few years, but it still lakes some of the critical features which make Oracle and SQL Server the choice for truly mission-critical enterprise solutions.
- Programming languages
- A programming language is a particular set of source code instructions for making programs. There are hundreds of different languages in use today and each has their own ways of doing things and are generally used for different tasks. Unfortunately popular languages like Visual Basic and VC++ aren't available under Linux, and support for others such as Java is patchy, although unsurprisingly Linux zealots attack these as being inferior. Common languages used under Linux are C, C++, Python and Perl.
- Python
- Developed by Guido Von Rossum to replace Perl, Python is a simple language that is capable of many things thanks to its extensive library of third-party code. In the last five years it has rapidly gained in popularity thanks to many disaffected Perl programmers switching over to Python, and this trend looks set to continue. In general Python is much easier to code in than Perl and is far easier to maintain, meaning that money can be saved across the entire product lifecycle. However the one disadvantage it has against Perl is that because it isn't compiled it suffers from a performance hit, making it unsuitable for writing high-performance software.
- Richard Stallmann
- Richard Stallmann (often referred to as RMS, although this seems to be an affectation based on the vast number of three-letter acronyms in computing) is one of the founders and director of the Free Software Foundation, and is a tireless proponent of open source. At one point he used to be a programmer, writing software such as Emacs (a text editor) and some of the GNU/Linux tools used by Debian and other free distros. Nowadays he does nothing other than give speeches about open source software, and attack projects which don't follow his ideology, such as KDE or glibc.
- Root
- root (lowercase "r") is the name of the administrator account under Linux, the sole account that can configure much of the operating system and access hidden system files. While this means that users cannot delete important system files it suffers from a serious lack in a real-world environment - with only one possible administrator account you can only have one person administrating the system, and in a large multi-user environment this limits Linux's usability.
- Samba
- A program which allows you to access files under Linux from Windows. Often used by small companies which cannot afford a proper Microsoft server to go with their desktop machines.
- sed
- A program designed to manipulate streams of binary data such as pictures.
- Shell
- A shell is the name that system administrators give to the command prompt that comes with Linux. Whereas under Windows use of a command prompt isn't necessary thanks to Microsoft's efforts to open up computing to everyone, under Linux the command prompt is vital - many important utilities lack graphical versions, a sure sign of Linux's fragmented development plan.
- Shell scripts
- Shell scripts are files which contain commands which are run by the Linux shell. In a very similar fashion to VB script (.vbs) files under Windows, shell scripts are often used by hackers to spread viruses via email. Unfortunately, as shell scripts are far more widespread in the Linux world than under Windows, disabling them is not an option, making Linux machines more vulnerable to hacking by default.
- Slashdot
- Slashdot (charmingly referred to as "/." by its users) is the busiest and longest-running site for Linux users on the web today. The weblog format of this site means that users can post their own comments to the various stories the editors post, and this results in a free-for-all that sometimes produces gems of information, but mainly results in vitriol, abuse and outright lies by Linux zealots. During my investigation I attempted to mine the site for Linux information "from the horse's mouth" but received nothing but flamewars and mailbombings from 15 year-old Linux users with no social life or skills.
- Source code
- The raw instructions which computer programmers create programs. These are written in a programming language and then compiled to create an executable.
- Swap
- Like Windows, Linux can use a hard disk drive as extra memory. However unlike Windows Linux cannot simply allocate space on an existing drive to use, it must have it's own special "swap" area on its own hard drive, which cannot be changed once you have installed Linux. Additionally, due to design problems caused by the underlying Minix architecture, until recently there was no full virtual memory system and Linux relied on an archaic and inefficient paging scheme.
- Vi
- A very early text editor for Linux which has unfortunately remained popular with elitist ubergeeks who feel comfortable with its arcane syntax and modal editing. For everyone else, avoid like the plague.
- Virtual memory
- A modern operating system technique in which space on a hard drive is used as extra RAM, allowing users to run more programs than they otherwise could. Linux now has a full virtual memory system in version 2.4.10, but previously it used an antiquated swapping system based upon old Minix code. However, the virtual memory code is still very much in alpha, and should not be used in a production environment.
- Window managers
- Because of Linux's origins as a text-based operating system and the opposition of its designers to graphical user interfaces there is no standard GUI system available for Linux. Instead there are several different programs, called window managers, which implement a graphical user interface in their own manner, and GUI software is written for a specific window manager and is incompatible with the others. The more common window managers are X windows, KDE and GNOME, and all share a common flaw in that programmers (especially arrogant Linux zealots) have no idea about user interfaces, and so their window managers look like children's toys and have all the usuability of a wet paper bag.
- WINE
- Since Linux suffers from a vast lack of useful applications the WINE project was started to provide a way of running Windows applications under Linux. Despite several years of trying barely half of Windows programs work under WINE as we speak, and the ones that do tend to be the smaller, less useful applications.
- X windows
- X windows is the original window manager for Linux, based on an older design used on commercial Unixes. While it is free to use it lacks any but the most basic of GUI functionality, and has largely been superceded by KDE and GNOME.
- Zealot
- A Linux zealot (or alternatively an open source zealot) is one of the many people for whom their choice of operating system or software license has moved beyond practical considerations into an ideology. Most of these people practically worship Richard Stallmann, who exemplifies the zealot with his wild-eyed stare and Biblical prophet look and odor (trust me, I've smelt it!). These are the people that will flame you at even the slightest suggestion that alternatives might be possible, even when they are blatently wrong. The sad thing (for Linux that is!) is that if these people spent even a tenth as much time contributing to Linux as they did attacking Micro$oft, it might already be a truly enterprise-ready operating system that could displace Windows as the choice for tech-savvy professionals.
|