Tech news
at TheJemReport.com
Software reviews
at SoftwareinReview.com
Hardware reviews
at HardwareinReview.com
Discuss technology
at TJRForum.com

May 30, 2006

Head Rush Ajax review

Filed under: Tech Book Reviews — @ 2:04 pm

Ajax is on everybody’s lips these days, and Web programmers are scrambling to put it into action on their sites. For those who have been left behind, a number of books on the subject have been rushed to market over the past couple of months. O’Reilly’s Head Rush Ajax is among the most rushed of that batch. It promises to get you up to speed on using Ajax in Web applications, and from a narrow frame of reference it does just that. However, most people looking for an Ajax primer will be sorely disappointed by this book. Don’t blame the author, though — blame the Ajax hype.


Writing analysis

O’Reilly’s “Head First” book series is known for its intelligent, informal teaching style. The archetype for the series is Head First Java, and in terms of style and format, Head Rush Ajax follows in its footsteps perfectly. But where Head First Java failed, Head Rush Ajax has failed doubly so — when you’re finished reading it, while you may understand what Ajax is and how it should be used, you are likely to walk away from this book without the ability to code a site using Ajax techniques. And instead of starting at the beginning, showing readers the Ajax basics and how it is implemented in the most elementary of ways and then building on that knowledge with topics of increasing complexity, Head Rush Ajax dives right into a database-driven example that was originally written in PHP. To make matters worse, the example is a total farce — it’s a Web application that you’re unlikely to see in the real world. So right off the bat, you’re being shown complex Javascript functions that may be too difficult for readers to understand. The author says that the book does not require you to have more than a basic understanding of HTML, CSS, XML, and Javascript, but if you aren’t able to write your own Javascript functions and if you have no prior object-oriented programming experience, you’ll be left behind in the first chapter.

Head Rush Ajax does not show you different aspects of Ajax in an organized fashion; it is merely a collection of example Web applications that the author shows you how to add Ajax functionality to. A significant portion of the book is dedicated to things peripheral to Ajax, like the document object model and JSON. Really this should not have been made into a “Head First” book at all; it doesn’t fit the mold. And perhaps it should have been dedicated more to redesigning bandwidth-intensive Web interfaces than to Ajax specifically.

Putting the book to the test

It’s hard to put this book to the test. I have a great deal of Web design experience, and a working knowledge of Java and PHP, and I found Head Rush Ajax to be over my head. I got the impression that it was meant more for people who were already Javascript gurus, despite the author’s insistence that you only need to have seen and used Javascript in a Web page before. To most Web designers and developers, a basic familiarity with Javascript means a couple of lines of code — maybe a single, simple function to control a mouse action or to detect the browser type. And here Head Rush Ajax has you examining object creation, database communication, and multiple functions with complex function calls? If that’s the author’s idea of basic familiarity, I’d hate to see what he thinks a Javascript expert should be able to do.

The exercises are, as I have pointed out in other “Head First” books, inappropriate for the material. The “Head First” editors need to understand that the only way a book can transform someone into a competent programmer is to make them write code. Not providing example code to stare at and poke around, not offering crossword puzzles of programming terms, not asking to fill in the blanks with the right function — these are all good ways to get a reader to comprehend a concept, but without any actual coding, you can finish the entire book and dutifully follow all of the examples and still not be able to put this knowledge into practice. A book that deals with a concept like Ajax needs to take a more realistic approach to teaching such a complex subject; that means an introductory primer to object-oriented programming, database interaction, and Javascript. Ajax itself is advanced Javascript and XML, so without more than a “basic understanding” of these technologies, this book is useless.

One positive thing I can say about Head Rush Ajax is that it accurately shows you what Ajax can do, and how it should be used to enhance a user’s interaction with Web forms. If you have an existing Web app that you want to see use fewer page reloads, fewer server requests, and less bandwidth, Head Rush Ajax will help you understand how you can do that. However, you can just as easily learn these things from free online tutorials and articles on Ajax — you don’t need a whole book dedicated to the task. If your interest in Ajax significantly deviates from this niche, you’ll derive practically no benefit from this book.

Conclusions

As a Web technology, Ajax is nothing new — it’s just a hacky method for combining existing browser-dependent technologies in a way that enhances Web interfaces and reduces bandwidth usage. Because it’s only a mishmash of Javascript and XML hacks, its practical uses are few. Perhaps it is due to the narrowness of Ajax that Head Rush Ajax fails so miserably. Other “Head First” books concentrate on broader subjects, like programming languages and design patterns. Overall I consider Head Rush Ajax to be a failure in the “Head First” series, though many people can still derive some benefit from it. My advice is to check out some articles and how-to guides on Ajax before you buy this book, just so you can get an impression of what you’re getting into.

Discuss this article or get technical support on our forum.

Title Head Rush Ajax
Publisher O’Reilly
Author Brett McLaughlin
ISBN 0596102259
Pages Paperback, 446 pages
Rating 5 out of 10
Tag line A caffeinated learning guide to the world of dynamic Web pages.
Price (retail) U.S. $25. Buy it from Amazon.com

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

SUSE Linux overview

SUSE Linux has long been among the best desktop GNU/Linux distributions in terms of features, ease of use, included software, hardware support, user support, documentation, and quality of design. It has a user-friendly installation procedure and it will work on virtually any desktop computer except perhaps some that use motherboard technologies released in the past two months or so.

SUSE uses the Windows-like KDE desktop environment as its default, but is perfectly integrated with the GNOME environment as well. The menus are easy to navigate, and the installed software is easy to find. There’s nothing difficult about SUSE Linux.

SUSE Linux 10 comes with a built-in firewall and spam filter, and although
it’s hardly necessary on GNU/Linux, SUSE also includes an antivirus program.
Because of these features and the fact that it requires a limited-access user
account to be created for daily use, SUSE is, by default, more secure than many
other desktop operating systems. Overall, SUSE Linux is an excellent choice for
those new to GNU/Linux.

There are two versions of this operating system (aside from the corporate
products): commercial and OSS. The commercial edition is generally referred to
as SUSE Linux; the open source edition is generally written SUSE Linux
OSS. Both are essentially the same operating system. However, if you buy the
commercial edition of SUSE Linux 10.1, you’ll get CD and DVD media, an
extensive paper manual on the operating system and its software, and
90 days of installation support from Novell. The open source version is href="http://www.opensuse.org" rel="nofollow" target="_blank">free to
download, but it does not come with paper manuals or installation
support.

If you find that you’re in over your head with SUSE installation and
configuration and don’t want to wait for Novell to ship you the commercial
edition, I’ve authored a PDF guide called SUSE Linux 10.1 Kick Start, published and offered for sale through Sam’s Publishing. If you only need some post-install configuration help, check out my guide on Hacking SUSE Linux 10.1.

What’s new in 10.1

SUSE Linux 10.1
SUSE Linux 10.1: still good, but a little buggy

One of the most visible ways that Novell has lost its edge lately is the glaring lack of a changelog or any significant marketing materials for SUSE Linux 10.1. In other words, there is no comprehensive list of improvements and changes since 10.0 — there isn’t even a press kit or reviewer’s guide available, which is highly unusual for a commercial operating system. So in lieu of an official list, here are the changes I have discovered in 10.1:

  • AppArmor has been upgraded to the full version; previously only the Lite edition was included.
  • Xen has been upgraded to version 3.
  • KDE, GNOME, and X.org have been updated to their newest stable versions as of the release date.
  • YaST Online Update (YOU) and SUSEwatcher have been replaced by the ZENworks updater.
  • The Atheros wireless networking drivers (madwifi) have been removed; Atheros-based wireless cards are not supported in SUSE 10.1 initially, but you can download a madwifi package after the installation is complete.
  • The proprietary Nvidia drivers are no longer included or available from YaST.
  • Various installation-related improvements.
  • Separation of free and non-free software; the commercial and OSS editions are now materially the same. All non-free software has been moved to a separate ISO, which can be downloaded for free. Previously these packages were only available in ISO form through the commercial edition.
  • NetworkManager replaces NetApplet for easier wireless networking.
  • The XGL graphical interface enhancement and the Compiz window manager are now supported and included with the distribution, but are not installed by default.

Putting it to the test

There are a lot of nice things to say about SUSE Linux 10.1, but most of them I said back when 10.0 was released. It’s easy to install and configure, comes with a ton of software, etc. etc. — it’s probably the best desktop GNU/Linux distribution, and easily the best free-of-charge distro for those new to GNU/Linux (Ubuntu fanboys: please send hatemail to spamtrap@thejemreport.com).

The first major change that I noticed in SUSE Linux 10.1 was the distribution method. The commercial edition no longer has any proprietary software integration, and the OSS edition has its own proprietary add-on disk for things like the Java Runtime Environment, the Flash browser plugin, and all of the other proprietary extras that desktop users generally want. The Nvidia video driver is gone, though, which is a disappointment. Its absence means that you have to download the standard driver from the Nvidia and install it yourself… and reinstall it every time your Linux kernel is updated.

Speaking of drivers, Atheros wireless network chip support was officially dropped from SUSE Linux, then hastily re-added to the installation repositories some time after the release. You’ll have to put the driver RPM onto a CD or USB drive before installation, or find some other way to connect to the Internet to get the driver afterward.

