Letters to the Editor

by Various

This is in reference to “A Toolbox for the X User” by Christoph Dalitz, May 1999. In it, Mr. Dalitz mentions the “tkdiff” utility, but seems to base his observations on an old version. I wanted to alert you to a couple of significant changes, which may impact tkdiff's usefulness to some users.

Thanks to much work by Bryan Oakley, 3.03 (the latest released version) contains many features and enhancements relative to the more ubiquitous 2.x and 1.x releases.

One change in particular addresses the author's observation that “tkdiff can be invoked only from the shell prompt because it requires file names as command-line arguments.” This is no longer the case. If tkdiff is invoked without arguments, it will pop up a dialog box and prompt you for file names (via text-entry widgets coupled to optional file-selector widgets). As such, tkdiff is now a suitable candidate for being launched from a toolbar or similar mechanism which eschews the command line.

Relative to the observation that tkdiff has “no external man page, which occasionally makes it inconvenient to get usage information”, I would like to point out that the on-line help does come up automatically, if invalid command-line parameters are used. This is still inconvenient, but better than having to explicitly invoke the on-line help system in order to see the help text.

Lastly, on a related note, I've turned over maintenance responsibilities for tkdiff to Damon Poole of Ede Development Enterprises. Damon graciously volunteered to maintain and enhance the code on an Open Source basis. The official tkdiff home page is now at http://www.ede.com/free/tkdiff/index.html, from which this 3.02 release can be obtained. Thank you.

—John M. Klassa klassa@aur.alcatel.com

Bug in Pthread Code

There is a nasty bug in Listing 1 published in “Introduction to Multi-Threaded Programming” by Brian Masney, May 1999. The line

pthread_t *tide:

should be changed to

pthread_t tide[10];

—Klaus Pedersenklaus.pedersen@nokia.com

Coming of Age

I have followed Linux for four years and wanted to voice my support and thoughts. I was prompted to write after reading the June Linux Journal. It strikes me that Linux is at a crossroads of sorts, where identity and maturity need definition and direction. This point was made in the articles on Linux standards and were reflective of the development community and its needs. However, there is another perspective, that of the consumer or end user.

I consider myself to be in this latter community. Labeled as such, I do not believe that the Linux community has come to terms with an identity or maturity. As an end user, I am amazed at the wealth of information and capability that has been developed to date. In many ways, this reflects very well on the Linux community and should be a great source of pride—well done. Nevertheless, the question is where to go from here. The “here” is subject to debate; however, I would argue that the “here” is further adoption by end users like myself.

We are all well aware of Linux's success as a development platform, Internet web server, enterprise mail and file server, and specialized supercomputer platform. Unfortunately, these applications represent a very limited set of users. What about the end user who operates in the world of Microsoft today? These users have very different needs than those of a development community. These users typically see the computer as an appliance. The computer does things that provide benefit to the user. This type of user sees the computer like most people see an automobile—get me from point A to point B, but don't ask me to understand how it happens. I can sense some developers community taking great pride in using a tool that requires great skill to master. Unfortunately, end users, for the most part, are not interested in acquiring those skills.

I'll use my own experience to illustrate the point. I've gone from a distribution of Linux by InfoMagic in 1995 through Red Hat 5.0, 5.2, Caldera OpenLinux 2.2, and a soon-to-arrive distribution of Mandrake 6.0. In all of this, I have not yet abandoned my Windows. This reflects two important limitations of Linux for me. First, the lack of user-friendly applications, and second, a lack of confidence in using the operating system. Limitation one is becoming less important with the maturity of KDE and the availability of Netscape, WordPerfect, StarOffice and Applixware. This fall's release of Corel Office should be a watershed event. Nonetheless, limitation two is still daunting.

As I write this, I have just returned from the bookstore with Linux in a Nutshell and Learning the bash Shell from O'Reilly. Thank God for O'Reilly! These books and others are part of my growing Linux collection as I try to understand what the system does. For example, why does the installation of Metro X cause conflict with the X server as distributed by Caldera? Why do I have to apply a print offset correction to produce centered text from WordPerfect? Why does the configuration of printers using Caldera's COAS seem so difficult and problematic? Why, when I follow the instructions for building a new kernel, does the kernel not work? These and other problems have haunted me as I try to use Linux from an end user perspective.

My point here should be obvious and simple: these types of issues are not a concern when I use Windows. If the Linux community wants to see greater user adoption, then the community needs to think like an end user. Trust me in saying that I am an activist end user, having spent hundreds of hours reading and learning. However, unlike me, most end users will expect simplicity, reliability and utility. Linux today can deliver reliability; simplicity and utility are not part of the equation. To put it in perspective, if my mother asked me to recommend a computer, my answer would be a Wintel machine because I could walk her through most problems over the phone. With Linux, that would not be possible.

In sum, I think the Linux community needs to assess which direction it wants to go in—remaining a specialist operating system supporting networking and unique applications, or becoming more of an appliance operating system that users can operate confidently. The time to solidify an identity is now, and the opportunity to come of age will always be timeless.

—Mark H. Runnels mrunnels@home.com

Great awk Article

What a pleasure to read Mr. Iacona's introductory treatment of awk in the June issue. I've been exposed to awk in a hard-core UNIX setting (designing SRAM circuit layout for Motorola), but have not used it myself. Now I design textiles on the SGI platform (not so far from chip layout as you might think) and need to manipulate text files. I run LinuxPPC on my PCC PowerCenter 120 Macintosh clone at home to practice UNIX for work. I'll lean on Mr. Iacona's article, his clear, well-commented example code and helpful glossary with confidence. I'm dying to get the O'Reilly books and take on more. A clear, usable, focused treatment of a daunting subject; well-edited, too. Continue to set your standards high.

—Four Hewes four@bway.net

Kernel Korner

The information in this month's Kernel Korner (“IP Bandwidth Management” by Jamal Hadi Salim, June 1999) reminds all of us that there is yet another dimension to the “free-ness” offered to Linux users: not only the code and applications in development, but also Linux ISP's.

These ISPs are affecting our ability to move freely. Why? QoS (Quality of Service) is essentially the end of all-you-can-eat Internet access—no more monthly flat rates. Oh sure, there's the bare-bones rate, but that's bare, bare bones. Instead, the more we are willing to pay, the more our ISP will shove down our lines. What a fair world!

It's a double-whammy. I can remember the good old days (i.e., three years ago) when we criticized telco's for ripping us off (after all, the customer is considered “the last mile”); now, ISP's will also be subject to our scorn (if they're not already), as will the host client/servers (i.e., those Linux boxes we adore so much).

Sure, QoS implementation is not so much a question of “if” but “when” (it's that inevitable, my friend). But my teeth gnash at the thought of this implementation hard-coded into the Linux kernel.

—John K. Joachim Joachimj@usa.net


I've been a subscriber for a few years but still consider myself a newbie. So far, my faltering steps toward ever greater Linux mastery are consistently rewarded by finding out just how rich and robust an OS Linux is. Your magazine really helps; it's great to feel like I'm part of such a community as LJ serves. Thank you and your staff for sweating the little stuff.

—Jamie Matthews mattja@iglobal.net

Load Disqus comments