Open source alternatives to expensive licensed products can save you a bundle. In this series, learn about three open source options for your operating system, office application suite, and groupware server.
Part 1 discusses Ubuntu, a community developed Linux-based operating system for laptops, desktops, and servers. Ubuntu contains many applications: a Web browser; presentation, document, and spreadsheet software; instant messaging; and much more. This article explores Ubuntu's:
- Benefits
- Updates and stability
- Desktop version
- Compatibility and integration
- Hardware support
Part 2 covers OpenOffice, the open source office software suite for word processing, spreadsheets, presentations, graphics, databases, etc.
In Part 3, you learn about OpenChange, which provides a portable open source implementation of Microsoft® Exchange Server and Exchange protocols. Exchange is a groupware server designed to work with Microsoft Outlook®, and provides features such as a messaging server, shared calendars, contact databases, public folders, notes, and tasks.
For many organizations, the problem with adopting open source technologies has never been about the functions of the technology involved. Problems are usually directly related to the perception of the software, including what people perceive as missing functionality, lack of usability, or availability of the required support framework that makes using the software more practical.
Various Linux distributions, which create and assemble the open source software that makes up a particular edition of the operating system, have approached this problem in different ways.
Ubuntu's approach has attacked two issues that have troubled Linux distributions for some time: functionality and usability. For any product to compete with the commercial offerings from Microsoft and Apple, it must have a comparable feature set and, in many cases, a similar interface. The user interface (UI) is a good issue to address because providing a usable UI has historically meant that many products try to exactly mirror the look and feel of a commercial equivalent. This has been done to appeal to people migrating to the open source environment from their commercial cousins, and it is something that Ubuntu does very well.
Usability also affects the server environment. Linux has been the core of many server environments and installations, but the usability has always relied on people willing to dig into text file configurations and the command line. While that flexibility can make some operations easier, especially when deploying software or technology to a wide range of machines, it also produces an entry barrier for the casual and less-technically minded folks.
Many of the Linux distributions have been creating and building collections of software, utilities, and UI components to build a usable operating system for a variety of environments — from the desktop to the server — to provide the functions and usability users and administrators are looking for. Of the many distributions to choose from, why would you choose Ubuntu?
Ubuntu uses the popular and well-respected Debian Linux project as its base. By using the Debian distribution as a base, Ubuntu benefits from the security and performance aspects of Debian. Ubuntu also takes advantage of the huge array of Debian compatible packages and the support from a very large Debian community. The large community helps ensure that the operating system, and the products it supports, are well tested, and (through the open source philosophy) improved and supported. Since Debian is one of the larger Linux distributions, many other companies and organizations provide and support it as a recognized platform — making it easier to install and expand your installation.
Ubuntu is available in two distributions: desktop, and server. Both feature a suite of packages designed to provide the best environment in each case. The main goal of Ubuntu is to produce a coherent suite of applications and an associated environment so that using Linux is as straightforward and easy as possible.
Saving time on software installation and the administration of updates is a key part of saving money within any enterprise. Saving time lowers the administration overhead, especially when spread across many servers or desktop computers. The open source community has always encouraged frequent updates (release early, release often), which means that security and other updates are made available immediately with Ubuntu. The frequent schedule also means updates are well tested, and any problems are fixed quickly.
Ubuntu provides free updates for 18 months after a new release of the operating system. New releases, such as Jaunty Jackalope (Ubuntu V9.04), are launched every six months. Canonical can also provide commercial support for up to three years for desktop products and five years for server releases.
The stable combination of regular timed releases and the long-term availability of updates (even free ones), are a big draw to Ubuntu. Many companies want to take advantage of an environment that will be stable and secure over the long term. Wikimedia, the organization behind the online Wikipedia, cites the well organized updates and patches as the main reason for its move to Ubuntu as the deployment environment for its servers (see Resources for more information).
The packaging system, like the rest of Ubuntu, is open source. It uses the apt-get tool set that is part of the Debian system. To use the packaging system, you can use either the command-line client (the apt-get) or the built in Add/Remove Applications tool available in the Gnome GUI. The system will automatically download the components you need, including any dependent packages and libraries, then install the software for you without any further intervention. For example, the command to install Apache V2.x is:
root@mc-desktop:~# apt-get install apache2 |
The command produces a significant amount of output. Behind the scenes, the system is automatically:
- Downloading the packages.
- Downloading other packages that the requested software needs, such as commands and libraries.
- Installing and configuring all of the components for you.
The level of automation makes adding new software to a Ubuntu system very easy, whether handling it locally or remotely.
The updating feature is set to notify system administrators of the availability of updates when they log in (either through SSH or when using the GUI). Because you have a convenient command-line interface, you can easily automate the process (through cron), or handle the updates and new software installation remotely through a suitable SSH connection.
Figure 1 shows the package installation tool within the GUI (Synaptic Package Manager), which lets you install, remove, and update your package environment and software.
Figure 1. Easy updating of Ubuntu
The open source nature of Ubuntu and Linux lets you make usability and other changes to the system and environment to make your life easier. Such command-line interfaces to the update and installation process are good examples of people adapting and improving the software to make their, and others', lives easier.
The packaging system behind Ubuntu can use packages officially supported and maintained by Canonical, and from third-party sources. The Update Manager, also available within the desktop GUI and with a compatible command-line interface, uses the same infrastructure to handle automated updates of the operating system and applications.
Easy software installation is great for administrators, but how about your users? Ubuntu includes a vast array of software and utilities designed with the end user in mind. The experience on the desktop needs to be as good as the experience of your system administrators.
Ubuntu includes a huge range of standard software for doing most of the typical tasks you expect, such as browsing the Web, managing e-mail, photo editing, word processing, and many others. The packaging system makes all of these tools easily accessible. The open source community has a variety of software to choose from, so you will likely be able to find a tool to suit your needs.
The desktop version of Ubuntu includes the:
- X.org window server
- Gnome desktop environment
- OpenOffice productivity suite
All are designed to provide a familiar, usable environment for the typical desktop. For Internet access, the Firefox Web browser is included, along with the Evolution e-mail client, which supports Microsoft's MAPI Exchange protocol.
When you first install Ubuntu (a simple, straightforward process that often takes only 5 to 10 minutes), your first impression is that of a typical computer. The login screen in Figure 2 should look familiar to any computer user.
Figure 2. Ubuntu login screen
The login screen is clean and uncluttered, and lets you know exactly what to do to get started. Compared to the traditional login prompt that comes with Linux, it is a refreshing experience. The uncluttered experience is reinforced once you see a familiar, if not identical, desktop, as shown in Figure 3.
Figure 3. Ubuntu desktop
There are obviously some cosmetic differences, but the fundamentals of the system, the menus, desktop, icons, and other elements are all familiar. For many users browsing the Internet, there will be no real difference between the experience on Ubuntu and that on Windows®. The Evolution mail client provides the same functions as Microsoft Outlook, including multiple e-mail accounts, contacts, calendars, tasks, and memos integrated into a single application. Figure 4 shows an example.
Figure 4. Evolution mail client
The standard Ubuntu desktop distribution could easily replace the typical Windows-based installation without losing any of the productivity or compatibility. OpenOffice acts and works in a similar fashion to Microsoft Office, and it can read and write files in the various Microsoft Office® formats. Ubuntu has MAPI Exchange protocol compatibility, so the server infrastructure would not need to be modified during any migration.
Centralized desktops with LTSP
Another key feature of Ubuntu is the Linux Terminal Server Project (LTSP) within the server edition. The LTSP is a thin-client system that lets users access their desktops from any machine connected to the Ubuntu servers running LTSP.
For example, the thin-client solution means that everybody, from students to professors, at Oakland University in Michigan has access to their desktops and standard environment from computers and laptops running a variety of operating systems (including Ubuntu, of course).
LTSP offers a different way of working and organizing your enterprise's IT needs by centralizing your infrastructure. You install all the applications onto your servers, then use clients as the servers through a remote terminal. All the user information and data is stored on the servers, rather than on local desktops. LTSP is made available under the GNU Public License (GPL); it is free and open source.
One of the benefits of the LTSP solution is its compatibility with the wide range of thin-client solutions (and standard desktops and other operating systems), and with existing terminal services, such as the Windows Remote Desktop and Citrix. The broad compatibility makes migration to an LTSP solution easier for Ubuntu users. You can continue to use and support your existing infrastructure during the migration. For example, Oakland University recently completed a migration from an existing proprietary solution onto Ubuntu. The support for LTSP created a surge in system usage because of its ease of use and availability with the thin-client model.
All of these factors effectively lower costs when using Ubuntu. It reduces the management overhead at both ends of the equation. By centralizing your applications and data into the data center, you make it much easier to manage your systems. When you upgrade the applications and operating systems on your servers, you upgrade all the components for all users in one effort.
On the client side, for the computers you're managing, there are fewer packages to be updated, which helps reduce the time required to keep the systems up to date. For clients and servers, the ability to perform the updates remotely through a terminal, or automatically, makes the process completely painless.
Compatibility and integration of Ubuntu
By necessity, the open source world has to be compatible with other operating systems and environments. In many cases, the standards and systems commonly used were developed and introduced by the open source community to help provide a common base for all applications to use. The benefits of compatibility work both ways for Ubuntu users: They can use existing documents without modification and can continue exchanging those documents with the rest of the community.
It is rare that an installation will be entirely based on just one platform. Even in the cases where you have a homogeneous environment, you will likely need to retain compatibility with other applications and systems as you work with clients, suppliers, and other organizations.
Compatibility is a requirement for how you work and operate with other systems and applications, and for the systems on which you can support your chosen operating system and environment. OpenOffice, for example, provides compatibility with Microsoft Office® and the huge range of other applications that are compatible with Microsoft Office. Figure 5 shows an example.
Figure 5. Spreadsheets in OpenOffice
In addition to compatibility (ability to read/write the documents), the usability and compatibility of the UI also play a part in the adoption of Ubuntu. Users of Microsoft Office will be completely familiar with the functions of OpenOffice and how it operates, making migration at the user level much easier.
The open source community has developed a wide range of hardware drivers to be used within the Linux operating system. They allow for a very large range of hardware to be supported. Ubuntu incorporates a sizable set of these drivers, making it compatible with most systems and devices, such as:
- Storage (including SCSI, SATA/SAS, FibreChannel)
- Network interfaces (including Ethernet, Token Ring, Infiniband, Firewire)
- Video cards
- Scanners
- Printers
- And many others
For the vast majority of users, the range of supported hardware means that they never need to search for OEM drivers during the operating system installation.
Driver and hardware support compatibility ensures that you can use your chosen system with the operating system you want to use. Traditionally, proprietary hardware and software have been designed to work together, often at a significant cost. The issues of driver compatibility, or simple-platform compatibility, often confuse the situation.
Ubuntu is compatible with a wide range of hardware, including the full functions of most systems, from desktops to laptops and notebooks and servers. The effect not only simplifies the installation on these hardware types but usually speeds up the installation, making the system quicker and easier to deploy.
As Deven Phillips of Metal Sales Manufacturing explains, "This is partly because Ubuntu includes all the drivers you need. You don't need to waste time trying to track down video drivers or SCSI drivers. Canonical has obviously put a lot of effort into choosing simplified, sane settings" (see Resources for more information).
You can also run Ubuntu directly from a CD or USB memory stick using the Live Ubuntu CD model. The LiveCD model is very common in other Linux distributions. It lets you run the operating system from read-only — and often space-constrained — media, while giving you full access to the rest of the system. This enables you to do a wide range of administration tasks that would normally be impossible without reinstalling the entire operating system.
The myriad supported devices and the flexible way you can run and install Ubuntu make the system painless, and even unobtrusive, to use. The compatibility makes the system usable with any hardware. You can run it on your systems and don't have to care about getting more drivers or whether you'll be able to migrate existing hardware to the new system. The compatibility ensures that you can continue working with your documents, servers, and other services without any problems.
Canonical's Ubuntu solves several problems simultaneously with the large and effective package library it's created. The library includes many open source applications, many of which retain file and application compatibility. By combining the package library with a commitment to provide free updates for 18 months and a regular six-month schedule for new releases, any Ubuntu installation will keep you up to date with security patches and other improvements.
Part 2 of this "Saving money with open source" series explores OpenOffice, the open source office software suite.
Learn
-
Learn all about the Ubuntu desktop and server editions.
-
Canonical,
the commercial sponsor of Ubuntu, is committed to the development, distribution
and promotion of open source software products.
-
Check out the Wikimedia
case study to learn how Wikimedia uses the Ubuntu solution.
-
Read "Metal
Sales deploys mission-critical servers five times faster with Ubuntu."
-
Read Oakland
University replaces UNIX with Ubuntu to learn how Oakland University in Rochester,
Mich., replaced its aging and costly UNIX® servers to better serve its students.
-
To listen to interesting interviews and discussions for software developers, check out developerWorks podcasts.
-
Stay current with developerWorks' Technical events and webcasts.
-
Follow developerWorks on Twitter.
-
Check out upcoming conferences, trade shows, webcasts, and other Events around the world that are of interest to IBM open source developers.
-
Visit the developerWorks Open source zone for extensive how-to information, tools, and project updates to help you develop with open source technologies and use them with IBM's products.
-
Watch and learn about IBM and open source technologies and product functions with the no-cost developerWorks On demand demos.
Get products and technologies
-
Download Ubuntu.
-
Innovate your next open source development project with IBM trial software, available for download or on DVD.
-
Download
IBM product evaluation versions
or explore
the online trials in the IBM SOA Sandbox and get your hands on application development tools and middleware products from
DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.
Discuss
-
Check out the Ubuntu forums.
-
Participate in developerWorks blogs and get involved in the developerWorks community.
Martin Brown has been a professional writer for more than eight years. He is the author of numerous books and articles across a range of topics. His expertise spans myriad development languages and platforms -- Perl, Python, Java, JavaScript, Basic, Pascal, Modula-2, C, C++, Rebol, Gawk, Shellscript, Windows, Solaris, Linux, BeOS, Mac OS X and more -- as well as Web programming, systems management and integration. He is a regular contributor to ServerWatch.com, LinuxToday.com and IBM developerWorks, and a regular blogger at Computerworld, The Apple Blog and other sites, as well as a Subject Matter Expert (SME) for Microsoft.