The installation procedure is largely the same as it has been over the past several years, though there are little enhancements here and there that make it easier for new users to deal with, especially where drive partitioning is concerned. The default partition scheme actually makes sense — only a root, swap, and home partition are created, with the majority of the drive’s space going to /home — and if you have Windows on the drive already, the NTFS or FAT partition is automatically resized for you. There’s no need to mess with boot loader configuration anymore, either — GRUB is used by default, and automatically adds existing operating systems to the boot menu. Lastly, the Internet connection test usually works; in previous releases, this function was broken.

Once you get to the KDE desktop, you’ll notice one major difference in SUSE Linux 10.1: a buggy, highly unstable ZENworks has replaced the traditional, mature YaST Online Update. I’ve been using SUSE Linux 10.1 constantly for more than a week, and certain package updates (dhcp, totem) consistently crash the update tool. Hopefully Novell will find a way to fix this soon, lest SUSE’s security be in jeopardy from a lack of ability to apply patches.

YaST is largely the same as it was in 10.0, even down to the Online Update settings remaining in place despite the fact that they are no longer used by default. SaX now sucks, though — you can’t change the video driver, and if it does not recognize your monitor properly, you can have a lot of trouble updating the video drivers or installing/configuring XGL and Compiz because SaX wants to revert to all of its own default settings every time it has to autodetect something.

NetworkManager is nice, but so was NetApplet — there isn’t much of a difference between the two in terms of the end-user experience. Under the hood, NetworkManager uses an entirely different network device control framework separate from ifconfig and iwconfig. The two different networking subsystems don’t play well with each other, so you have to either use the new system or go back to the old method. Most people shouldn’t have any trouble with NetworkManager, but if you have any custom network configuration scripts or if you have to compile your network drivers manually, you’ll run into problems.

I tried out XGL/Compiz, and only hosed the system twice. When you mess with the X.org and SaX configurations on a low level (as you must do with XGL) and KDE (with Compiz, which is meant for GNOME), you’re begging for trouble. The video problems that you can experience as a result of a failed configuration attempt include the inability to switch to a virtual terminal to fix things — you have to rely on a serial terminal or SSH login, or boot from the installation CD. I recommend staying away from XGL until there is a proper YaST module for configuring it.

Lastly, Novell has trashed the default GNOME theme so that it works from a single KDE-like menu bar at the bottom of the screen. Making it “normal” requires about ten minutes of configuration work.

Conclusions and developer recommendations

While SUSE Linux 10.1 has lost some ground on its wonderful predecessor, I can see where it is headed in the future — and I like what I’m envisioning. A mildly buggy release like 10.1 was necessary in the big picture, unless of course Novell had opted to wait until issues with Atheros drivers, the ZENworks updater, and XGL were resolved. That would have resulted in a “skipped” release, I think. Despite the trouble I had with 10.1, none of the problems were showstoppers, nor would they keep me from continuing to use and recommend SUSE Linux.

I hold SUSE to a higher standard than most other distributions because it has always been synonymous with high quality and ease of use. Even with the few troublesome spots that version 10.1 has, it is at very worst on par with distros like Fedora Core, Mandriva, and Ubuntu. At best, it’s still the same great SUSE Linux.

Boy do I ever have some suggestions for the SUSE developers:

  • Don’t push it out the door. SUSE Linux 10.1 feels rushed, like the release engineers put the deadline ahead of product quality. It shows.
  • Atheros drivers — WTF? I have never seen an operating system — especially a GNU/Linux distribution — actually lose hardware support from one release to another. It would have been better to wait until madwifi-ng and the SUSE kernel could play nicely with each other. The fact that Atheros drivers were added later does not make up for their absence on the installation media where people who rely on Atheros-based network cards need network support most.
  • Stop castrating Xine. Why is SUSE the only desktop GNU/Linux distribution that cuts the DVD support out of Xine? There is a workaround for this problem, but SUSE users should not have to go through the hassle.
  • SaX SuX. It’s either time to ditch SaX2, or make it more configurable (like it used to be). The world would be a better place if SaX2/iSaX did not overwrite the xorg.conf file every time the system starts. Sometimes you need to add custom hacks to this file. At the very least I would like to see a program that allows you to edit the device schemas that SaX uses when configuring newly detected hardware. If my monitor is not properly detected, I should be able to permanently teach SaX the correct settings.

Discuss this article or get technical support on our forum.

Purpose Desktop operating system
Manufacturer Novell
Architectures x86, AMD64/EM64T, PPC (PPC is not supported in the commercial edition)
License GNU General Public License, although all of the packages on the non-free extras CD is proprietary
Market Desktop users
Price (retail) US $60 for the commercial edition, but you can download an evaluation DVD, live DVD, or the OSS edition for free
Previous version SUSE Linux 10
Product Web site Click here

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

SUSE Linux 10.1 only

If you’re not using SUSE Linux 10.1, don’t follow this article. There are separate guides for SUSE Linux 10, 10.2, SUSE Linux Enterprise Desktop 10, and other operating systems. You can find them in the directory of how-to guides on Software in Review.

Why you need this guide

SUSE Linux 10.1 OSS — as the name implies — is comprised entirely of free, open source software. What you will be doing in this tutorial (with the exception of configuring XGL and Compiz) is installing proprietary add-ons that add functionality. All of the browser plugins are proprietary and will require you to agree to restrictive software licenses. The DVD playback capabilities are in violation of the U.S. Digital Millennium Copyright Act (and similar laws in other countries), which many believe to be unconstitutional and a violation of consumer fair use rights (Click here for more information on DMCA reform). In other words, installing the DVD decoding software could be illegal where you live; therefore I’m not telling you to do it, but I’ll tell you how it’s done — for educational and informational purposes only, of course.

Furthermore, if you morally or ethically disagree with proprietary software and refuse to use it, this guide will be meaningless to you.

If you need a more thorough guide that covers installation and system-wide configuration, I’ve written one for Sam’s Publishing (a Prentice Hall imprint) entitled SUSE Linux 10.1 Kick Start (ISBN: 0768668263). It will be available as an electronic download for $7.99, starting on August 24.

Prerequisites

This guide assumes that you have already installed SUSE Linux OSS 10.1, and are now seeking to add support for Java, Macromedia Flash, Adobe Acrobat, Windows Media, RealPlayer, ATI or Nvidia graphics cards, XGL/Compiz interface enhancements, and commercial DVD movies. Feel free to ignore the portions of the guide that do not apply to your situation, but don’t skip over the parts that show you how to add sources to YaST, or the required packages section.

Furthermore, this guide assumes you are using the default desktop environment, KDE. If you’re using GNOME or a window manager, you’re on your own as far as getting to the YaST utility and any other KDE-specific instructions listed below. In general, however, the majority of the information in this guide is environment-agnostic.

Lastly, Hacking SUSE Linux 10.1 applies only to the x86 and AMD64/EM64T processor architectures. It does not cover the PowerPC architecture. If someone who has a PPC machine is willing to contribute a section specific to PPC, please email me at jem at thejemreport.com.

Adding sources to YaST

The first order of business is to prepare SUSE to install software from alternate sources. In addition to making this guide easier to follow in the long-run, it also eliminates the need for your physical installation media (CDs or DVD).

Go into the YaST utility by clicking on the round green main menu icon in the lower left corner of your screen. Select System, then click on YaST (Control Center). You’ll be prompted for your root password. Go ahead and type it in and press the Enter key.

You’re now in YaST, and the Software category is already selected by default. Click on the Installation Source icon. This will bring up a window that will allow you to add software repositories so that you can download add-on software. You’ll notice that your CD or DVD installation media is already listed. Go ahead and disable it by clicking the Enable Or Disable button — you’re going to add an Internet address that will replace your discs, meaning that all future packages will come from the Internet instead of your SUSE discs. If you need to, you can just as easily enable the CD/DVD source later.

Click the Add button, then click on HTTP in the popup menu. Add the following Internet address to the Server Name field and then click on OK:

packman.unixheads.com/suse/10.1 (or select a mirror from this list if this address doesn’t work for you)

You may get two errors for this source — ignore them both for right now. Repeat this process and add the following servers to your installation sources:

  • mirrors.kernel.org/opensuse/distribution/SL-10.1/inst-source/
  • mirrors.kernel.org/opensuse/distribution/SL-10.1/non-oss-inst-source/

The servers may take a few minutes to properly register with your system — be patient. If you need Atheros wireless drivers and currently have a wired Internet connection, add this source as well:

madwifi.org/suse/

Without adding the preceding sources, it will not be possible to follow the rest of these steps. Also make sure you set them to refresh — click the Refresh On or Off button to toggle the status of the new sources you just added. You can now close the Installation Source window by clicking Finish in the lower right.

Required packages

Most of the steps below demand that the following packages be installed:

  • gcc
  • make
  • kernel-source
  • kernel-syms
  • kdeadmin3
  • compat-expat1
  • expat

Check the YaST Software Manager to see if they are installed. If they are not, install them and continue with these directions when you are finished.

Atheros wireless network drivers

