[LWN Logo]
[LWN.net]

Bringing you the latest news from the Linux World.
Dedicated to keeping Linux users up-to-date, with concise news for all interests


Sections:
 Main page
 Security
 Kernel
 Distributions
 Development
 Commerce
 Linux in the news
 Announcements
 Back page
All in one big page

Other stuff:
Daily Updates
Calendar
Linux Stocks Page
Book reviews
Penguin Gallery

Contact us
Archives/search
Use LWN headlines

Recent features:
- GnuCash
- SEUL/edu
- Windowing patent
- Corel Linux Beta
- Microsoft's Linux Myths
- The Solaris Trap
- Web 100
- Donnie Barnes Interview
- Gaël Duval interview
- LinuxWorld
- Touchphone
- Linux Expo Paris
- Red Hat's IPO filing
- Eric Raymond interview
- Linux Expo '99
Review: Red Hat 6.0
- BitKeeper - not quite open source
- Alan Cox interview
- 1998 Timeline

Here is the permanent site for this page.

Leading items and editorials


The Art of Unix Programming is a new project recently announced by Eric Raymond. The Art of Unix Programming is a book which will "explain the Zenlike 'special transmission, outside the scriptures' that distinguishes Unix gurus from ordinary mortals." Eric is seeking to write this book in a highly peer-reviewed manner; each chapter will go up separately and Eric will accept comments before putting up the next.

At this point, the table of contents and first chapter are available. The impression gained from these pieces is that Eric is seeking to distill the programming principles that have made Unix into the longest-lived and most widely ported operating system in history. These principles are to be combined with some relatively modern views of programming ("use interpreted languages") to make a sort of design handbook for the next round of cool applications.

Those of you lucky enough to have Kernighan and Plauger's The Elements of Programming Style can imagine that Eric's book will be something similar, but presumably (hopefully) without the Fortran code.

Eric's summary of "the basics of Unix philosophy" is:

  • Write small pieces connected by clean interfaces.
  • Design programs to communicate easily with other programs.
  • Robustness is the child of transparency and simplicity.
  • Design for simplicity; add complexity only where you must.
  • Design for transparency; spend effort early to save effort later.
  • In interface design, obey the Rule of Least Surprise.
  • Programmer time is expensive; conserve it in preference to machine time.
  • Avoid hand-hacking; write programs to write programs when you can.
  • Use smart data so program logic can be stupid and robust.
  • Prototype, then polish. Get it working before you optimize it.
  • Distrust all claims for ``one true way''.
This is all seemingly straightforward stuff, but in the real world these ideas are often overlooked. (One of your editor's pet peeves: judge an unwieldy application like StarOffice against these criteria and weep).

The introduction promises to use a bunch of case studies in future chapters to illustrate How Things Are Done; they include the Gimp, Mutt, Fetchmail (of course), RPM, and others.

This looks to be an interesting project. Even those that disagree with Eric must credit his ability to describe this community to the world as a whole. Let's give Eric the feedback he's looking for, and keep him honest. The result should certainly be worth reading.

Linux 2.4 to go up against Windows 2000? Linus Torvalds' announcement that a pre-2.4 code freeze is coming soon couldn't help but spark speculation that the 2.4 kernel would be released at about the same time as Windows 2000, which is supposed to come out on February 17, 2000. To see how far this speculation can go, consider this article in VNUNet.com. One quick quote gives a lot of food for thought:

Colin Tenwick, vice president and general manager European operations for Red Hat, confirmed that the kernel would be released formally to the Linux community the same time as Windows 2000.

One question comes immediately to mind: what does Mr. Tenwick know that puts him in a position to "confirm" the shipping date of the 2.4 kernel? Linus has certainly not committed to any such plans. Best, however, to give Mr. Tenwick the benefit of the doubt and assume that the press misrepresented him.

But building any sort of expectation that the 2.4 kernel will come out when W2K does is a big mistake, for a number of reasons. First and foremost is that Linux development has never been fond of deadlines in general, and certainly is not driven by the release plans of large vendors of proprietary software. That will not be changed just because a big commercial operating system release is due.

This sort of expectation also sets Linux up for some bad press. There is - at least in your editor's mind - a large chance that the 2.4 kernel will not be released by February 17. The code freeze has not yet happened, and there is a lot of work still to be folded into the 2.3 kernel. Testing and bug fixing comes thereafter, and can not be hurried. If the world somehow comes to see February 17 as the 2.4 deadline, there will be a lot of negative press when said deadline is "missed."

It's also worthwhile to bear in mind that, even if 2.4 came out tomorrow, the mainstream distributions would not be shipping that kernel for some time. Integrating a new kernel into a distribution - and making sure that everything works - is a big effort. One can say with great confidence that, when W2K ships, there will be no available Linux distribution with the 2.4 kernel.

And that is not a problem in any way. Linux software "ships" when it is ready, not before. As a result, it (usually) actually works and is useful when it arrives.

The 1999 LWN Linux Timeline is out. In the spirit of last year's popular 1998 Timeline, LWN is proud to present version 0.8 of our 1999 Linux Timeline. Have a look, and be amazed at all that has happened in the Linux world over the last year.

Why version 0.8? Because there is no way we can possibly pull together this much stuff and get it right on the first try. We're looking for feedback on the things we left out. In particular, we would like to document more major releases by free software projects. There will be an intermediate release, with version 1.0 happening shortly after the end of the year.

Free software to be obligatory for the Brazilian government? Here is the text of a proposed Brazilian law (in Portuguese) which would make the use of free software obligatory for the Brazilian government. English text may be had via babelfish, but the combination of Babelfish and legalese is a little rough... (Thanks to Cesar A. K. Grossmann).

Boycotting Amazon.com. Richard Stallman has called for a boycott against Amazon.com. Amazon, it seems, is trying to use its patent for "one click ordering" against competitor Barnes & Noble. LWN agrees that the exercise of software patents to restrict what others can program is wrong. One hopes that Amazon gets the message.

In fact, a message may well get through, though not quite the one RMS is after. Consumers in general don't really understand software patents, but they understand well the idea that "Amazon wants to make us click a lot of times." If a boycott is successful, it will be because of the convenience issue. In that case, the the immediate goal (reining in Amazon's behavior) may be achieved, but the lesson on patents may be lost. A broader, successful boycott campaign should seek to tie the two issues together.

LWN, like an unbelievable number of other sites, is a member of Amazon's affiliate program. We have never pushed books too hard on our readers, but it is possible to get through to Amazon via our book reviews page. We have communicated to Amazon that its behavior is likely to bring about our withdrawal from the affiliate program, and we are working on alternatives. LWN supports the boycott, and will act accordingly.

Inside this week's Linux Weekly News:

  • Security: New US cryptography regulations up for comment.
  • Kernel: 2.4 kernel pool, 32-bit UIDs, PCMCIA, threads.
  • Distributions: Linux-Mandrake 7.0 beta, Empire Linux, more lists of distributions.
  • Development: Apache optimization patches, Real Time Linux Workshop, Linux Knowledge Base.
  • Commerce: Microsoft tells us how to remove Linux, Corel's ups and downs
  • Back page: Linux links of the week, letters to the editor.
...plus the usual array of reports, updates, and announcements.

This Week's LWN was brought to you by:


December 23, 1999

 

Next: Security

 
Eklektix, Inc. Linux powered! Copyright © 1999 Eklektix, Inc., all rights reserved
Linux ® is a registered trademark of Linus Torvalds