Saturday, 31 March, 2001
Those who believe that all software should be free have little understanding of the overall software business. There are obviously free versions of widely popular packages like text editors, web browsers, and web servers that have all of the functionality of proprietary programs, but most of those programs are relatively small (under 200,000 lines of code) and limited to the types of things that programmers like to use. So there's a large pool of talented and interested individuals available to write and maintain the package. In addition, these programs are usually substantially completed by a very small group of developers before they are released as free software. Free software can work in that niche.
On the opposite end of the spectrum is large vertical market packages that require a lot of vendor support. The companies that create these packages must charge for something, because they're paying programmers to create the programs. These applications (customer resource management and business intelligence, for example) are very large (millions of lines), and not terribly interesting to most programmers. Programmers work on this software primarily because they get paid, not for fun. The free software community's contention is that companies who create these packages can make the program freely available and still make money by providing services. It's been done to some small extent, but I doubt that it can be done successfully in general.
There is a huge middle ground between these two extremes that consists of software that takes a group of developers a long time to create (a year or more for a manageable team of fewer than 10 developers), using a combination of in-house code and purchased components. These applications will have maybe 500,000 lines of in-house code combined with that much code in third-party components. These are smaller vertical market packages that don't require much vendor support, but they're not useful to enough people in order to be inexpensive, nor interesting enough that programmers would create them for free. I can see no way that these types of packages can be successfully distributed as free software.
Friday, 30 March, 2001
I flew to Harlingen, TX last night to attend a class reunion at the Marine Military Academy, where I was a student for five years (grades 8 through 12). A friend from 20 years ago met me at the airport. We went out for a few drinks and proceeded to stay up all night long reminiscing and catching up. We were at the school at 6:00 AM to have breakfast with the cadets and staff. After breakfast we walked around the campus marveling at how things have changed over the years. I've been back to the school about a dozen times since I graduated in 1980, but my friend Jim Allison hadn't been there for 20 years. A lot of things have changed. The food's the same as it was 20 years ago, though. Friday is still Mexican food, and they're still using Marvin Bell's old enchilada recipe.
Unlike most schools that have reunions for a specific class, MMA invites everybody every year. As a result, there were former cadets from just about every class since the first (1966). We all share a unique experience (attending a small military school) that has left a visible mark on our personalities. I'm still pondering the nature of that particular beast. I'm also left wondering if the mark is only on those of us who choose to come back to the school and visit.
At any rate the trip was great fun, although brief in my case. I had to leave at 3:00 on Friday afternoon. A prior commitment prevented me from staying the weekend and participating in all of the festivities.
Thursday, 29 March, 2001
I was browsing a bookstore in the Dallas/Fort Worth airport last month when I ran across the book Guns, Germs, and Steel by Jared Diamond. This Pulitzer Prize winning book (subtitled "The Fates of Human Societies) "attempts," as the preface to the paperback edition says, "to provide a short history of everybody for the last 13,000 years. The question motivating the book is: Why did history unfold differently on different continents?"
What a fascinating book! The author traces mankind's history since about 12,000 B.C. (the dawn of food production) up to the late Renaissance period, with most of the time spent on earlier periods. The focus is on why things happened, rather than when who did what to whom. The author is a scientist by training, and his application of the scientific method to historical research results in a much more interesting read, and more believable conclusions. Not only do I see the conclusions, but I can follow the trail of evidence that leads to the conclusion. And, no, the conclusion isn't racist (i.e. that one race or another is genetically superior). Quite to the contrary. The author's one-sentence summation of the book is: "History followed different courses for different peoples because of differences among people's environments, not because of biological differences among peoples themselves." The 425 pages that follow this statement make a very compelling case.
The book is written in layman's terms without sounding condescending. It's a pleasure to read. I highly recommend this book to anybody who's interested in understanding how our societies came to be what they are today.
Wednesday, 28 March, 2001
Debra and I finally went out and bought a DVD player this past weekend. It's a Panasonic 5-disc carousel changer. Since the DVD also plays CDs, we were able to get rid of the CD changer boom box we'd been using. That's now in my office. We also picked up a new VCR (the old one died after 10 years), and a "universal" remote (more on that below) to control all this stuff. Getting everything hooked up turned out to be something of an ordeal.
You see, our stereo receiver is the Bang & Olufsen 5000 receiver that I bought in 1984 when I had more money than brains, and our TV is a 24" Magnavox that Debra bought in 1989. The TV has one input: a coaxial RF jack. And the B&O stereo only has RCA jacks for one input device. The other inputs accept a 5-pin DIN plug. I got the new VCR connected with no trouble. But of course I couldn't hook up the DVD because it doesn't have an RF output.
I got lucky yesterday and found a B&O store, and surprisingly enough they had an RCA-to-DIN converter plug in stock. Then I stopped by Best Buy to pick up an RF modulator and an A/B switch so I can select between the DVD and VCR, and an extra coaxial cable to patch from the RF modulator to the A/B switch. Hooked it all up and, voila, it works. I'm disappointed that we have to get up and manually operate the A/B switch, but I'll live.
So here comes the fun part: programming the universal remote. At $180, I could hardly believe that I bought the thing, but if I could control all five components with a single remote, it'd be well worth it. The aggravation factor, you know. Programming the remote is reasonably easy: just select the device type (VCR, CD, DVD, TV, etc.) and then enter the code number from the tables in the supplied documentation. It didn't take long to select the cable box, TV, VCR, and DVD and confirm that I could turn them on and off. The thing doesn't support my B&O receiver (nor does any other universal remote that I've seen). Even with that, I was reasonably happy. Except I couldn't access all of the functions on the DVD or on the cable box. So we took the thing back: no reason to have six remotes for five pieces of equipment. It turns out that the VCR remote has some "universal" capabilities of its own, and I was able to program it to turn on the TV and cable box, and switch channels on the cable box.
A friend mentioned that Phillips has a universal remote (the one we tried was a Sony) that can "learn," but having dipped in that pond before, I'm reluctant to try it again. And on reflection, $180 is way too much for the convenience of having just one remote, especially when you consider that no universal remote is going to operate my B&O receiver. It's too bad that manufacturers have never agreed on some kind of standard for remote signals. I've given up trying to find a universal remote. One of these days we'll just buy a full system with an integrated remote from one manufacturer. Until then, we'll live with the three (TV/VCR, DVD, and stereo).
Tuesday, 27 March, 2001
Q: What do Austinites call the day after two days of rain.
We're swimming here. March average rainfall in Austin is 1.69 inches. We've had 5.29 inches of rain this month, and three more days of thunderstorms to go. The back yard is a swamp. Area lakes are now slightly above "full" level. No major floods yet, although there is a flash flood watch in effect tonight. Surprisingly enough, the ground seems still to be soaking it up. Our back yard is a low spot, and standing water rarely lasts longer than a day, even after all this rain we've had lately. And it's great for the grass (which I can't mow because the tractor sinks) and the rest of the plants.
It's too bad I haven't installed the rainwater collection system yet (maybe next year), because I'm sure I'll be needing water for our vegetable garden come July and August. It's surprising how much water you can collect from the roof of your house. In a 1" rain, the roof of a 2,500 square foot house will shed about 1,400 gallons of water. I could easily collect over 10,000 gallons of water in the spring for use in the dry hot summer months. All it takes is a simple system of pipes to carry water from the rain gutters on the house to a cachement system (typically one or more tanks in the 3,000 to 7,000 gallon size). Harvesting rainwater for household needs isn't practical if you have other options, but it's perfect for watering plants. It also gets the water away from the foundation, which would alleviate some of the shifting that causes cracks in our walls.
Rainwater collection systems for garden use are fairly inexpensive. If you're interested, here's a good place to start. http://www.greenbuilder.com/sourcebook/Rainwater.html.
Monday, 26 March, 2001
I've always been suspicious of union organizing efforts, and the recent activity by the United Food and Commercial Workers in Las Vegas strengthens my conviction that union organizers are more interested in power than in any type of "fairness." The UFCW started this action last summer by pressing the Clark County Commission and area cities to prevent Wal-Mart from opening their Supercenter stores. When that didn't work, the union organized a picketing campaign aimed at keeping people from shopping at Wal-Mart. That didn't work either, so now they're trying to get Wal-Mart employees to hold a union election. It's a tough go, in part because Wal-Mart has a high employee turnover rate (around 50%), and in part because long-time Wal-Mart employees actually like the company's policies. Unions have been trying to organize Wal-Mart workers for years. It looks to me like the UFCW is eyeing the 850,000 nationwide Wal-Mart employees as a way to breathe new life into their sagging membership. Wal-Mart is a tough nut to crack, though. Unions have been trying for years to organize Wal-Mart workers, and to date have failed completely except for some meat cutters in one or two stores.
I've seen the UFCW do this one time before: in Grand Junction, CO in the early 1980s. The UFCW had a lock on the local supermarkets (Safeway and City Market) until a new County Market came in offering a larger selection and better prices. The UFCW's organizing campaign was astounding, and when the first election failed they stepped up the negative ads and started picketing the new store. I, of course, made a point of tweaking their noses by crossing the picket line every day. Mind you, this wasn't County Market employees picketing for better pay or anything: it was UFCW members picketing the store because the employees choose not to have the union represent them. Not that I would have respected the picket line if it was the employees.
The primary interest of unions today appears to be maintaining their power rather than protecting the workers that they claim to represent. A union today is like any other large bureaucracy: those in power have a vested interest in keeping the union strong so that they don't have to go find honest work. The union remains in power, not because it provides for its members, but because new employees are required to abide by union rules even if they choose not to become members. And if they choose not to join the union, they are discriminated against by the union representatives and the pro-union employees. By placing seniority over performance, and refusing to tie benefits to realistic production, quality, or profit goals, unions promote mediocrity at the expense of their members, their employers, and their customers. It's little wonder that Americans today are increasingly anti-union.
Sunday, 25 March, 2001
I bought a package of replacement bungee cords for my truck last week. I use the things surprisingly often, and they tend to get brittle and snap after a few years. I opted for the cloth covered type this time rather than the heavy black rubber ones. The hooks on the old rubber cords tend to fall off and get lost, and the rubber straps seem to wear out faster than the cloth covered type. Anyway, today I actually opened the package.
There's a warning label on each cord. The label states the cord's rated capacity ("Do not exceed 75 lbs.") and a warning not to stretch the 24" cord longer than 40". There are also warnings about firmly attaching the hooks, keeping your face away from the cord when attaching or detaching it, and a couple of other warnings that I don't recall now (and I'm too lazy to go out to the garage to find a label). I'm surprised they actually got all that information on the little label.
Warning labels on bungee cords. What a concept. I can understand the weight and stretch ratings, but it's obvious that the other warnings are there simply to prevent some Darwin Award nominee from hurting himself and bringing suit against the manufacturer. It's painfully obvious to anybody who gives it a moment's thought that these bungee cords are giant rubber bands that can cause some serious damage if they're used stupidly. The warning labels serve only as a source of humor to those of us who are smart enough to read them. Anybody who would misuse a bungee cord is probably too stupid to read anyway, so the warning labels are a complete waste. Amazing.
Saturday, 24 March, 2001
Bicyclists are optimists. Either that or we're just nuts. This morning was the Rosedale Ride, an organized cycling event with distances ranging from 9 to 62 miles. All proceeds benefit the Rosedale School, which supports and educates students with exceptional physical and mental handicaps. Since I've not been training much lately, I choose to ride 45 miles rather than 62. It turned out to be a good training ride in preparation for the 62 mile Ride for the Roses in 2 weeks.
I got up at 6:00 this morning, and it was raining. Actually, it was pouring. I turned on the local news station to check out the weather, and it didn't look too promising. Since I'd told friends that I would be there, I figured I might as well go, but I fully expected to see a "canceled" or "postponed" sign at the race site. Instead, there were almost 1,000 people already there! It rained right up to the start of the ride, but nobody headed home. It stopped raining at about 8:30, and we started the ride a few minutes later. It turned out to be a very good ride.
Friday, 23 March, 2001
When I was going to college, one of the most popular Computer Science electives was compiler design. We went through all the theory talking about LALR(1) parsers, terminals, non-terminals, peephole optimization, and all that, and then wrote the front end for a small Pascal-like language. Over the years, I've had reason to implement parsers for many different "languages," none even as difficult as the toy Pascal we worked with in college. And every time I need a parser construction reference I look not at the Dragon Book or any of the other mainstream compiler texts, but instead I turn to my faded printouts of Jack Crenshaw's Let's Build a Compiler. In this series of articles, Jack Crenshaw dispenses with most of the theory and gets right to the heart of creating a scanner and a parser. I followed this series while Jack was working on it, and even did a C conversion of the code (Jack's examples are in Pascal) for the first 8 installments. If you're at all interested in writing a parser of any type, you should take a look at this series.
I mention this today because I'm writing a parser for a client project. I got stuck, looked at my bookshelf, passed over the 5 different compiler construction books I have there, and dug through the closet (working at home today) looking for the 3-ring binder that contains the old printouts. Dot matrix printout of a fixed font. It's hardly pretty, but there's tons of good information on those pages. Check it out. It's worth your time.
Tuesday, 20 March, 2001
I find the energy situation in California somewhat amusing. No, I'm not laughing at the potential loss of life if power is cut to a hospital or some old folks can't turn on their air conditioning come June. What makes me laugh is that Californians have for years obstructed construction of new power plants, preferring to buy power from out-of-state suppliers in order to keep the associated environmental effects (real or imagined) out of California. And then they scream for Federal intervention when those out-of-state suppliers raise the prices in response to an ever-increasing demand and a falling supply. It's not as if nobody saw this coming. Some people in California have been warning about this for years. When I heard that the "deregulation" regulations prevent PG&E and Southern California Edison from passing the higher costs on to their customers, I started rolling on the floor. Not only do Californians expect somebody else to pay the environmental price of their voracious power appetites, they expect the supply to be cheap, plentiful, and uninterrupted, regardless of what it actually costs to produce or obtain. Is it any wonder that PG&E and Edison have racked up $13 billion in debt over the last 8 months? The state is now paying $50 million per day to keep Californians' televisions turned on.
Here's the one that almost made me pee in my pants. Californians now are offering a coal-fired power plant in Utah billions of dollars to expand, and want an exclusive contract on the additional generating capacity. At the same time, community groups and environmentalists all over the state are blocking proposed construction of small, clean, natural gas fired plants that could provide inexpensive, reliable, and uninterrupted power to local areas. Environmentalists are also blocking exploration and development of regional natural gas and oil, and scream bloody murder if anybody even suggests a new nuclear power plant or hydroelectric dam. And they keep sucking down those megawatts. There are almost 34 million people in California. If they turned off one 100 Watt light bulb per person, they could save 3,400 megawatts. That much power savings would have prevented Monday's rolling blackouts. Do you doubt that with very little effort they could more than triple that savings at no real inconvenience?
Conservation efforts can only go so far, though, and power demand will continue to increase. At some point Californians will have to make a choice: stop consuming or start producing. If you want to maintain your "not in my back yard" approach to power generation, that's just fine. Just don't come crying to me when nobody else wants to generate your power, either.
Monday, 19 March, 2001
After working at the Linux command line over the weekend, I found myself frustrated at the Windows command line last night. The source of my frustration: Windows' seeming lack of symbolic links.
I installed TextPad on my Windows system over the weekend and wanted to use it from the command line, but didn't want to add another long path to my PATH environment variable. What to do? I came up with a convoluted method of creating pseudo link files before somebody pointed out to me that Windows does have links. A desktop shortcut is just a link (it even has the extension .lnk) to the real file. I created a link to TextPad, copied it to my c:\util directory (which is in the PATH), and was able to bring up TextPad by typing "textpad.lnk" at the command line. Only two problems.
First, who wants to type '.lnk'. Why can't I just type "textpad"? This turned out to be very simple. If you add ".LNK" to the list of file extensions in your PATHEXT environment variable, then Windows will treat link files as executables. The other problem is that there's no command line program (at least I couldn't find one on the system) that will create a link file. Sure, there's a GUI way to do it, but some things are easier at the command line. So I wrote one. This, too, turned out to be fairly easy. Granted, Windows' links aren't the same as Unix-style symbolic links, but they work very well for starting programs.
Is Windows brain damaged because it doesn't support Unix-style symbolic links? I don't think so. Are Linux shells brain damaged because they don't support file type associations? Windows targets an entirely different type of user than does Linux. Most Windows users never see the command line, and neither want nor need the capabilities I was looking for. Once I realized that Windows' shortcuts could be executed, it was a matter of just a few minutes to set the environment variables and create a link building program. I suspect that it'd be much more difficult to add file type associations to a shell, or to the Linux kernel.
Sunday, 18 March, 2001
Nothing will start a religious war among programmers faster than asking for suggestions on a text editor. The Linux vs. Microsoft discussion is a love fest compared to the hundreds of editor wars I've seen over the years. Language wars rank right up there, but text editors take the crown.
I do most of my day to day work in the Delphi or Kylix IDE, and use a standalone text editor only when I need to open some other type of file (writing a quick Perl script, for example, or viewing a log file). What I look for in an editor is: starts quickly, responds to normal cursor movement commands, ability to view multiple files, a line and column counter, and ability to tell if the file's been modified externally (for example, when you're viewing a log file that's being updated). Syntax highlighting is very nice to have, and some other features are quite useful. I can't remember the last time I needed to write an editor macro, although I do from time to time like to record and playback keystrokes. Basically, what I want is small, fast, and easy to learn and to use. Notepad on Windows 2000 almost fills the bill. For Windows, I think I've found what I'm looking for in TextPad. Linux is another story.
I've found that I spend more time at the Linux command line than I thought I would. So I really need two text editors: one for text mode and one for X. I have no love for the common text mode editors vi and emacs. vi (and vim) is just a wrapper around an old line editor, and I find the constant switching between edit mode and command mode to be horribly distracting. Software in general, and editors in particular should be modeless. emacs suffers from the same mode problems, and adds a wonky command syntax to the mix. Plus, emacs is horribly slow coming up on my system. Today I tried every text mode editor on my SuSE distribution CDs. They ranged from horrible to almost good, but I didn't feel like I could get comfortable with any of them. I'm still looking.
For X, I ran across NEdit, which looks very promising. There's also a version available for Windows, so I might actually get to use the same editor on both platforms. Wouldn't that be something?
Saturday, 17 March, 2001
It took me a couple of tries, but I finally got SaX (SuSE's X configuration tool) to configure the system for my Microsoft Intellimouse TrackBall. Except then I couldn't use SaX, because it didn't recognize my mouse. X likes it fine, but whatever SaX is using to talk to the mouse doesn't know that the mouse type has changed. And when you lose the mouse in SaX, you can't operate the program. It's a bad idea, by the way, to run SaX if X is running. It's supposed to work, but every time I'd exit SaX back to X, something would be goofed up. (Also by the way: if you lose the mouse, you can bring up the KDE menu by hitting Alt+F1. Trial and error...)
It turns out that I needed to change the mouse type in rc.config. I wonder if that would have automatically updated the XF86Config configuration file when I ran SuSEconfig. I guess I could experiment to find out, but after spending an hour on this little exercise I have no real desire to screw it up just to see if the configuration software works correctly. It seems to me that there should be one place to set the mouse type.
Friday, 16 March, 2001
There have always been a few things about my Linux system that rub me the wrong way, but I've put up with them rather than do something about it. I've been using the system more lately, and those "little things" are becoming very annoying. So this weekend I'm going to see what I can do. Tonight's project: finding some way to display more than 25 lines of 80 characters when I'm in text mode. In Windows, I use "mode con: cols=100 lines=50". I want something similar for Linux.
Here's an exercise in frustration. Go to Google and search for "linux lines console" or some such. Then wade through hundreds of thousands of entries. Wherever I entered a search phrase for something like that, I ended up with thousands of hits and nothing useful. Nothing in the shell documentation indicated that I could change the number of lines, so I figured maybe it was a kernel option. It's not, but in poking around I found some help text that pointed me to a program called SVGATextMode which is available via FTP from ftp://metalab.unc.edu in the /pub/Linux/utils/console directory. I went and got the source distribution, but it wouldn't compile because it was missing some header files. Maybe I needed to grab something else. I finally found an older version of the program on my SuSE distribution CD.
I don't know how it works, and don't really care (a guy's got to be selective about what he studies), but the program's wonderful. Just edit the /etc/TextConfig file to tell the program what kind of video card and monitor you have (for the monitor you have to specify refresh rates—they're in your monitor manual), and you're set. The text modes that you can display depend on your hardware, but any SVGA card should be able to get an 80x50 mode. I selected a mode with 51 lines of 100 characters. The font is very sharp on my 17" monitor. Much nicer, in fact, than the font I get on my Windows system.
This program should be installed by default by the distributions that include it, and all distributions should include it (I suspect that the major ones do). And the distribution's install program should detect the video hardware (including the monitor if possible) and configure the TextConfig file accordingly.
Now I just need to find a way to have this program run automatically when I boot the system...
Update March 18: Flipping through the SuSE printed documentation, I discovered that the file boot.local in /sbin/init.d is roughly analogous to the DOS autoexec.bat file. So all I had to do was add this line at the end of boot.local:
and now my system comes up in the new text mode.
Amazing what you can learn if you read a little. I wonder if there's a decent "Linux for DOS (or Windows) Users" book out there that covers this kind of thing.
Thursday, 15 March, 2001
Genetically modified foods ("Frankenfoods") have received a lot of bad press in the last few years. Some of the negative coverage is deserved, to be sure, but a lot of it is simply ill-informed reaction to new technology. The Friends of the Earth's "Real Food" page is fairly typical, although somewhat calmer than most. This FOE page brings up some valid points about chemical farming and the need for more rigorous testing of new plant strains for allergic reactions, but their concerns about cross pollination creating "super weeds" are wholly unfounded.
Humans have been performing genetic modification on food crops (often unintentionally) since the dawn of agriculture over 10,000 years ago. Early cereal grains were selected (probably unintentionally) for thinly coated seeds that germinate quickly, and a genetic mutation that prevents the stalk from shattering; leaving the seeds on the stalks rather than allowing them to fall to the ground and germinate. Early domestic peas were selected (again, unintentionally) for a similar mutation that prevents the pods from exploding and casting the seeds to the ground. Wild berries (strawberries, for example) are much smaller than the domestic varieties. Again, humans selected the genetic mutation to obtain plants that produce the larger fruits. All seedless plant varieties (bananas, oranges, grapes, watermelons, pineapples, etc.) are again genetic mutations that we have propagated over the centuries. Wild almonds are very bitter and quite poisonous, except those produced by trees that contain a gene mutation which prevents it from synthesizing the chemical responsible for the bitterness (amygdalin, which breaks down to yield cyanide). Early farmers discovered the non-bitter almonds from those trees and planted some. None of these genetic mutations could survive in the wild because they affect the plants' ability to reproduce. Agriculture is full of similar examples. Very few domesticated plant varieties would survive for long in the wild.
If you doubt the power of selecting for genetic mutation, consider that modern cabbage, kale, kohlrabi, brussels sprouts, cauliflower, and broccoli all share a common ancestor. They are the same plant! The different varieties are the result of repeatedly selecting a domesticated wild cabbage plant for different attributes (leaves, stems, buds, and flower shoots). Or consider that modern corn is so completely different from anything found in the wild that the question of its wild ancestor is hotly debated. The time to produce a new variety depends on the extent of the mutation. You can turn a cabbage into a cauliflower in a relatively few generations. Modern corn, on the other hand, evolved over thousands of years.
Although cross pollination is known to occur between varieties of the same species (pumpkins and gourds, for example, or among different types of squashes), cross-pollination between species is not possible. Suggesting that a genetically modified soybean that resists a particular chemical herbicide could cross with a dandelion to create a "super weed" is just uninformed alarmism.
Wednesday, 14 March, 2001
I'll probably get a batch of hate mail from this one, but this posting on Plastic and the resulting discussion just put me over the edge. The posting on Plastic is about an article at The American Prospect Online titled Did Roe v. Wade Abort Crime? The article itself discusses a study by John Donohue (a law professor) and Steven Levitt (an economist) titled "Legalized Abortion and Crime," which is scheduled for publication in the May 2001 issue of Harvard University's Quarterly Journal of Economics. The gist of the study: there is a high correlation between abortion rates and crime rates 15 to 18 years later. The idea being that "poor, unmarried, young, low-education women tend to have more abortions. And their kids tend to have higher rates of crime." More abortions means fewer such kids, resulting in less crime.
It's hardly surprising once it's pointed out. And I'm not about to dispute their numbers, which have been subjected to over a year of peer review. I will point out, however, that correlation doesn't necessarily mean causation. That is, just because most rapists are men doesn't necessarily mean that most men are rapists (radical feminist slogans notwithstanding).
I can't imagine that anybody would seriously advocate abortion as a means of crime control. Truthfully, I'm appalled that it's advocated as a method of birth control, or tolerated at all except in extreme cases. Religious or moral issues aside, how can we allow a woman and her doctor to kill an unborn child with impunity when, if the same child was killed by an assailant in an attack on the mother, the assailant is charged with murder? Abortion advocates (and forget the "Pro Choice" label—their negative reaction to the Choose Life initiative shows them for what they really are) claim to be supporting "a woman's right to choose." But women already have the right to choose. They can choose to abstain from sex, or choose to use one of the many readily available and very effective means of contraception. Rape excepted, unplanned pregnancy these days is simply irresponsible and stupid.
Sunday, 11 March, 2001
We've been wanting to put mulch around all of our many trees in order to retain moisture, cool the soil, and reduce the amount of grass that I have to mow. Mulch is somewhat expensive, especially if you buy it in bags, but still not cheap in bulk when you consider how much we need. A 3 cu. ft. bag of mulch at Home Depot will run a couple of bucks. You can buy it in bulk (by the pickup load) for about $15 per yard (27 cu. ft.). I figure we'll use at least 50 yards by the time we're done. That's a lot of money for ground up trees.
Debra found out that tree services (those guys who come trim your trees or take out the dead stuff) are more than happy to drop their wood chips off in your driveway. That beats them having to pay to dump a load at a disposal site. So Friday I came home to a dump truck load of ground up trees sitting in the driveway. Over the weekend (when it wasn't raining), Debra and I spread a bunch of the mulch out under some of our trees. This takes longer than you might think, because we first mowed the grass very short (took hardly any time), and then covered the entire area with newsprint 10 sheets thick. The newsprint is to prevent the grass from growing back up through the mulch. The result is pretty impressive, especially after Debra lined it with some rocks from our pile. But it's time consuming: 6 hours for 3 trees. Multiply that by 30 trees... The other problem is coming up with enough of the right sized rocks to line the mulch islands. I'll probably end up picking through the rock piles at some of the construction sites nearby.
We forgot to take before-and-after photos of the section we just finished. I'll make a point to do that for the next section.
Saturday, 10 March, 2001
In his "C Programming" column in the latest Dr. Dobb's Journal, Al Stevens gives us a little peek into the problems he's had trying to transition from Windows to Linux. He's gotten bored with Windows programming, and is looking for something new. He's settled on Linux, and having all manner of problems with it. Don't feel alone, Al, I'm having trouble too.
What Al explains better than anybody else I've read is that yes, he's capable of slogging through the meager documentation and mountains of online information to find the solution to just about any computer related problem. The point he makes is that he shouldn't have to bring all of his considerable computer knowledge and experience to bear just to get the operating system to boot! Even a hobbyist likes to actually do stuff with his computer. Futzing with weird configuration files is just frustrating—especially after having done it for 20 years.
Of course, being right won't prevent Al from getting tons of hate mail from the zealots who think "their" operating system is the best thing since the invention of the microprocessor.
Friday, 09 March, 2001
What with GPS and radio navigation aids available to pilots and seafarers, we take for granted the ability to determine our current location in the world. It wasn't always that way. Up until the end of the 18th century, there was no provably accurate method of determining one's longitude. Determining latitude is relatively easy by observing the angle of the sun at local noon, or the altitude of any number of known "fixed" stars. Determining longitude is something else entirely. By the beginning of the 18th century, people knew that they could use time to determine latitude: if you know what time it is at some known position (London, for example) when local noon occurs at your position, then you can infer your longitude very easily. The earth rotates at 15 degrees per hour. So if it's 3:00 pm in London when local noon occurs at your position, then you're 45 degrees west of London. Simple. Except that clocks that could keep accurate time on board a ship didn't exist in 1700. At the Equator, a four minute error in time keeping adds up to a 60 mile error in position.
Longitude, by Dava Sobel explains the problem in great detail, and goes on to tell how one man (John Harrison) spent most of his adult life trying to solve it (and eventually succeeding). At 175 pages, it's an easy afternoon's reading, and quite an engaging story. The author also discusses some of the crackpot ideas that people came up with. I nearly split a gut laughing when I read about the wounded dog theory. This isn't a new book—it was originally published in 1995. I read about it on Slashdot some months ago, and finally remembered to pick it up the last time I was at the book store. They only had the hard bound edition, which was pretty pricey at $19.00. I don't know if there's a paperback edition available. In any case, it's well worth the read.
Thursday, 08 March, 2001
It's amazing how fast you can read a popular novel if you have some uninterrupted time. It's also amazing how bad a best selling popular novel can be. I picked up John Grisham's The Brethren in the Philadelphia airport last night, and finished it just as we were landing in Austin. I'm not much of a popular fiction addict (although I do enjoy Stephen King's writing), so I haven't kept up with John Grisham's writing. I read A Time to Kill when it was published, and also The Pelican Brief, both of which I thought were excellent novels. How the mighty have fallen. The Brethren has none of the power of Grisham's earlier work. The only thing I found remarkable about the book was that it was a national bestseller. It seems that once a writer publishes a bestseller, anything else he publishes, no matter how terrible, automatically sells a million copies.
With maybe two exceptions (and those in very minor characters), every character in The Brethren is thoroughly disgusting human being. The "honest" Congressman turns out to be a typically amoral politician. The head of the CIA is of course a power hungry puppet master, and his agents will do anything for "the cause," regardless of its legality. Even the scam victims are portrayed as self-involved whiners who blame their personal and financial problems on everybody but themselves. Lawyers, police, women, lobbyists, bureaucrats, prison guards, you name it. Every character is a caricature. The book reads like a racial, sexist, and "jobist" stereotype. It's impossible to find a shred of empathy for any of the major characters, and few of the bit players. By the end of the novel, I was hoping that Grisham would find some way to kill all the characters off at once.
No protagonist. What a weird way to write a novel. I'm certain that it's a valid literary form, but I didn't enjoy it.
Wednesday, 07 March, 2001
The widespread availability of mobile telephones has had some interesting unintended consequences. Public pay telephones, for example, never a huge money maker but usually profitable, are no longer cost effective. Phone companies are scrambling to unload their pay telephone systems, and are finding few takers. I wouldn't be surprised if the companies end up giving the infrastructure away just to be rid of it. I suspect that the only thing preventing Baby Bells from eliminating all public pay phone service is legislation.
It seems like every airline traveler has a mobile phone. Sitting in the departure lounge, you can't help but overhear dozens of phone conversations, most of which are just chatting. Now that telephone communication is essentially free (pay a monthly fee, talk all you want), people use the phone whenever they're alone. Every trip, I notice a handful of people who talk on the telephone from the moment they arrive at the departure lounge until they get on the plane and the flight attendant instructs us to turn off all portable electronic devices. And as soon as the airplane arrives at the destination and we're parked at the gate, the phone goes on and they start talking again. And they're not shy about it! I've overheard some very private conversations. And why is it that people talk so loudly on their mobile phones? I wonder if these people realize that anybody within 50 feet can hear them, and we not at all interested in their latest gossip.
It used to be that people went to phone booths and closed the doors so they could have their conversations in private. I'm looking forward to anti-phone booths, where I can go to get away from the inane conversations that I can't help but overhear.
Tuesday, 06 March, 2001
I've never spent much time in the Eastern part of the country. I was 15 years old before I ever crossed the Mississippi river, and since then I've crossed it maybe a dozen times. I'm a Westerner by birth and by choice. So every time I go east, I find something that surprises me. Today I flew into Philadelphia on my way to a client's site for a meeting tomorrow in Newtown, PA—about 40 miles north of the airport up I-95.
In Western states, mile marker numbers and exit numbers exactly correspond. Exit 254 on I-35 is at mile marker 254. It's that way in every Western state that I can recall. Certainly in Texas, New Mexico, Colorado, Utah, Arizona, Nevada, California, Wyoming, and the Dakotas.
The Philadelphia airport is at mile marker 13 on I-95. Since my driving directions to Newtown said that I needed to head north to exit 30, I figured it'd be a 20-minute trip. 30 minutes later I was at exit 25 and starting to get suspicious. It was then that I noticed mile marker 42 coming up.
Why did they do that? Did somebody invent the mile marker system after the I-95 exit numbers had already been assigned? Or are mile marker signs a convention that's implemented by the individual states? One would think that the Interstate Highway system would use the same convention nationwide.
Saturday, 03 March, 2001
I still hold a private pilot's license, although having been out of the left seat for over 5 years I'm not current. If I wanted to fly again I'd have to take some refresher courses. I still get into conversations about flying, though, and invariably somebody brings up the safety issue. "Are those little planes really safe? I always hear about them crashing." I've heard this question so many times that I should print my response on a card and just hand it to whoever asks.
Private aircraft are safe, and the FAA's regulations for private aircraft and pilots are more than sufficient to maintain that safety. The problem is attitude. Too many pilots treat their aircraft like they treat their cars, and their flying like they do their driving. But an airplane isn't a car, and piloting takes considerably more skill than driving. Getting careless or daring in a car is potentially dangerous, but nor normally life-threatening. Getting stupid in an airplane is much more likely to end in tragedy. "There are old pilots," the saying goes, "and there are bold pilots. But there are no old, bold pilots."
Yet all too often, pilots get daring (read "stupid"). One guy in Paulden, AZ sustained serious injuries when he crashed on takeoff because he forgot to turn on the fuel selector. A guy who owned property near mine in Northern Arizona killed himself and three other people by trying to take off in an airplane that he had not maintained properly and had loaded over gross weight. He didn't clear the trees at the end of the runway. Another guy in Arizona killed himself and his buddy when he tried to do aerobatic maneuvers in an airplane that was not built for such stresses. In these three cases, the pilots were experienced flyers with thousands of hours. The aircraft were perfectly safe, but the pilots took unreasonable chances and lost. I could list hundreds of similar incidents. Short of banning private aviation, no amount of FAA regulation could have prevented these crashes. Certainly there are cases where lack of experience is a contributing factor, the JFK Jr. tragedy, for example. Given more experience, perhaps he would have realized that he had no business flying in those conditions.
There are also cases where faulty equipment is a major contributing cause, but in most such cases the pilots would have seen the problems had they performed their pre-flight checklists. "Why should I do a pre-flight check? The airplane was fine when I parked it last weekend." An airplane isn't a car. If your car runs out of gas or your engine breaks down, you simply pull over to the side of the road and call AAA. If your airplane engine quits, you have a problem—especially at night, or when you're over water or rough terrain. If it happens on takeoff, you're probably dead. You can't afford to take your aircraft's condition for granted.
Whenever there is a car accident, we assume that somebody--a person--was at fault. Yet every time a private aircraft accident occurs, people think the airplane is unsafe. Why, when the overwhelming majority of reports in the NTSB Aviation Accident/Incident Database cite pilot error as a major (or the major) contributing factor?
Friday, 02 March, 2001
Flipping the channels on the idiot box last week, I came across the movie "Enemy of the State," starring Gene Hackman and Will Smith. Smith plays a lawyer who obtains, without his knowledge, a video of a murder committed by an NSA bureaucrat. The bureaucrat proceeds to bring all of the NSA's considerable intelligence gathering resources to bear on discrediting Smith's character and trying to recover the video. Hackman's character is a former NSA operative who helps Smith's character turn the tables on the bureaucrat.
The movie's somewhat entertaining, and undoubtedly got the conspiracy theorists all lathered up. I have to admit that it got me to wondering just how much of what's portrayed in the movie is actually possible.
Can the NSA really plant small electronic bugs on me (in my shoes and clothes, for example) that transmit signals allowing reconnaissance satellites to track me? Wouldn't that require a rather bulky transmitter and antenna? Do we really have enough reconnaissance satellites to provide 24x7 coverage over any portion of the globe?
Does the NSA really have computers listening to every phone call for words like "bomb," "gun," and "President?" That's a serious amount of data to be filtering. What would happen if we got a large percentage of the population to just casually say "bomb President" in every telephone conversation?
On a similar note, I know that the FBI can use its Carnivore program at an ISP to sniff the email correspondence of selected people. Does our government have the ability to tap into and sniff a large portion of the total email traffic in the country? Could they do it undetected? If so, we could reduce their ability to actually inspect the traffic by encrypting every email. And if everybody put certain trigger words and phrases into their emails, the sniffer programs would have no way of culling all of the suspect messages.
Although certainly possible on a small scale, I don't believe that any of these things are possible today on a nation-wide or global scale. Will they become possible in my lifetime? Perhaps. In the hands of the wrong people, such capabilities would be truly frightening.
Thursday, 01 March, 2001
Printable computers. This is absolutely the coolest thing I've heard of in a very long time. Log onto the Internet, download a file, send it to your desktop fabrication machine, and then plug in the new device. The mind fairly boggles at the possibilities. This technology, which is probably about a decade from being available to the average user (about where CD-R was 10 years ago), could do for the electronics industry what the widespread availability of computers and software development tools has done for the software industry. Currently, creating and distributing hardware is very difficult—there's no such thing as a "semiconductor hacker" who creates new semiconductor devices in his basement over the weekend. It takes a $2 billion factory and weeks of work to create a chip. But if this printable computer technology actually works, it opens up a whole new world of possibilities. Open Source microprocessors, for example. If a bunch of loosely-organized programmers can create an operating system like Linux or FreeBSD, imagine what a bunch of collaborating microprocessor architects can come up with. It'll be a few years, but you can see it coming.
Although sophisticated microprocessors are still beyond its capabilities, the technology is sufficiently advanced that products based on it are now coming to market. A company called Diceland Technologies, for example, will begin marketing disposable cell phones in May.
Hold on to your seats, folks. Things are getting more interesting every day.