The original release of SUSE Linux OSS 10.1 did not contain drivers for Atheros-based wireless network cards. There are now packages available, however. Go to the Software Manager in YaST, then search for this term: madwifi

In the right pane, most people will need to select these two packages:

  • madwifi
  • madwifi-kmp-default

If you have a multi-CPU, Hyper-Threaded, or dual-core system, select the madwifi-kmp-smp package instead of madwifi-kmp-default. If you’re using Xen and need to have Atheros support in your virtual machines, select the Xen-related madwifi drivers. After you have installed these packages, you can load the ath_pci module by hand, or just restart the computer to activate your wireless network.

ATI video drivers

SUSE Linux 10.1 ships with the newly revamped open source radeon driver. That may be fine for 2D rendering, but it doesn’t do direct rendering for 3D graphics. To get hardware 3D acceleration (and for XGL support), you still need the proprietary ATI fglrx driver.

Go to the ATI Web site, click on Drivers & Software, then Linux Display Drivers and Software, then on the driver appropriate to your video card. 32-bit SUSE installations need the x86 drivers, and 64-bit SUSE needs the x86_64 versions. After you have clicked the link for your card, yet another link comes up. Click it, scroll down to the downloads table, then right-click the ATI Driver Installer download link and save it to your home directory. You do not need to download any of the other packages.

After the file transfer completes, close all open programs, then press ctrl-alt-F1 to switch to the first virtual terminal. You’ll see a text-mode login prompt; log in as root. When you’re at the command prompt, type in this command:

init 3

You’ll see a bunch of text scroll by, and then a message saying that runlevel 3 has been reached. Press Enter to get the command prompt back, then type the following command in to switch to the directory you downloaded the ATI driver to:

cd /home/username/

Substitute your user name for “username” in the above example. Now you need to change the ATI installer permissions so that it can be run from the command line.

For long file names, you don’t have to type the whole name into a terminal window. Instead, just type the first few letters and then press the Tab key, and the file name will be automatically completed for you. This is useful in situations like the one you’re in now, where there is a long and complex file name to type in. So type the following command into your terminal, and use the Tab key to complete the ATI driver file name, then press Enter to execute the command:

chmod +x ./ati-driver

That will make the program executable; this must be done before you can run it. Now it’s time to run the installer. Again, use tab completion instead of typing the name in. You have to add the ./ before the filename to tell the terminal program that the file you are referring to is in the current directory. If you don’t specify that, the terminal will look in other places for the file. It sounds crazy, yes, but that’s the way GNU/Linux is (and Unix before it). For the below example, the entire file name is typed in. Please note that this may not be the same file name that you downloaded — it is only an example. You should use tab completion when you type this command in so that you don’t accidentally mis-type the long file name. The part of the example that will not change is the switch statement after the file name (the part with the dashes). Here’s the example command for the ATI driver installer for a 32-bit system:

./ati-driver-installer-8.24.8-x86.run --buildpkg SuSE/SUSE101-IA32

And for a 64-bit system:

./ati-driver-installer-8.24.8-x86_64.run --buildpkg SuSE/SUSE101-AMD64

After a few dozen lines of text, a driver package will be created. Go ahead and run it with the following command (the first example is for 32-bit systems):

rpm -ivh fglrx_6_9_0_SUSE101-8.24.8-1.i386.rpm

And for 64-bit systems:

rpm -ivh fglrx64_6_9_0_SUSE101-8.24.8-1.x86_64.rpm

Update your system environment variables with this command:

ldconfig

Next, you need to tell SUSE that you want to use this driver instead of the standard one:

aticonfig --initial --input=/etc/X11/xorg.conf

Lastly, you have to tell YaST which driver to load (that’s a zero in the example, not a letter):

sax2 -r -m 0=fglrx

Now reboot your computer by typing the following command:

reboot

The next time your system starts, you’ll have hardware 3D video acceleration. Please note that every time you update your kernel, you must re-install the ATI video driver.

Nvidia video drivers

SUSE Linux 10.1 no longer includes the proprietary Nvidia graphics driver, but Nvidia does provide a SUSE installation source for YaST. Add this to your Installation Sources screen in YaST as instructed above:

download.nvidia.com/novell/sle10sp1

Once it’s been added, close YaST and right-click the ZENworks notification icon in the lower right corner of your screen. Click Refresh in the popup menu, then wait for ZENworks to check for updates — it could be several minutes. ZENworks should find the Nvidia kernel pacakge and notify you that updates are available. Left-click on the ZENworks icon when it turns into an orange circle, make sure all of the available packages are selected, then go ahead and apply the updates. When ZENworks is done, restart your computer. When next you log into SUSE Linux, you should have hardware 3D acceleration enabled. To check, run this program from a terminal program (the computer screen icon in the lower left, between the house icon and the life preserver):

glxinfo

Dozens of lines of text should result from this command. Look near the top for the Direct Rendering line. If it says Yes, you’re all set. If it says no, make sure ZENworks isn’t still listing the Nvidia packages as updates. If it is, try this process again or visit our forum and ask for help.

Java support

To add support for the Java language both for standalone applications and as a browser plugin for Web applets, go into YaST, then select Package Management. In the Search box, type in sun and click Search. A bunch of packages will show up in the right-hand pane. Click the checkbox next to the following packages:

  • java-1_5_0-sun
  • java-1_5_0-sun-alsa
  • java-1_5_0-sun-devel
  • java-1_5_0-sun-plugin

Note to 64-bit users: The Java 1.5.0 packages in the AMD64/EM64T edition of SUSE Linux 10.1 are 64-bit, whereas the Java 1.4.2 packages are 32-bit. Since the Firefox package is 32-bit, you will have to install version 1.4.2 if you want to be able to use Java applets. Firefox will use 1.4.2 if you have both versions installed, so you can install both Java 1.4.2 and 1.5.0, though outside of Firefox I’m not sure what effect that will have on Java-aware programs.

There is no harm in selecting all of the java-1_5_0-sun packages (you’ll notice that there are a few more that weren’t selected), but they are not necessary for running Java programs. If you’re a Java programmer you may want at least some of the other packages. When you’re done selecting them, click on Accept. When it’s done installing, click on Finish in the popup window to go back to YaST. Your computer will now be able to run Java programs and applets.

Flash, Acrobat, Windows Media, MP3, and RealMedia support

Go back into the YaST software manager. In the Search box, type in w32codec-all and click on Search. A single package should appear in the right-hand pane. Click the checkbox next to it if it is not already installed. Some people may see a lock icon there instead; this means that the package is already installed.

Erase your previous search term in the Search box, type in acroread and click on Search. Click the checkbox next to the acroread package in the right-hand pane.

Now search for flash and click Search. Select that package for installation by clicking its checkbox and agreeing to its license.

Search for realplayer and click Search. Click its checkbox. You only need the RealPlayer package itself — the other search results are not necessary.

Search for mplayer and click Search. Click the checkbox next to mplayerplug-in. You can also install the other package — MPlayer — if you want to, but you’ve already got a number of video players on your computer.

When you’ve done all of this, click on Accept. Other packages will be dependent on some of these, so you may have to click Continue in the Automatic Changes screen that comes up. After that, all of the packages you just selected will be installed and your Firefox Web browser will have all of the plugins it needs. You’ll also have the ability to play MP3 music files. A popup window will appear when it’s done — just click on Finish and you’ll be brought back to YaST.

DVD playback on 32-bit machines

You must add the sources listed above and then perform a software update via the ZENworks update tool (from the K menu, go to System, then Configuration, then Update Software). This will replace your Xine libraries with DVD-capable versions from Packman. If you had any errors in installing the Packman repository, ZENworks may not properly recognize it as a source. If this is the case, go to YaST, then Software Manager, then search for xine. Right-click all of the packages that have a blue-colored font, and mark them for update, then click Accept. There will probably be a few other required packages that YaST will want to add — go ahead and accept them, too. This is essentially the same service that ZENworks is supposed to do automatically for you.

After you’ve installed all software updates, go to the K menu (the green chameleon icon in the lower left corner), then select Internet, then Web Browser, then click on Web Browser (Konqueror). When Konqueror opens, copy and paste in this address if you are using 32-bit SUSE Linux:

http://download.videolan.org/pub/libdvdcss/1.2.9/rpm/libdvdcss2-1.2.9-1.i386.rpm

Or just click here if you want a link. Konqueror will ask you what you want to do with the file. Click the Open With button, and in the ensuing popup window, click on System, then Configuration, then KPackage (if you do not have KPackage installed, bookmark the DeCSS RPM, then go back to the YaST software manager and install the kdeadmin3 package, then restart this process). The KPackage program will read the DVD decoding package from the Web. Click on the Install button at the bottom of the KPackage window, then click on Install in the next window too. You will be asked for your root password; type it in and press Enter. Shortly thereafter, the DVD decoding library will be installed. Click on the Done button, then close KPackage and Konqueror.

You now have the ability to play commercial DVD movies on your computer — put one in and try it, if it’s legal where you are. A popup message should appear when you put in a DVD movie. If it asks you if you want to play the movie with Kaffeine, click on Yes and you’ll go straight to the video player. In some instances the disc may be recognized as a data disc, and SUSE will ask you if you want to open the DVD with K3b. In that case, click on Ignore, then go to the K menu, select Multimedia, then Video Player, then click on Media Player (Kaffeine). When Kaffeine starts, click on the Open DVD icon.

