10 Points to Illuminate the UNIX Culture

| | TrackBacks (0)

Woke at midnight .. to a disturbing dream. (Didn't get back to sleep 'til 3:30.) Like any artist familiar with affliction, I didn't wanna let good angst go to waste. So I fired up the laptop and resumed my study of the UNIX shell.

The Art of Unix ProgrammingSomewhere 'round 2AM I stumbled upon » The Art of Unix Programmingbook at Amazon.com), by Eric Steven Raymond. (Tho I can't recall how I got there.) He's the guy who wrote How to Become a Hacker, which I quote from time to time.

In his treatment of Unix Programming, ESR uses words like culture & philosophy .. which caught my attention .. cuz I've always been fascinated by other cultures .. not so much for the better/worse comparative aspects, but rather for the mind-expanding effect one gets from truly seeing the world from another's perspective. Plus he writes well (or has a good editor), which I appreciate. Couldn't stop reading.

Here are 10 statements/ideas I found particularly interesting and revealing. Perhaps you might also. (Minor Rad editing for brevity.)

  • Unix was born in 1969. That's several geologic eras by computer-industry standards -- older than the PC or workstations or microprocessors or even video display terminals.

  • Few software technologies have proved durable enough to evolve strong technical cultures, transmitted across generations of engineers. Unix is one. The Internet is another. Arguably they're one and the same.

  • Unix has supported more computing than all other systems combined. It has found use on a wider variety of machines than any other operating system - from supercomputers to handhelds & embedded networking hardware, through workstations & servers, PCs & minicomputers. In its present avatars as Linux, BSD, MacOS X & a half-dozen other variants, Unix today seems stronger than ever.

  • Unix's durability & adaptability have been astonishing. Other technologies come and go like mayflies. Machines have increased in power a thousandfold, languages have mutated, industry practice has gone through multiple revolutions. Still, Unix hangs in there, producing, paying the bills, and commanding loyalty from the best and brightest software minds on the planet.

••• today's entry continues here below •••

  • One of the consequences of the exponential power-versus-time curve in computing, is that 50% of what one knows becomes obsolete every 18 months. Unix doesn't abolish this phenomenon, but does a good job of containing it. There's a bedrock of unchanging basics. Thus the loyalty Unix commands.

  • Outsiders have frequently dismissed Unix as an academic toy or a hacker's sandbox. One well-known polemic, the Unix Hater's Handbook, writes off its devotees as a cult religion of freaks and losers. What confounds the skeptics, more than anything, is the rise of Linux and other open-source variants. The Unix culture proved too vital to be smothered even by a decade of vendor mismanagement. Today the Unix community itself has taken control of the technology and marketing, and is rapidly and visibly solving Unix's problems.

  • For a design that dates from 1969, it is remarkably difficult to identify design choices that are unequivocally wrong. There are several popular candidates, but each is still a subject of spirited debate not merely among Unix fans but across the wider community of people who think about and design operating systems.

  • Final choices about behavior are pushed far as posible toward the user. Unix programs provide many options and sport elaborate preference facilities. This tendency reflects Unix's heritage as an operating system designed primarily for technical users, with a belief that users understand their needs better than operating-system designers.

  • But the cost of this approach is that when users CAN set policy, users MUST set policy. Nontechnical end-users frequently find Unix's profusion of options and interface styles overwhelming. They retreat to systems that at least pretend to offer simplicity.

  • In the short term, Unix's laissez-faire approach may lose it a good many nontechnical users. In the long term however, it may turn out that this 'mistake' confers a critical advantage -- because policy tends to have a short lifetime, mechanism a long one. Today's fashion in interface look-and-feel too often becomes tomorrow's evolutionary dead end. So the flip-side of the flip-side is that the Unix "mechanism, not policy" philosophy may enable Unix to renew its relevance long after competitors tied to one set of policy or interface choices have faded from view.

  • Not even Microsoft's awesome marketing clout has been able to dent Unix's stronghold on the Internet. While the TCP/IP standards (on which the Internet is based) are theoretically separable from Unix, attempts to make them work on other operating systems have been bedeviled by incompatibilities, instabilities, and bugs. The theory and specifications are available to anyone, but the engineering tradition to make them into a solid working reality exists only in the Unix world.

  • High-quality open-source development tools abound in the Unix world. Open-source Unix applications usually equal, and are often superior to, their proprietary equivalents.

  • Today, a burgeoning open-source movement is bringing new vitality to the Unix tradition along with an entire generation of bright young programmers. Open-source projects such as Linux, Apache and Firefox have brought the Unix tradition an unprecedented level of mainstream visibility and success. The open-source movement seems on the verge of winning its bid to define the computing infrastructure of tomorrow -- and the core of that infrastructure will be Unix machines running on the Internet.

  • Many operating systems touted as more 'modern' or 'user friendly' achieve their surface glossiness by locking users and developers into one interface policy, and offer an application-programming interface that for all its elaborateness is rather narrow and rigid. On such systems, tasks the designers have anticipated are easy -- but those they have not are often extremely painful if not impossible.

Okay, that's more than 10. Sorry. You know how it is when you can't sleep.

« Previous Rad entry ||| NEXT Rad entry »

0 TrackBacks

Listed below are links to blogs that reference this entry: 10 Points to Illuminate the UNIX Culture.

TrackBack URL for this entry: http://radified.com/cgi-bin/xmt4/mt-tb.cgi/146

About this Entry

This page contains a single entry by Rad published on June 16, 2009 6:53 PM.

Quest to Learn the UNIX Shell (bash) was the previous entry in this blog.

Woke at Midnight is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.