Ottawa Canada Linux Users Group Title: "Unix Mis-conceived" - or - "Things that don't work the way you think they do." Speaker: Ian! D. Allen Algonquin College National Capital FreeNet Summary: This talk incorporates a few things about Unix that I've not seen well-documented elsewhere. 1) The One True Unix File System Diagram All the Unix textbooks draw a nice little tree of the Unix file system, with the root at the top and file names at the bottm, and thus completely mislead people about how the file system actually works. Nobody who learned Unix from such a diagram can understand how Unix file links work. I'll draw the real diagram, and you can take it home and paste it over all the other diagrams in all your Unix texts. 2) Stupid Interactive Bourne Shell Tricks My Algonquin classes remain somewhat mystified by the way the shell handles redirection, expands variables, and locates file names. I'll give a quick demo of the basics, including some things that might surprise you. Some important differences will be noted for CSH users. Yes, you can easily fill your disk. 3) Programming as Hacking Until it Works (most of the time) I found a pile of bugs in the original (Bill Joy) C Shell while avoiding working on my Masters Thesis at Waterloo in the early 1980's, and so I went about trying to fix them. The resulting shell ("itcsh" - Ian's Tenex CSH) was in use at Waterloo for many years. I'll talk a bit about just how awful C shells are for writing programs even 20 years later. Don't do this at home, kids. 4) Don't Throw Anything Out (Anecdote Section) I started using the X window system when it arrived at UofWaterloo in the 1980's, first with X10 [not the cameras] and then with X11. A feature that X10 had was the ability for an icon to be changed when the xterm window associated with it had output. This feature was lost in X11, so I dug into the code and added it back at Waterloo. Little did I know where it would go. Speaker Bio: Ian! Allen currently has a day job as professor of Computer Studies at the Algonquin College Woodroffe Campus. At night, in between marking IBM JCL and Bourne shell scripts and dodging his Web Cam, he writes Perl and shell scripts to automate things on his Linux desktop and does volunteer system administration for the National Capital FreeNet. He has an Honours BA in Psychology and a MMath in Computer Science from the University of Waterloo, where he spent most of his time doing amateur theatre and rewriting Troff and the C Shell instead of working on his thesis. His first computer course was WATFIV (FORTRAN) on punch cards in 1974. His first email account was "idallen" on a Waterloo Honeywell 6050 GECOS system in 1976. He has been programming on Unix since 1976 (V7 on a PDP-11) and the Internet since about 1981. His first home computer was a VAXstation 3100 running Ultrix. He acquired his first Intel computer (P166 Windows 95) in 1996 and his first Linux distribution (SuSE 5.2) at an OCLUG meeting a few years later. He currently has five computers on his home network: the one-floppy Linux Router, Mandrake 8.1, Mandrake 7.2, Corel Linux, and Mac OSX. He is married to midwife Jan Teevan and plays step-father to her three young adults. He has two favourite sayings: (1) Less code is better code; and (2) If this were easy, everyone would be doing it.