DVD playback on 64-bit machines

You must add the sources listed above and then perform a software update via the ZENworks update tool (from the K menu, go to System, then Configuration, then Update Software). This will replace your Xine libraries with DVD-capable versions from Packman. If you had any errors in installing the Packman repository, ZENworks may not properly recognize it as a source. If this is the case, go to YaST, then Software Manager, then search for xine. Right-click all of the packages that have a blue-colored font, and mark them for update, then click Accept. There will probably be a few other required packages that YaST will want to add — go ahead and accept them, too. This is essentially the same service that ZENworks is supposed to do automatically for you.

After you’ve installed all software updates, go to your K menu, then select Internet, then Web Browser, then click on Firefox. When it opens, copy and paste in this address if you are using 64-bit SUSE Linux (there is currently no 64-bit binary RPM):

http://download.videolan.org/pub/libdvdcss/1.2.9/libdvdcss-1.2.9.tar.gz

Select the Save As option, then click on the Home icon in the left pane and save it there. The file isn’t very big, so it should download almost immediately. You can close the Web browser now, and open a terminal by clicking the monitor icon in the lower left corner of your screen (it’s between the house icon and the life preserver). Now use this command to switch to root permissions:

su

It’ll ask for your root password — go ahead and type it in, then press Enter. Now you need to decompress the file you just downloaded. Type this in:

gzip -d libdvdcss-1.2.9.tar.gz

Then unpack it from its archive by using this command:

tar xvf libdvdcss-1.2.9.tar

The file will un-tar to its own directory, so you can now safely delete the tar archive:

rm libdvdcss-1.2.9.tar

Now you need to compile the DVD decoding library. Change to the directory first:

cd libdvdcss-1.2.9

And then run the configure program with this command (don’t leave out the dot and slash):

./configure

When it’s done configuring, run the make command to build the files:

make

Finally, it’s time to install the library:

make install

You now have DVD playback support. It won’t work until your library path is updated. There are a variety of ways to do that, but the easiest is just to restart your computer.

Now let’s test it out. Put a movie disc into your DVD drive and wait for SUSE to recognize it. A popup window will ask you what you’d like to open the disc with; select Kaffeine and click OK. Since this is the first time you’ve started Kaffeine, an installation check will come up — just click Next. After that, you’ll be asked if you would like to set Kaffeine as your default player for a variety of formats, and if you’d like to create a desktop icon. Do whatever you want to with these options — they are immaterial to DVD playback. When Kaffeine finally opens, your DVD should go to the root menu or, if there is no menu, start playing the first chapter.

Some DVDs and DVD players are finicky, and might not automatically start playing a movie disc. If you put a DVD into your drive and it doesn’t bring up the Kaffeine player, open your K menu, select Multimedia, then Video Player, then click on Kaffeine (Media Player). When Kaffeine starts, click on the Play DVD icon.

Using XGL/Compiz

The reason why I’m putting this section last in the article is because it needs to be done after your video drivers are installed. It’s also the section that is least likely to work for you (and most likely to destroy your nice, new SUSE Linux 10.1 installation) because the video card support is so slim and the code is so immature. If you have an Nvidia card of the GeForce 4 TI-4200 era or newer or an ATI card of the Radeon X300 era or newer, and if the drivers installed without a hitch, XGL will probably work on your system. There are three very negative possibilities by following the directions below: anything that uses the SDL library for 3D rendering will look transparent and will generally be unusable. Secondly, your 3D frame rate can drop significantly (on one test system, I saw glxgears go from 16000 to 12000 after enabling XGL), and lastly, you can totally hose your X.org environment. If the worst should happen, you can usually log in through SSH on another computer and change your xorg.conf and displaymanager configuration files back to the way they were (or use SaX); sometimes this will un-hose a system. Proceed at your own risk. All things considered, XGL is a bunch of useless, distracting GUI tricks that will sap your 3D rendering performance, and I can almost guarantee that you will get sick of this XGL crap after you have impressed all of your friends with it and come to the sober realization that wobbly windows, faded window controls, and the raindrop effect serve no meaningful purpose to desktop computing. So if you don’t have a compliant video card, console yourself with the fact that XGL isn’t all that wonderful anyway.

Before you begin, make sure you have a compatible video card. You’ll need one of the following: an ATI Mobility 9700 SE or better; an ATI X300 or better; or an Nvidia GeForce 4 TI-4200 or better. The best-case scenario is an Nvidia GeForce 6000 or 7000 series card; ATI cards prior to the X300 (but after the 8500) may or may not work depending on many factors. If you don’t meet these requirements, do not mess with XGL right now — wait for it to improve compatibility with a wider array of graphics chips.

Last warning: I had a lot of trouble with ATI graphics cards and XGL in SUSE 10.1. Specifically, SaX kept forgetting my monitor settings which meant that X failed to start, which would force me to re-configure with SaX, which in turn would erase the ATI-specific xorg.conf hacks, which would cause more problems. So after a lot of work I could get XGL and Compiz to start for a single X session, but I never did find a good way to make SaX stop screwing up my configuration files. Testing went very well with an Nvidia card, but I lost a lot of 3D performance with XGL.

Start by installing XGL and Compiz. Here are the specific SUSE packages that must be added:

  • xgl
  • compiz
  • libsvg
  • libsvg-cairo

If XGL was installed before you added your Nvidia or ATI video driver, you must remove and reinstall XGL. If any of the other packages were already installed, leave them alone. When you’re done installing everything, open a Konsole or GNOME Terminal, use the su command to switch to root, then edit the /etc/sysconfig/displaymanager file. On line 126 you should see an entry like this:

DISPLAYMANAGER_XSERVER="Xorg"

Comment that line out by putting a # in front of it, then duplicate it, using Xgl instead of Xorg:

#DISPLAYMANAGER_XSERVER="Xorg"
DISPLAYMANAGER_XSERVER="Xgl"

Then save and exit the editor. While still in the root terminal, run this command:

SuSEconfig --module xdm

Attention ATI users: You must add these lines to the video card Device line in /etc/X11/xorg.conf:

Option "KernelModuleParm" "agplock=0"
Option "EnablePrivateBackZ" "yes"

Close all open programs and press ctrl-alt-backspace to restart the X server. The next time you log in, XGL will be enabled. To try it out, run these two stacked commands from a terminal window:

compiz --replace gconf decoration wobbly fade minimize cube rotate zoom scale move resize place switcher water && gnome-window-decorator &

Compiz will replace your current window manager and use a GNOME-like window decoration. This is necessary to get the full effect of XGL/Compiz. Now play around and experience some of the XGL tricks for yourself.

If you’re sold on XGL and want Compiz to start by default in KDE, create a file called compiz.desktop in the ~/.kde/Autostart/ directory and add these lines to it:

[Desktop Entry]
Encoding=UTF-8
Exec=compiz --replace decoration wobbly fade minimize cube rotate zoom scale move resize place switcher water & gnome-window-decorator &
GenericName[en_US]=
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
X-KDE-autostart-after=kdesktop

You can configure XGL/Compiz options through the GNOME Control Center, in the Desktop Effects Settings section. To start this program from KDE, open up a Konsole window and type this:

gnome-control-center

For more information about XGL/Compiz config options, see /usr/share/doc/packages/xgl/README.suse.

Welcome to your dream desktop OS

And that’s all you need to do to make SUSE Linux into a super-powered desktop operating environment. Aside from running Windows and OS X binaries, SUSE Linux 10.1 can do everything that proprietary operating systems can and more. If you have trouble with the directions in this guide, or if you run into problems that aren’t covered here, click the link below to visit The Jem Report’s discussion forum — we’ll do our best to help you. Please note that you are not entitled to support through this forum; it is offered purely as a gesture of goodwill.

Discuss this article or get technical support on our forum.

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

Gameplay

AirIslands is a “development sim” like SimCity, with one major restriction: space. The only real estate available to you is a floating island, and it’s your job to figure out how to develop your little parcel of floating land so that you can make the most money in the shortest period of time. The object of AirIslands is to rebuild your island’s Gravitator — a ruined tower that, according to the story, has something to do with the reason why your island is floating in the sky — in five stages. Each stage requires a great deal of money, plus a certain level of population happiness; once each stage is built, your population’s happiness increases and the tower dumps a quantity of pollution onto your island. In order to raise money, you have to erect buildings and landscape the remaining space to cut down on pollution.

There are three factors that determine your island’s ability to produce money: population, pollution, happiness, and economy. Population is determined by the number of houses you have. The higher the economy, the more potential money the island can produce. The higher the happiness, the more your people will work. The more pollution there is, the faster your buildings deteriorate (and repairs are expensive!); this also will generally lower your happiness level. Each building or natural element (trees and ponds) affects some or all of these three factors. Different types of buildings are specialized to different tasks, and since your building space is limited, you have to plan your island’s development carefully. Each stage brings with it new building types and more pollution, so your strategy must adapt to the changing conditions. With time, your buildings, trees, and ponds will start to lose efficiency due to everyday wear and tear. You can repair them to keep them running at peak efficiency — perhaps as often as twice per game day. If you don’t repair things, eventually they collapse and fade away.

