When you replace your OS, many things change with it. The interface might not look the same, the applications can be different, and you may not be able to ask the same people for help. So you may ask: “What would it be like to work with Ubuntu Linux? What would I be getting into?”
Those are good and legitimate questions. We will try to give you a preliminary impression, but the answers can be truly obtained only when you use Ubuntu yourself for the first time.
“Linux for Human Beings”
If you have heard about Linux before, you might think it is a dull and text-based OS that can only be used by computer geeks. But although the command-line shell has a central role to play, there are many different flavors of Linux and Ubuntu is aimed at being easy to use.
One of the nicknames for Ubuntu is “Linux for human beings.” 8 This means that when the developers get together to analyze future directions for the OS, they talk about what people want to use the computer for.
Many of the improvements of Natty Narwhal, the latest version of Ubuntu Linux, are in the user interface. The development team is always looking for ways to tweak the user experience so it is more productive and enjoyable.
Another area of great improvement in the last few releases has been application installation. There is a new concept regarding how applications should be looked for and installed. With other operating systems, you normally go to the store and buy a box. Then you go home, pull the DVD from the box, and figure out how the software is installed. You even have to store a paper with information about licensing for the rest of your life! The whole process is cumbersome and prone to problems. Ubuntu, with its Software Center, has a completely different approach. Installing applications is as easy as browsing categories and selecting which application best suits your needs. Then it is installed and ready to use. For free. In Natty Narwhal, the Ubuntu Software Center even makes it possible to rate and review software, so you can share your opinions with the rest of the community.
A Powerful yet Flexible Operating System
Maybe you’re wondering whether Ubuntu Linux is a stable and versatile OS or just one that is free and… you know… better not examined too thoroughly. After all, haven’t we all been told that anything free is worth what you paid for it?
If that is your concern, you should worry no further. Ubuntu, as we stated before, is a distribution of Linux. And Linux is running on quite a lot of computing devices, from tiny ones to gigantic ones. One of the most popular operating systems for tablets and smartphones is Android, an OS from Google based on Linux. On the other end of the spectrum, the Tianhe-1A from the National Supercomputing Center in Tianjin, 9 the world’s most powerful supercomputer, runs Linux as well. That means it is both flexible and powerful. If you look at the computer market as a whole, it seems that desktop computers are the last stronghold outside of the hands of Linux (the reason for that lies elsewhere, not in technical limitations).
Is it powerful? Of course it is! Of the 500 most powerful computers, as measured by the TOP500 organization in November, 2010, 10 80% run some version of Linux. Microsoft Windows runs on just 1% of those computers. This dominance wouldn’t be possible if Linux weren’t a stable and efficient OS. Once upon a time z/OS, a proprietary OS from IBM, was the only option for the powerful mainframe computers in use today for mission-critical operations in many industries; now, more and more use Linux on System z, accounting today for roughly one third of the mainframes running worldwide. Linux also drives almost half of the servers that make up the Internet. 11 Together with the Apache HTTP server, the MySQL database engine, and programming languages like PHP, Python, and Perl, Linux forms an open source bundle collectively known as LAMP, which is a free alternative to proprietary (and expensive) solutions. And LAMP is not just for low-traffic web sites: the mighty Wikipedia runs on Linux—on Ubuntu Linux, in fact 12 ).
Linux is also hard to beat when it comes to flexibility. It not only runs huge servers hidden in datacenters; many Linux derivatives found their ways into the smartphone market, Google’s Android being the most popular but not the only one (and is now even used with TV sets 13 ). And after HP’s acquisition of Palm in late April, 2010, it has announced that it will use WebOS, which uses the Linux kernel as well, as a platform for its Tablet PCs and connected mobile devices. The HP Pre 3 and HP Veer smartphones will run WebOS 2.2 at launch, and the company’s first mainstream mobile tablet computer, the HP TouchPad, will run WebOS 3.0 when it is released in summer 2011. There are even plans to make the WebOS ubiquitous even on HP PCs. This flexibility is what allows Linux to be a serious contender—many would say the perfect option—in the netbook market.
When the first generation of netbooks came out, the concept was nothing short of a revolution. Until that moment, PC manufacturers had thought that users would always be willing to spend money on ever-more powerful computers with a lot of unnecessary software. Windows Vista was the logical conclusion of that line of thought: a bloated OS, hungry for hardware resources. Microsoft seemed to hope that people would buy a new and expensive computer just to be able to run its latest OS, which was full of functionality many did not want or need. What happened was just the opposite: to avoid having to do that, many stuck to Windows XP or turned to Linux. And some even went one step further, by replacing big desktops and notebooks with the smaller netbooks. The unthinkable had happened: people actually wanted less than what the market had been providing. What they wanted was a “good enough” computer that allowed them to do their work, while being cheap enough to be affordable in a time of economic uncertainty.
Microsoft was startled. It was obvious by then that Windows Vista was not designed for that kind of device, so it allowed netbook manufacturers to install Windows XP and wait for Windows 7 to save the day. Now that Windows 7 is out, what netbooks have is an artificially reduced version of the Windows OS—reduced not to accommodate the simpler hardware imprint, but to make you pay extra money if you want all the functionality.
One of the things you have to get used to is the frequency with which new versions of Ubuntu Linux appear, each with new features and hardware support. The release cycle of Ubuntu Linux is every six months. The development team follows a time-based release cycle, not a feature-driven one. What does this mean?
Some operating systems, including Microsoft Windows, are launched only when all the planned and committed features are ready. At the beginning of the development cycle, the list of proposed features for the product is set. The company then starts selling the idea of the future product, full of new toys. Because of this, they must finish programming all the new features before launching the product, and a delay in any feature (no matter whether it is important or not) can slow down the whole project. That’s why Microsoft Windows delays are so common and launch day announcements are so widely publicized. Sometimes features go live half baked, just to avoid pushing the date still further back, and then a maintenance update has to be made available just after launch.
Things are different with Ubuntu Linux. From the very beginning, the development team made a commitment to release a new version every six months. 14 Release dates are usually scheduled for April and October. That’s why a relatively young OS (born in 2004) is now, seven years later, on its 14 th release. How does Ubuntu do this? Are its programmers more responsible or better at project management? Well, that could be part of the explanation, but not all of it. The reason Ubuntu can do it this way is because it follows a completely different release philosophy.
Instead of basing releases on features, Ubuntu bases them on time. It is a fine example of the “timebox” method 15 of agile software development. Ubuntu sets a release date for a new version of the OS long before it actually happens, and some guiding goals are given for that version. After that the development works entirely differently, because Ubuntu Linux depends on many unrelated teams of developers working together on some specific piece of software. Those teams have no relationship with Ubuntu or Canonical. They can be as disparate as the GNOME team (developers of the GNOME desktop environment used by Ubuntu), Mozilla (maintainers of the Firefox web browser), and Oracle (home of the OpenOffice.org project).
The Product Family
Since Vista, one of the odd things about Microsoft Windows has been the number of different editions on offer. Windows Starter, Home Basic, Home Premium, Professional, Enterprise, Ultimate… the diversity seemed to be there just to confuse consumers.
But no, that wasn’t the goal: it was there to make them pay more. Like a used car salesperson, they first tell you that it is cheap, based on the price of the Starter edition. And then, when you ask why you can’t do a certain thing, they say: “Oh, for that you need another edition, available for just a few more bucks.” Suddenly you find yourself going up the editions stairway, “few bucks” after “few bucks,” ending up having to pay quite a few hundred bucks for the whole experience.
Ubuntu Linux, too, comes in many different editions, but the rationale is quite different. First off, all editions of Ubuntu are free. Technically speaking, these are not different editions of Ubuntu, but derivatives. A derivative of Ubuntu means that some people packaged things differently to produce an OS targeted at a specific set of users. For example, some people find the KDE desktop environment more appealing than GNOME. So Canonical provided a new derivative of Ubuntu, which installs KDE by default instead of GNOME. There’s nothing more to it than that. It’s for simplicity’s sake. To make your life easier. Linux for human beings, remember?
There are a lot of derivatives. Some are maintained by Canonical, and some are not. The most common are:
• Ubuntu: The well-known, GNOME-based OS.
• Kubuntu: Like Ubuntu but with the KDE desktop environment.
• Edubuntu: A special derivative loaded with applications for educational purposes.
But there are many others. 16 There are Ubuntus for Christians and for Muslims, Ubuntus in Chinese and in Italian, Ubuntus for anthropologists and for designers. There is even an Ubuntu for Google employees, called Goobuntu. Because Ubuntu is a full desktop solution with a staggering number of applications, anyone can mix the ingredients the way he likes and share what he has done with the rest of the world.
The Ubuntu Linux Community
One of the arguments Microsoft uses to try to scare you away from Linux is that you will have no support. That there’s nobody “on the other side of the line” when you have a problem.
It’s totally the other way around. Linux is much more than a computer OS. It’s an entire community of users all over the globe. When you start to use Linux, you become part of this community (whether you like it or not—although you will!).
One of the benefits of membership is that you’re never far from finding a solution to a problem. The community likes to congregate online around forums and newsgroups, which you can join in order to find help.
Your initial placement in the ranks of the community is “newbie.” This is a popular term for someone who is new to Linux. Although it may sound derisive, it actually helps when you talk to others. Advertising your newbie status encourages people to take the time to help you—after all, they were newbies once upon a time.
But being part of a community is not just about getting free technical support. It’s about sharing knowledge. Linux was created to be shared among those who want to use it. There are no restrictions, apart from one: any software changes you make and distribute must also be available to others.
The spirit of sharing and collaboration has been there since day one. One of the first things Linus Torvalds did when he produced an early version of the Linux kernel program was to ask for help from others. And he got it. Complete strangers e-mailed him offering to contribute their time, skills, and effort to help him with his project. This has been the way Linux has been developed ever since. Thousands of people around the world contribute their own small pieces, rather than one big company being in charge. And the same concept applies to Linux knowledge. When you learn something, don’t be afraid to share this knowledge with others. “Giving something back” is an important part of the Linux community, and that doesn’t mean just creating programs—people contribute artwork, documentation, and time to help others.