SPB AirIslands
SPB AirIslands (click for more screen shots)

If you’re playing on a PDA phone, you can set AirIslands to terminate when calls come in — if you don’t, the calls will be ignored. If you want to leave AirIslands running for a long period of time, you can configure an in-game screen saver to protect against screen burn-in.

The sidegames: Arkaball, Xonix, and Bubbles

Money is earned by your population, but all of the other necessary resources — brick, wood, and water — must be earned by playing the three included arcade sidegames.

Arkaball is an Arkanoid clone, and I thought was the most fun to play of the three. I also found that it was much easier to earn bricks through Arkaball than it was the other resources in the other two games. Often, by the time I was done playing Arkaball, I had a gigantic stockpile of bricks. Like all other Arkanoid-like games, there are annoying levels where you have to get just the right ricochet to get past a certain level, but if you get frustrated, all three sidegames allow you to take your earned resources and leave the game; you can return later to resume that game, or start a new one.

Bubbles is a Frozen Bubble clone with a few more features. It’s reasonably entertaining, but you earn water resources at a very slow pace.

Lastly, there’s Xonix. I’ve played games like it in the past, but I can’t think of their names right now. Basically, you have to divide and conquer the screen with a laser. There are various objects — like ball bearings, nails, and wrenches — that bounce around the screen, inadvertently trying to stop your progress. Playing this game with the stylus is an exercise in anger management — I recommend the keypad or arrow keys if you have them.

Graphics and sound

The graphics are impressive considering the limitations imposed by a qVGA display. Slower PDAs may exhibit some choppiness in animation; to counter this problem, AirIslands has a detail slider. I had it turned to the highest setting on a Symbol MC50, and never had one problem.

The music is cute but uninspired, and it gets annoying quickly, especially considering the extended periods of gameplay necessary to completely rebuild the Gravitator. I ended up turning the music level down (or off), and left the sound effects at their default value.

Arkaball is the best-looking Arkanoid clone I’ve ever seen, although it’s not like I go around searching for them. The sound is decent. Xonix features some really neat graphics, especially in the interaction between the laser and the wood background. Again, the sound is okay, but it’s nothing special. Lastly, Bubbles looks good and sounds good, but it still seems to rank below its GNU/Linux cousin, Frozen Bubble.

Summary

SPB AirIslands is unlike any other game I’ve played, and though it is limited in scope, the replayability is high. After you’ve finished the game, you’ll want to restart and try to complete the Gravitator in a shorter amount of time. If you can complete AirIslands within 25 game days (each game day lasts for about 5 minutes), SPB Software House will give you a free copy of SPB FreeCell. 25 days is a real challenge when you’re first starting out, but after three or four complete games, your strategy will improve markedly. Some have even completed AirIslands in as few as 8 game days, though that is well beyond my skill level at this point.

Discuss this article or get technical support on our forum.

Purpose Game
Manufacturer SPB Software House
Device and OS support Supports both VGA and qVGA displays. Microsoft Windows Mobile 2002, 2003, 2005 (5.0)
License Proprietary, restrictive in all the usual ways
Market Pocket PC users
Price (retail) U.S. $20
Previous version N/A
Product Web site Click here

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

FreeBSD overview

This section is for people who are new to FreeBSD. If you’re already familiar with it, you may want to skip down to the next section.

Originally developed from the Unix-based Berkeley Software Distribution, FreeBSD is among the oldest extant Unix derivatives. It is currently maintained and improved by a large team of programmers, and supported monetarily by individual and corporate donors.

From FreeBSD you can generally expect a modern, Unix-like operating system, heavily armed with network services and tools. It is relatively easy to install, configure, and administer FreeBSD on servers or desktop machines. FreeBSD is scalable up to at least 12 CPUs (this is as many parallel CPUs as it has been officially tested with), which includes SMP support for Hyper-Threading and multiple cores.

Aside from the programs included in the base system, FreeBSD offers extra software via pre-compiled binary packages; and a Ports system, which functions much like a less automatic version of Gentoo’s Portage software management framework. From Ports you can automatically download, compile, and install more than 13,000 programs. There are few applications in the free software canon that are not available in the FreeBSD Ports tree. There is also an available Linux binary compatibility layer which is efficient enough to say that there is no noticeable performance difference between Linux binaries and FreeBSD binaries running on the same system.

A common misconception about FreeBSD is that Apple OS X is based on it. While some of the FreeBSD userland programs are used in Darwin (which is the operating system that forms the basis for OS X), the OS X kernel is based on Mach, not FreeBSD, so OS X is not “based on” or “developed from” FreeBSD in the traditional sense (such as the way OpenBSD was forked from NetBSD in 1995).

The majority of the FreeBSD base system is licensed under the free software BSD license, although some included programs are governed by the GNU GPL and similar free software licenses.

What’s new in 6.1

Perhaps the FreeBSD team took a page from the OpenBSD playbook, and chose to make a lot of small modifications for 6.1-RELEASE. That’s in stark contrast to many of the preceding releases, which introduced revolutionary code changes that, while great on paper, ended up causing more trouble than they were worth.

A complete list of changes since 6.0 can be found in the release notes for AMD64 and i386, but the highlights are:

  • Improved keyboard support
  • Improved sound drivers
  • A number of base system components have been made multi-processor safe
  • IPv6 support in ipfw
  • Various network driver bug fixes and enhancements
  • Improved package tools, including Portsnap
  • A firmware subsystem that allows loading binary blobs into the kernel

Putting it to the test

FreeBSD 6.0 was a positive note in what had been a negative trend with the buggy and unstable FreeBSD-5 series. I used to rely on FreeBSD as my desktop operating system a few years ago, but had to switch to GNU/Linux when my system became too unstable to use.

FreeBSD 6.1 is best described as a refinement of 6.0, but it’s nowhere near perfect yet. The good news is, the AMD64 version of FreeBSD 6.1 is better than ever, though the credit for this success is half due to many third-party software packages in the Ports tree that are now fully 64-bit clean.

Despite all of the improvements in the network drivers, I had a little trouble with the Nvidia nve driver — I got intermittent device timeouts in the AMD64 edition of FreeBSD. It’s possible the problem also occurs in the i386 version, but I didn’t see it happen there, and the error was rare to begin with.

I also ran into keyboard problems during installation. The installer either locked up or killed the keyboard connection the first two times I ran it; the third time through I had garbled keyboard output; and I never did get the mouse working. The devices in question were part of the Microsoft Wireless Laser Desktop 6000, which is a fairly new peripheral package. Still, there were no problems with these devices in OpenBSD 3.9 or Gentoo Linux. Part (or all) of the mouse problem was that moused would not recognize the uhid0 device node as the USB mouse.

The good news is, the major stability problems seem to be gone for good — 6.0 was not a fluke. The package problems that I had with the 6.0 installation CDs (asking you to switch discs dozens of times) also seems to have also been fixed in 6.1.

This is the first time I’ve used Portsnap for updating my Ports tree. Usually I do it the old fashioned way, via cvsup. Although it would really take a few weeks of daily updates to properly test a framework like this, I found it to work as advertised during my test period. Portsnap requires a lot of initialization — you have to download a snapshot, then rebuild the Ports tree before you can do anything with it. Portsnap kind of reminded me of Gentoo’s Portage system, although a bit more primitive. Anyone who is already familiar with cvsup, portupgrade, and the Ports tree won’t find anything new and wonderful about Portsnap, but newcomers will probably find this to be a much simpler way to update their installed programs.

Conclusions and developer recommendations

Overall I found FreeBSD 6.1 to be another step in the right direction, and I think it’s encouraging that there weren’t any revolutionary base system changes in this release. Sometimes big changes are unavoidable, but historically the FreeBSD team has bungled such leaps as the switch to the ULE scheduler, the introduction of SMP, and the liberation of the base system from the big giant lock. Sometimes you have to stop and make sure that what you presently have is working properly, and it looks like now is that time for FreeBSD. I applaud their efforts with 6.1 and look forward to testing 6.2. In fact, I may even try to switch my workstation back to FreeBSD in light of its newfound stability and networking enhancements.

Here’s what I’d like to see in FreeBSD in the future:

  • More refactoring. It looks like the FreeBSD team is on the right track, but it’s worth reiterating the fact that the best progress happens in small steps. In every single FreeBSD release I have used back to 5.0, I’ve found at least one indication (and often many) in the form of error messages and crashes that something isn’t working right. That shouldn’t happen.
  • Installation of default config files. After installation, FreeBSD is left with no real make.conf or rc.conf, although there are example files in /usr/share/examples. Every time I install FreeBSD, I find myself copying over these files (and cvsup supfiles) to /etc and customizing them myself. I don’t see why the examples can’t be installed into /etc by default.
  • AMD64 Java binaries. FreeBSD now has a license to distribute JDK and JRE binaries from Sun, but only on the i386 architecture. A 64-bit version would be nice.
  • Better organization of the Ports tree. Although I think that the Ports tree in general could do with a standard naming convention for categories and programs, a bigger complaint of mine is that every non-English language has to have its own directory. I’d like it if everything in /usr/ports could comfortably display on one screen after an ls command. If all of the foreign language ports were moved to a single directory (or a metadirectory to house the current dirs), that would free up a lot of screen space, which makes finding categories and programs much easier. I also think that the science directory could include the biology and astro categories; and I strongly question the need for an “x11-clocks” software category.

Discuss this article or get technical support on our forum.

Purpose Operating system
Manufacturer The FreeBSD project
Architectures x86, AMD64/EM64T, SPARC64, PC98, Alpha, PPC, IA64
License BSD, although some parts of the base system are under the GPL or other free software licenses
Market Web, email, and other network services servers; also useful as a desktop OS
Price (retail) Free to download, or $35 for a CD set
Previous version FreeBSD 6.0
Product website Click here

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

It started with the operating system

While writing a review for OpenBSD, I realized that even though it didn’t have proprietary video drivers, and the desktop programs were a little out of date, in terms of the kind of work I do, it had everything I needed in an operating system. It got me thinking about the days when I used to do all of my writing in MultiMate in DOS and WordStar on CPM. Email wasn’t quite popular yet, but it was generally accessible through a text interface in whatever terminal program I was using to connect to the Internet. In other words, I could do all the same things then that I do now, except today’s software is more capable and stable, free as in rights, and far more secure. Anyway, the big realization for me was that I was getting more writing done in OpenBSD than I was with my state-of-the-art GNU/Linux machine with all of its tweaked-out programs and pretty graphical interfaces. It seriously made me question the purpose of having a graphical environment at all.

Back in the DOS days, I was only aware of the software that other people gave me, and I always made it work for my purposes. If a new version of DOS were released, there were no RSS feeds or tech news sites (or a World Wide Web to host them) to tell me about it, and chances are I wouldn’t care anyway. In fact, I can clearly trace my problems to the much-hyped release of MS-DOS 6.0 with its DOSshell file manager, Defrag disk defragmenter, and the infamous DoubleSpace data compression utility. That was the first time that software promised to help me to get more out of my computer. What a terrible lie that was; the only thing worse is the fact that I kept believing it for more than ten years. I didn’t want more out of my computer, and I didn’t need more — I was already happily productive. Before that, software was marketed mainly as a tool that enabled you to do a specific task; then there was MS-DOS 6.0 with its enhancements. Curse you, Microsoft.

But can it make my coffee?

The disease that started with DOS 6 worsened with time. From then on, if I got wind of a program that sounded interesting or had some feature or functionality that I thought was cool, I had to have it. Once installed, I became obsessed with making every one of the programs I used into a heavily-stocked arsenal.

When I moved to GNU/Linux, each application was almost an operating system in itself — it had to do everything that it was conceivably capable of doing, even if I never used most of the extra features. If Gaim didn’t have encryption or XMMS didn’t have playback capabilities for formats that I’d never even heard of, I felt that I was missing something. More than that, I worried that at some point in the future I would need that functionality and not be able to use it. Every program elicited a doomsday scenario where missing plugins or extra features would somehow undo me, all the while ignoring the fact that fussing over all of that crap was undoing me.

1001 ways to skin an application

When I sit at my fancy, highly customized GNOME desktop, if I come to any sort of impasse in my work, I have all manner of icons and graphics to pull me into other programs. And if those icons and graphics aren’t to my liking, I can waste all kinds of time on art.gnome.org or gnome-look.org or Freshmeat’s theme section looking for new desktop themes. Eventually I found RSS feeds to tell me about new themes as they were released.

Then there’s my Web browser. I usually use Firefox, but I also have Opera, Mozilla, and Epiphany. The latter uses the GNOME theme, but the other three have their own theme sites
that I regularly pore over, looking for something new and interesting. I hardly ever use Mozilla or Opera (only when I need the Flash plugin, which is rare), but if they’re installed, they have to be dressed to impress. XMMS, too. And when those are all themed, my GNOME Terminal has to have the right schema, and OpenOffice.org and Bluefish have to have highly customized button bars and anti-aliased default fonts. When that’s done, there are hundreds of Firefox extensions to consider. I wish I could have back all of the time I have spent making my software look fancier.

Back to the basics

Despite this epiphany, I still have my high-powered 64-bit workstation with all of its tweaked-out software. In some way, shape, or form, I’ll always have something like that for playing games, watching/making/copying movies, and other activities like that. But from now on, I’m going to do as much of my writing and programming — my creative work — from as simple and plain an interface as possible, on another computer that is dedicated to work. Likely that will mean Vim on OpenBSD (that’s what’s on it now), but if I find something more capable for either task, I’m all for it. Currently I do the majority of my writing in Vim, then start up X11 to use Bluefish for the final edit, cut and paste any Web links that I might need, and post the story to my sites. I haven’t figured out how to do all of that efficiently from the command line yet, and it’s possible that I never will. But when I’m in the home stretch on an article, distraction is no longer an issue for me. I also stick to Fluxbox with a plain theme — no buttons, widgets, or graphics to draw my eyes away from my work.

So what did I learn from this revelation of overtechedness?

  • A computer is a tool. First, let’s admit that a computer is a tool — not an appliance, not a magic box with no limitations, not a piece of art to make your desk look pretty. The thing about a tool is, the more functions it is equipped to perform, the less ideal it is for any one task. Jack of all trades, master of none. Tools are used in business and in play; baseball bats, trowels, computer mice, and Nintendo controllers are all tools. They have implied and preferred uses, but you can adapt them to do much more. When I was a full-time electronics technician, I used all kinds of unusual tools, like dental picks, exacto knives, felt tape, and even an old RAM module (for safely prying apart plastic chassis components). You should think of your computer as a tool that you customize for a given duty, not as an amazing invention of limitless utility.
  • Your tools should inspire, not distract. The best tools are the ones that enable you to most efficiently accomplish your goal; rarely are they the best-looking tools. The fancier an application gets with graphics, the more you’ll be distracted by the glitz and glimmer. There is a reason why traditional tools like footballs and screwdrivers aren’t usually designed with aesthetics in mind. You, the craftsman, are creating the art, not using it. Tools are implements of work or play, and as such are designed for optimal function, not style. Someone once approached me about switching to an Apple computer with the OS X operating system (actually, this has happened many times under different circumstances). The primary theme of his pitch was that I would get more work done on a Mac because they are “made for artists,” despite the fact that I didn’t find Apple’s software tools to be any more useful than those for Windows, Linux, or BSD. When I asked him what he liked about his Mac, the majority of his points revolved around looks. His computer was “beautiful” and OS X was “sleek” and “sexy” (a little Freudian anthromorphism, anyone?). That has distraction written all over it, as far as I’m concerned, and it is precisely the kind of environment that I’m now trying to avoid. So while that guy is fondling his beautiful computer, I’ll work on finishing my book from 16-color text mode on a plain-looking grey Acer TravelMate. I’m sure there are people who get a lot of legitimate use out of Apple computers, but honestly, even they have to question the functional purpose of all those glowy lights and acrylic. If you need a better example, take a look at B.B. King’s “Lucille” guitar — not pretty, but nothing else will get the job done in the same way.
  • Capability is not synonymous with productivity. Just because a machine or program can do something does not mean that it must — or should. Figure out what kind of work (or play) your computer will do, and organize your software in a fashion that best facilitates that. Don’t think in terms of what your computer can do; think of what you want to do with your computer. Take Skype, for instance. While it’s really cool that you can talk to people over the Internet, is that really going to replace your telephone or cell phone? No? Then get rid of it — you don’t need it, no matter how cool it might be. If possible, it might be better to have two computers: one for work, and one for play (whatever “play” means to you — to me it means trying out interesting new operating systems and software). You could also have two user accounts, window managers, or operating systems on a single computer, each streamlined for and dedicated to work or play.
  • Delegate tasks accordingly. Modularity is one of the most important procedural programming concepts, but it is just as applicable to desktop computing. Break your work up into modules that single programs can handle individually. For instance, you might use Getmail to retrieve your email, Spamassassin and Amavis to filter it, and Mutt to read it. That way you can more easily tailor the process to your needs, rather than trying to adjust your needs to the limitations of singular all-in-one applications. Wherever possible, let the tools do the work.

Don’t over-tech yourself. Faster computers, bigger monitors, fancier desktop environments, and more expensive software applications can never replace the power and creativity of your own focused attention. No matter what you intend to use it for, a computer is still nothing more than an enhanced paper notebook and pen; you still have to do the hard part on your own.

Discuss this article or get technical support on our forum.

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

WordPerfect Office overview

This section is for readers who are new to WordPerfect Office. If you’re already familiar with this software suite, you’ll probably want to skip down to the next section to see what’s new in this release.

Corel WordPerfect Office is built around some of the industry’s oldest and most feature-packed software. The WordPerfect word processing program predates Microsoft Word, and was the premiere DOS word processor before graphical interfaces (ala Windows) were the standard. Quattro Pro has also long been recognized as a hard-hitting spreadsheet program. Newer additions to the suite include the PowerPoint-like Presentations program, the Presentations Graphics drawing program, and the Mail personal information manager.

All of the WP Office suite programs are compatible with their Microsoft counterparts, and use Microsoft file formats interchangeably.

WordPerfect Office is often used in law offices and courtrooms, many of which are standardized on the WordPerfect file format. The reasons for this are WP’s excellent legal document tools and its ability to integrate with other external legal software — features that competing office products do not have.

The differences between WP Office editions

There are now four distinct editions of WordPerfect Office: Home Edition, Standard Edition, Student and Teacher Edition, and Professional Edition. The differences in functionality among these versions can vary from minor to major.

The first major difference among the four is price: Home Edition is U.S. $100; Standard Edition is $300; Student and Teacher Edition is $100 (with proper academic credentials); and Professional Edition is $400. Upgrade editions of the Standard and Professional Editions are, as usual, somewhat less expensive. Though Corel advertises WordPerfect Office as being substantially cheaper than Microsoft Office, as you can see, that point of view greatly depends on which versions of WP Office and MS Office are being compared.

The other major difference among the versions of WP Office X3 is the included software. Standard Edition includes WordPerfect, Quattro Pro, Presentations, Presentations Graphics, Mail, Pocket Oxford Dictionary, Legal tools, and the OfficeReady template organizer.

Professional Edition includes WordPerfect, Quattro Pro, Presentations, Presentations Graphics, Pocket Oxford Dictionary, Legal tools, OfficeReady, the Paradox relational database program, a software development kit for WP Office, Microsoft Visual Basic for Applications, and various articles of documentation that are specific to software development for the WP Office X3 platform. Note that Professional Edition — for whatever strange reason — does not include WordPerfect Mail.

Student and Teacher Edition is licensed only for non-commercial use, and includes WordPerfect, Quattro Pro, Presentations, Presentations Graphics, Paradox, Pocket Oxford Dictionary, and OfficeReady.

Home Edition is the most watered-down of the bunch, including WordPerfect Home Edition, Quattro Pro Home Edition, and OfficeReady. Also bundled with Home Edition are Corel Photo Album 6 Standard, Pinnacle Studio SE, Pinnacle Instant CD/DVD LE 8, and Norton Internet Security 2006. You might notice that all of this software has reduced functionality — you’re getting the bare bones versions of these programs.

WordPerfect Home Edition (the program, not the suite) is missing the following compared to the Standard Edition:

  • Open and edit PDF files
  • Save without metadata
  • WordPerfect file format conversion utility
  • Document collaboration and review tools
  • Legal tools
  • XML creation functionality
  • Visual Basic tools
  • Pocket Oxford Dictionary
  • Signatures
  • No WP 5.1 or Legal compatibility modes

And Quattro Pro Home Edition is missing:

  • Lotus 123 compatibility mode
  • Insert external data
  • Visual Basic tools
  • Publish to XML
  • CrossTab reports

The rest of this review will concentrate on WordPerfect Office X3 Standard Edition.

What’s new in X3

Office suites don’t change much from release to release anymore, but WP Office X3 does offer something that previous editions did not have: a good personal information manager (PIM) and email client. A few releases ago, Corel Central was WordPerfect’s somewhat substandard email client. It was dropped as of WordPerfect Office 12, when Corel conceded the email/PIM battle to Microsoft. Instead of offering its own email client, WP Office 12 concentrated on better integration with Microsoft Outlook. Those enhancements have not been eliminated in favor of the new WordPerfect Mail program, but WordPerfect Office X3 users are likely to get more from Mail than from Outlook because of Outlook’s dependence on Microsoft Word for enhanced email functionality.

WordPerfect X3 Mail
The new WordPerfect Mail

Quattro Pro and Presentations now have the ability to export to PDF, and all of the WP Office X3 programs have a somewhat better looking user interface.

Other than that, there are no significant new features in WP Office X3 — only slight, often invisible enhancements and updates to version 12.

WordPerfect Mail

WP Mail is a Microsoft Outlook workalike; it has almost all of the same functionality as Outlook, except it’s designed to be integrated with WordPerfect Office instead of Microsoft Office. As you can see from the screen shot, the interface is familiar and intuitive. The only thing that really bothers me about Mail is its inability to do inline spell checking. I want to know that typos and misspellings happen when I make them, and I don’t want to deal with a popup window at the end of the email showing me the unrecognized words out of context.

WordPerfect X3
Yahoo’s new word processor?

Overall, WordPerfect Mail is a decent email/PIM application, but I don’t think it will change your mind if you’re happy with Microsoft Outlook, Lotus Notes, or Novell Evolution.

WordPerfect X3

WP Office X3’s flagship component was already as good as it could get without becoming multi-platform. When it’s as good as it can get, what do you add? A Yahoo search box, apparently. I was surprised and disappointed to see that Corel had incorporated a Yahoo Web search box into the previously clean WordPerfect interface. Congratulations, WordPerfect users, you’re now paying big bucks for a word processor that has an advertisement for Yahoo in it, and Corel will be making extra money off of your in-program Yahoo searches. WordPerfect has officially jumped the shark — assuming it hadn’t before now. I guess when you’re at the top, the only direction left to go is down.

One good point about WordPerfect X3 is its ability to open and edit PDF files. Don’t expect any miracles, though — this function is only good for extracting text and pictures from a PDF. You wouldn’t want to publish or edit an imported PDF because of the large number of formatting errors that occur during the translation.

Quattro Pro X3
Quattro Pro X3

The only other feature enhancement of note is the ability to save a document without its metadata. Hidden metadata in Microsoft Word documents has been the subject of a few embarrassing corporate scandals over the past few years. It’s nice that WordPerfect has the ability to remove such data, but it kind of makes you question why this kind of information is there in the first place.

Quattro Pro X3

Some minor changes were made to the CrossTab Reports function and the charting tools. You can now maintain connections with ODBC databases through CrossTab, and there is better rendering functionality for charting.

Presentations X3

Presentations and Presentations Graphics haven’t changed much, either. Basically, Presentations now has anti-aliasing for fonts and graphics, and a template browser called Master Gallery. Presentations Graphics is now a separate application with more vector drawing and shape tools.

Extras and add-ons

Presentations X3
Presentations X3

The Oxford Concise Dictionary is available as an add-on to WordPerfect for U.S. $20. This is nothing new — it’s been around since at least version 10. This is not a product; it’s an “unlock key,” which allows you to access the full functionality of the software that you’ve already purchased. The Oxford Concise Dictionary adds in-program dictionary lookup functionality to WordPerfect, so if you need to look up a word, just right-click it and then click on Dictionary in the popup dialogue to see its definition. You can also search the dictionary if you like. No other word processor has this kind of in-program functionality, and to professional writers or students, it’s worth the money.

During installation, Corel pushes you to install the Yahoo toolbar for Internet Explorer — more of the same in-bed-with-Yahoo crap that nobody who buys a commercial office suite wants to see. This isn’t so much an “extra” as it is a mild form of spyware, monitoring what Web sites you go to so that Yahoo can “better serve you” by selling marketing data.

Conclusions

If you’re currently using (and happy with) WordPerfect Office 10, 11, or 12, there is no good reason to upgrade to X3. All of the features necessary for most “office” work were present in these versions, and there aren’t any significant advantages to upgrading. I think the real point of WP Office X3 is to appeal to people buying new office suites, or those upgrading from ancient versions of MS Office. And — believe it or not — there are still a significant number of people who are using prehistoric versions of WordPerfect for DOS as well.

Presentations Graphics X3
Presentations Graphics X3

I get the distinct feeling that there were two reasons for Corel to come out with this new release: first of all, to release before Microsoft Office’s next version. Secondly, to remind people that Corel still sells an office suite and that it is modern and up-to-date. The kind of “enhancements” found in WordPerfect Office X3 are the kind of standard updates and bug fixes that you used to get for free in service packs. I guess now we have to shell out for every release rather than rely on Corel to support older yet fully capable versions of the same software.

What is the future of WordPerfect Office? Are we going to be buried under a growing pile of new versions that offer trivial updates? I think the outlook is bleak for WordPerfect Office, particularly when considering the growing GNU/Linux and Apple markets, and the competition posed by cheaper alternatives such as OpenOffice.org.

That’s not to take away from the competency of WordPerfect Office X3. It’s a more-than-capable office suite and it includes what I believe to be the world’s most powerful word processor. Having said that, I think the Yahoo “partnership” in WP Office X3 portends the beginning of the end for this once-great desktop software suite.

Discuss this article or get technical support on our forum.

Purpose Office suite
Manufacturer Corel
Platforms 32-bit Windows 98SE, 2000, XP, and 2003
License Proprietary, restrictive in all the usual ways
Market Law offices, current WordPerfect users
Price (retail) U.S. $270 for the Standard Edition (click here to buy it from Amazon.com)
Previous version WordPerfect Office 12
Product Web site Click here

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

Writing analysis

To put it optimistically, the quality of the writing in Beginning Ubuntu
Linux
hits as often as it misses. The instructions for installing various programs, plugins, and add-on software is excellent, as are the brief tutorials on how to use those programs. Everything else is sub-par. Specifically, most of the commentary and explanations for why things are the way they are are flawed. The author makes many statements of fact that are either oversimplified to the point of falsehood, or are patently false to begin with. The first three chapters are full of examples, though the beginning and end of almost every chapter in the book suffers from the same disease. For instance, there are general statements such as, “Linux doesn’t crash,” and “The latest version of Windows XP requires high-end hardware” — the kind of silly stuff you see Linux evangelists regurgitate on message forums. GNU/Linux can crash — I’ve seen it happen — and Windows XP runs exceptionally well on older Pentium 3 machines.

Most readers will find themselves skipping over vast portions of
Beginning Ubuntu Linux, even though it is designed to be read from cover to cover. That fact is a testament to the vast array of information contained in the book; it starts with some evangelism (why Windows sucks, why Linux rocks), then goes into installation instructions, then moves on to configuration, adding functionality through other software, how to use all of the programs you’ve just installed, and ends with a system administration guide. In terms of technical information, Beginning Ubuntu Linux is a real winner. Even the “taboo” subjects, like how to add DVD and MP3 playback support, are covered.

Included with the book is an Ubuntu 5.10 CD; it includes most of the basic
GNU/Linux desktop programs, but is obviously not as comprehensive as the freely
downloadable Ubuntu DVD. For that reason, the book frequently admonishes readers to install more programs through the Synaptic software manager.

Putting the book to the test

Beginning Ubuntu Linux is both a “beginning Linux” and an “introduction to Ubuntu” text, so it covers a lot of ground. If you’re totally new to the GNU/Linux operating system, or if you’ve tried and failed with other distributions in the past, you’ll get a lot of benefit from Beginning Ubuntu Linux. If you’re already familiar with Ubuntu, you probably won’t benefit from this book at all.

Conclusions

Beginning Ubuntu Linux is the book that it claims to be, though
it’s not quite as good as it could be. In general, “beginning Linux” texts tend
to suffer from the same oversimplification found in this book. It seems that no
one has hit this genre squarely yet. Still, it’s as good as it gets right now,
and I would recommend Beginning Ubuntu Linux over any other
introductory GNU/Linux book — at least, as of this writing.

Discuss this article or get technical support on our forum.

Title Beginning Ubuntu Linux
Publisher Apress
Author Keir Thomas
ISBN 1590596277
Pages Paperback, 573 pages
Rating 7 out of 10
Tag line The complete guide to Ubuntu — includes everything you need to begin taking advantage of this powerful Linux-based operating system.
Price (retail) U.S. $25. Buy it from Amazon.com

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

OpenBSD overview

This section is for people new to OpenBSD. If you’re already
familiar with it, you may want to skip down to the next section on the
improvements in 3.9.

The BSDs in general have a common reputation for high code quality and poor
hardware support. In OpenBSD’s case, the code is definitely high quality.
Nothing in the default installation is half-implemented, or committed on an
experimental basis. If full functionality is not yet possible for hardware
drivers, basic functionality is achieved and thoroughly tested; this forms the
basis for further driver development. Everything you get in the release is
production-ready, secure by default (meaning the administrator does not have to
lock down the system — it is already locked down, and services must be
individually enabled), and comes with possibly the finest integrated
documentation in the Unix-clone world. While you might find a poorly
programmed driver or other base system component in other BSDs and GNU/Linux
distributions, in OpenBSD if something is supported, it works. Like all
operating systems, however — yes, even Windows — not everything is
supported.

Hardware support is a sensitive area for the OpenBSD developers. Since they
won’t allow any proprietary code in the base system, and since manufacturers
are reluctant to dedicate resources to writing official OpenBSD drivers, the
development team is notorious for creating their own drivers through
reverse-engineering. As a result, OpenBSD’s RAID and wireless network card
support is exceptional — better than Linux’s in some ways. It also has
surprisingly good ACPI support, particularly on laptop computers. In fact,
because of the good, documented wireless and ACPI support, OpenBSD makes a fine
laptop operating system. The only significant obstacle for desktop users is the
lack of hardware 3D acceleration for video cards.

OpenBSD is among the most secure x86/AMD64 operating systems in the world.
Cryptography is integrated into nearly every part of the operating system;
libraries are loaded in a random fashion; and program and daemon privileges can
easily be isolated from the rest of the system via chroot, and privilege
separation and revocation.

A complete OpenBSD installation from the commercial CD set can be completed
in about five minutes. Extra programs can be added through an APT-like package
tool that has access to thousands of precompiled packages, or custom compiled
through the Ports system. OpenBSD even has binary emulation layers for FreeBSD,
Linux, Unix SVR4, SCO/ISC, and BSD/OS programs, so if there is no native
OpenBSD port of your favorite *NIX application, you can probably still use it.

Each OpenBSD release has a graphical theme and a song that goes with it. The
theme reflects a major concern that the OpenBSD programmers are addressing or
bringing to light.

For more information on OpenBSD, you can visit href="http://www.openbsd.com" target="_blank" rel="nofollow">the
project Web site, or this article on
using OpenBSD
.

New in 3.9

OpenBSD advances slowly; each release represents a large collection of small
changes. If you want a complete list of changes since 3.8, href="http://www.openbsd.com/plus39.html" target="_blank"
rel="nofollow">visit the 3.9 changelog. Below are the
highlights:

  • Better Apple PPC support
  • Improved x86/AMD64 hardware support, especially network adapters and drive controllers (standard fare for OpenBSD releases)
  • Upgrade support in the package tools
  • Revamped wireless networking framework
  • Support for hardware sensors

OpenBSD 3.9’s theme revolves around “the blob,” referring to proprietary
hardware drivers that rely on a large binary file to achieve full
functionality. these “binary blobs” are often poorly programmed and are
incomplete, support few devices or configurations, and have bugs that the
operating system’s programmers can’t fix because they don’t have access to the
source code. Blobs cannot be fixed by anyone other than the device
manufacturer, and if they have security holes, the operating system developers
can’t patch it. Binary blobs also present a licensing threat because the
proprietary agreements that govern them put heavy restrictions on
redistribution. Some operating system projects or companies will work out
distribution agreements, but rarely are such deals made for free, and they
generally restrict the user’s freedom to redistribute the software on their
own. Understandably, projects like OpenBSD and GNU find situations like that to
be inconvenient at best, and dangerous at worst.

Putting it to the test

Usually I try to “break” an operating system by putting it on a wide variety
of computers. Since I have never been able to cause any errors (aside from
trying to use RAID cards that are not supported), I skipped that phase and
decided to spend the entire time using OpenBSD instead.

I found the improved package tools to be a huge benefit. Rather than
compile everything from source or download the packages and dependencies that I
wanted to install, I set the configuration to download packages automatically
when I try to install anything from Ports. So I go to /usr/ports/editors/vim
and when I run make install clean, a package is downloaded instead
of compiling it from source; if a package isn’t available, Ports goes ahead
with the compilation. I also tried out the new update option, but being so
close to the release, no updated packages were found. Just to see what would
happen, I substituted a 3.8 package directory for a 3.9 installation. The
result was that many of the packages showed upgrades which were really
downgrades to 3.8 packages. I suspect that is a bug — package upgrade tools
should only recognize higher versions as upgrades, and there should be some
effort to verify that the source directory contains viable and up-to-date
packages.

Conclusions and developer recommendations

The improved package tools make OpenBSD much easier to install, upgrade, and
maintain. For those who need to install several programs on top of the base
system, the new package tool functions are priceless.

Here are some features I’d like to see added to future editions of OpenBSD:

  • Default color console support. The DEC VT220
    terminal, along with all other monochrome consoles, is long dead –
    even Digital itself replaced the VT200 series with color text and
    graphics terminals. Why is OpenBSD still using it if it’s so old and
    limited? For the x86 and AMD64 OpenBSD ports, I’d like to see some
    enhanced console features. Color (which can be achieved presently by
    either hacking the terminal config files, or by installing GNU Screen
    and setting “screen” to the default terminal) and framebuffer support
    for higher resolutions are two modern conveniences that I’d love to see
    in the default OpenBSD installation.
  • Easier Java installation. I realize that licensing
    restrictions prevent the Java Development Kit from being distributed
    with OpenBSD. Those same licensing issues prevent an easy JDK
    installation, but I’m sure it could be a little simpler than
    downloading so many files from multiple sites and waiting hours for the
    source code to compile, then adding the path settings by hand. Can’t
    some kind of agreement be worked out with Sun to provide an OpenBSD
    binary, even if it is not included with the base system?
  • WPA support. I know that WPA is a
    lousy way to encrypt wireless data and that it creates a false sense of
    security, but there are a lot of wireless access points that require
    clients to use WPA. Since OpenBSD’s wireless networking framework does
    not yet support it, you can’t connect an OpenBSD machine to a router
    that requires it.

Discuss this article or get technical support on our forum.

Purpose Operating system
Manufacturer The OpenBSD Project
Architectures x86, AMD64/EM64T, SPARC, SPARC64, Alpha, HP300, HPPA, Mac68k, MacPPC, mvme68k, mvme88k, luna88k, VAX, MIPS, Zaurus
License BSD
Market Servers of all kinds, for home, office, or enterprise; security-minded desktop users and sysadmins
Price (retail) U.S. $45
Previous version OpenBSD 3.8
Product Web site Click here

Copyright 2006 Jem Matzan.


Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

| Contact Us | About Us | RSS FAQ |
Copyright 2008. All content items belong to their respective authors.