Airshows, photography and Linux routing

Gatermann and I went out shooting again yesterday. More exploration of the warehouse district, and we found out that the warehouse district is a halfway decent place to watch an airshow. A couple of cargo planes buzzed us, tipping us off to what was going on, so I went chasing. I’m not the airplane junkie my dad was (few people are), but I’m still a sucker for exotic military planes. I borrowed Gatermann’s telephoto lens and took shots as planes went by. A pair of vintage P-51 Mustangs zoomed by, so I got a few shots of those. A couple of modern fighters made a brief appearance, but I couldn’t get them into the lens quickly enough to identify them. Chances are they were F-16s; not as common a sight as they once were, but you still see them.
I was hoping for a chance to see the Stealth Bomber; about four years ago I was in St. Louis on the 4th and as Gatermann and I were stepping outside to go get something to eat, we heard a low rumble overhead, looked up, and got a spectacular view of the rarely seen and highly classified B-2. Of course there wasn’t a camera in sight so we didn’t get a shot.

This year, a B-52 came from out of nowhere. It was huge–I mean HUGE–and very obviously not an airliner. I’d never seen one in person before so I didn’t identify it immediately. I got it in the camera, zoomed in on it, and figured out what it was. I got several shots. The B-52 is an oldie but a goodie; we used it heavily in Vietnam and in the late 1970s we intended to replace it with the B-1. Carter cancelled the B-1; later Reagan re-initiated it, but it was a disappointment. The B-1 never fully replaced the B-52 and now there’s talk of decommissioning the B-1 completely.

The B-52 was followed by a series of stunt pilots. I guess that’s good for oohs and ahhs, but I wanted to see weird airplanes.

The grand finale was the B-1. It totally snuck up on me; I think Gatermann spotted the thing first. I recognized it but the camera couldn’t catch it–the autofocus wasn’t fast enough. I switched to manual focus and waited. And waited. I spotted it looping around on the east side of the river; most non-classified stuff makes two passes. But you can’t get a good shot from that distance with this lens. I never saw it come back. It didn’t really look like it was landing (Scott Air Force base is across the Mississippi River, in Illinois), but I couldn’t find the thing. I gave up, turned around, and started walking back when Tom yelled and pointed. I quickly turned around, and the B-1 was just barely in range. I pointed and shot as it disappeared behind a warehouse. I think I got it.

I shot more than a full roll of just airplanes.

After airplanes and lunch, we headed out to CompUSA. Gatermann wanted a KVM switch; I wanted Baseball Mogul 2002. A Belkin 4-port switch was $200. A Linksys was $150. Gatermann grabbed the Linksys. I came up empty on Baseball Mogul. We went back to his place, hooked up the Linksys, and it was a real disappointment. It doesn’t pass the third mouse button. Numlock doesn’t work. And it has a slight ghosting effect on the picture. I didn’t notice it but Gatermann did. Stepping the resolution down and lowering the refresh rate didn’t help a whole lot. He’ll be taking the Linksys back. (To Linksys’ credit, the box is made in Taiwan, though its wall wart is made in Red China. I’m not a fan of financing World War III, nor am I a fan of slave labor, so I try to avoid products made in Red China whenever possible. Gatermann does too. I’m not sure what his reasons are but Red China’s treatment of the seven prisoners of war after their pilot kamikazeed our spyplane probably has something to do with it.)

Bottom line: Belkin’s KVM switches are better. I like the Linksys’ metal case better than the plastic case on my Belkin, but the Belkin performs a lot better and its buttons feel more solid. I also like the ability to change displays from the keyboard, rather than having to reach over to the switch like the Linksys requires.

I’m generally not impressed with Linksys’ products. Their DSL router, though it looks really slick, doesn’t forward ports very well. If you just want to split off a cable or DSL connection, it’s great. If you want to learn how the Internet works and run some servers behind your firewall, it’s going to frustrate you. It’s just not as stable as Gatermann’s Pentium-75 running Freesco, which we cobbled together from a bunch of spare parts. Get a used Pentium-75 motherboard with 8 megs of RAM, put it in a $20 AT case along with a $15 floppy drive and a pair of $15 PCI NICs and download Freesco, and you have something much more versatile and reliable for half the price. And a lot of us have most of that stuff laying around already.

And Linksys network cards are absolute junk. Their workmanship isn’t good, their drivers aren’t stable, and the cards have a tendency to just die. Or they age really poorly, spitting out tons and tons of bad packets as they carry out their wretched lives. Netgears are much better, and not much more expensive.

I also gave Gatermann’s Linux configurations a look. Freesco didn’t appear to be forwarding port 80, even though we configured it to, and Apache was installed and I’d verified it was working by opening a browser and going to 127.0.0.1. I tried a variety of things–including forwarding the ports manually from a command line, using the ipportfw command if I remember right–but it never worked. Finally, I tried hitting the Web server from a Windows PC inside Gatermann’s private network. It was denied too. Workstation-oriented Linux distros tend to come locked down really tight by default these days, which is probably a good thing in general, but it makes it really hard to just turn on Web services to the world. I know it can be done but I wouldn’t know where to begin. So I had him download TurboLinux Server 6.5, which will probably solve all his web serving problems.

Where did we come from?


Today’s the Fourth of July
Another June has gone by
And when they light up our town
I just think
What a waste of gunpowder and sky…
–Aimee Mann

Cynical? Who, me? Murel, my next-door cubicle neighbor, asked me a question today that made me wonder, is what this country is today worth our founding fathers risking their lives for?

That’s assuming anyone knows anything about them these days. Which leads me to the question my coworker asked.

“Dave, you’re the resident history buff. What political party did Thomas Jefferson found?”

Why, the Democratic-Republicans. I thought everyone knew that.

“And what party does that correspond to today?”

Most directly, the Democrats.

Murel asked that question because he’d just read an editorial talking about “The Evil Republican Slave-Owning Thomas Jefferson.” I rolled my eyes at that.

“Abraham Lincoln was a Republican!” Murel said.

He’s right. Though that plays into another misconception. The Civil War wasn’t about slavery. That’s what the Politically Correct crowd wants to say, but that’s not true. Fundamentally, the Civil War was about a number of things. One big, forgotten issue is that of tariffs. The industrial north wanted protective tarriffs. This made American goods cheaper than foreign goods, encouraging people to buy American. Plus, in those days, there was no income tax, so tariffs were a major source of revenue.

The rural South didn’t want tariffs. Tarriffs increased the prices they paid for goods. Plus tarriffs made it more difficult to sell cotton and tobacco abroad. In short, what was good for the North’s economy was bad for the South’s economy.

You can see the other big issue by looking at the forms of government each side chose during the Civil War. The North maintained its centralized government, while the South chose a loose confederacy. The South valued states’ rights much more than the north did.

Where does slavery fit into all this? Well, it was an issue of states’ rights. But, truth be told, only a small number of southerners actually owned slaves. Everyone today seems to think the typical Southern family had a slave as a sort of live-in butler or something, because that’s how Hollywood portrays slavery. You had to be wealthy to afford slaves, so the majority of slaveowners were plantation owners. The majority of southern farmers weren’t large plantation owners. They may or may not have been pro-slavery. The issue certainly didn’t directly affect them all that much.

And the North was hardly a haven for escaped slaves. The North had experimented with it and found it cost too much to literally own your workers. So they abandoned it. The majority of northerners probably didn’t care one way or the other. Slavery wasn’t an issue that affected them. There were militant, outspoken anti-slavery activists, and they were loud, just like today’s activists are. That’s why they’re remembered. Slavery gets more people worked up than tarriffs. There are probably a lot of people who don’t even know what a tarriff is.

So why was there a war? Simple. The North was more populous than the South, so the only way the South was going to get what they wanted was by walking out the door.

And Lincoln’s goal wasn’t to abolish slavery. Lincoln’s goal was to preserve the union at any cost, with or without slavery, and he is widely quoted as having said so.

The irony here is that Lincoln was willing to consider abolishing slavery. And he was in favor of high taxes. Sounds pretty liberal. The only resemblance to the Republicans of today is the protection of big business.

The Republican party as we know it today didn’t come into being until after the Civil War, and its history as the party of big business and lower taxes is hardly consistent. Although Teddy Roosevelt was more conservative than his cousin FDR, he was running around busting up businesses at the turn of the century.

But I’ve digressed a lot. Murel talked about the failings of some of the Founding Fathers that have come to light in recent years and cast a shadow on their credibility. We’re horrified to find they had flaws. (Though somehow it doesn’t bother us that Bill Clinton and Jack Kennedy had flaws.) I disagree. The Founding Fathers were human. They were very forward-thinking and insightful and wise, but human.

But worthy of respect. Remember why they were here. European aristocrats were old money. When you couldn’t get land, you moved. So these were men whose ancestry had come across the Atlantic and started over. Yes, some of them were spoiled brats. John Hancock and Samuel Adams come to mind. But Alexander Hamilton was the epitome of the self-made man. Benjamin Franklin’s beginnings weren’t as humble, but he arrived in Philadelphia with little more than his pocket change and his training as a printer and became a tycoon.

These were men who knew what they wanted and knew how to go get it. They knew their interests and England’s interests weren’t the same and they weren’t going to get what they wanted from England, so they headed for the door.

The country we have today doesn’t bear a whole lot of resemblance to the country they fought to create. Political correctness is the rule of the day. You can’t let the facts get in the way of what’s politically correct. Nor can you let your constitutional rights. Freedom of speech, the free press, and freedom of religion are all in danger. (And you thought I was going to say something about guns, didn’t you?)

I won’t go to the extreme of calling Independence Day a waste of gunpowder and sky, because it makes sense to celebrate what we do have. We’re still a whole lot more free, than, say, Red China.

But most of us don’t know why. And as a result, most of us really take it for granted.

Port forwarding with Linux

It’s Tuesday. I can’t wait for the weekend. Hey, at least this week we get a little break on Wednesday, at least in the States.
I posted some mail last night. Among those was a request that I reveal some of my Linux server-at-home secrets. I think I’ve sufficiently covered the creation of mail and Web servers, but I’ll go back and look some other time, when my brain’s less fried. I spent the day trying to make bootable Linux CDs. I’m thankful for CD-RWs, because I would have toasted about 10 CD-Rs in that process. I’ve found a Web site at work that talks all about it; I’ll refrain from calling it great until I figure out whether all of its steps actually work. I have made one successful bootable CD using the process, but it wouldn’t do everything I wanted. When I subbed in my own kernel that could do everything I wanted and left things like amateur radio support behind (just what I always wanted… a HAM-enabled Linux boot CD. Be still, my heart!) I got various different error messages. So not only am I wrong, I’m inconsistently wrong.

Anyway, let’s talk about firewalling. I don’t write firewalling scripts by hand; I let an expert do it. Then I go in and make slight modifications. My favorite method by far is to use PMFirewall, which asks you a bunch of nice questions and then writes a script. At present it only works with 2.2-based distros (a version for 2.4 is in alpha). If you want to do some forwarding, all you have to do is edit rc.firewall and add a couple of lines (this example assumes you’re running a Web server on 172.16.0.10, port 80):


echo "1" > /proc/sys/net/ipv4/ip_forward #enable IP forwarding
/usr/sbin/ipmasqadm portfw -a -P tcp -L $IPADDR 80 -R 172.16.0.10 80 #forward Web services to port 80 on 172.16.0.10

If you’re also running IMAP services on the same box, you can theoretically open it up with this line (I haven’t tried anything like this yet):


/usr/sbin/ipmasqadm portfw -a -P tcp -L $IPADDR 143 -R 172.16.0.10 143 #forward IMAP to port 143 on 172.16.0.10

Forwarding with Freesco is supposed to be easy but I’ve never actually done it yet. I’ll have to play around with it, on someone else’s cable or DSL connection of course (we wouldn’t want to keep anyone from reading these pages, after all). I believe Freesco is still 2.0-based, and firewalling and forwarding has changed with each major kernel revision since 2.0. It may have changed some before that too, for all I know, but back in those days I was fighting Slackware on 486s and deciding I hated Linux. It wasn’t until 1997 when a coworker gave me a copy of Red Hat 5.2 that I changed my mind and realized I didn’t hate Linux, I hated Slackware.

Monday, 2 July 2001

Some lucky people get a five-day weekend this week. Not me. I’m off Wednesday for Independence Day. About 30 years ago, my dad and his med school buddies used to go to the Missouri River and shoot bottle rockets at barges to celebrate. I’m not sure what I’ll get to do yet. Last year I had to work the 4th. That was a very nice paycheck, since I worked 60 hours that week anyway, on top of 8 hours’ holiday pay.
I found a use for absurdly high-speed CPUs this weekend. My Duron-750 can simulate a 30-team, 162-game baseball season in its entirety in roughly 3 minutes. Of course a faster CPU will do it even faster. Baseball simulation is very CPU-intensive and very disk-intensive. This 750 has a SCSI disk subsystem in it too. It’s old, but I suspect SCSI’s ability to re-order disk requests for speed helps. I haven’t swapped in an IDE drive to see if it makes a difference. So if you’re a statistical baseball junkie, you can actually justify an insanely fast CPU. It feels strange to call the cheapest CPU on the market today insanely fast, but for most things, the Duron-750 really is.

The other use I’ve found for these CPUs is emulating a 50 MHz 68060-based Amiga at full speed. A Duron-750 isn’t quite up to that task.

I talked about PartImage last week. I used it over the weekend to clone 7 PCs. My church’s sister congregation bought 8 Compaq Deskpro EXs earlier this year and just finished the room they’re going in. So I went in, set one of them up (and tweaked it out, of course–the first reaction of one of the members: “Wow, that sure boots fast!”).

Sadly, many companies seem to use non-profit organizations as a way to just get rid of their junk. Here are some of the jewels this church has been “blessed” with: two 386sx laptops with dead batteries and no power adapters, two XTs, two 286s, a pile of 386sxs, and three 486s. Two of the 486s are old Compaq ProSignia servers with big SCSI hard drives, so I can slap in an ISA NIC and install Linux on one of them and make it a file server. The only thing remotely useful that anyone’s ever given them is a pair of Pentium-75s. But one of the 75s had a 40-meg hard drive in it. That’s the better of the two, though. The other had no hard drive, no memory, and no CMOS battery.

Oh, and I shouldn’t forget the large quantities of busted monitors. They’ve got a room full of monitors. About three of them work. What’s anyone going to do with a bunch of monitors that don’t work? Legally, the church can’t throw any of this stuff away (and shouldn’t) because of all the lead content, which makes them hazardous waste. But the church can hardly afford to pay someone to take it away and dispose of it properly either. We’re talking an inner-city church here. Can you say, “blaxploitation?” I knew you could.

The Pentiums did at least come in standard AT cases though, and nice ones at that. They look like Enlights, but they had Sparkle power supplies in them, Whatever the make, they’re nice and thick so they don’t slice you, there’s lots of wide open space inside, and they have 7 drive bays. So I grabbed the diskless Pentium to make into a router/Squid server/content filter. I ripped out the P75 board and dropped in an AT Soyo Socket 370 board with a Celeron-366 on it. It’ll be fabulous.

The best I can do with most of these systems is to try to make X terminals out of them, assuming I can find a machine beefy enough to host StarOffice for a half-dozen systems. It may not be worth the bother.

One of the 386s had a 420-meg hard drive in it for some reason, so I pulled that drive, hooked it up to the first of the Compaqs, and used PartImage to dump it. I used 480 megs on the drive, so with Gzip compression, the image left just 12 megs free on the drive. Tight fit, but we were OK. Then I just ran around to each of the others, hooked up the drive, and pulled the image. I took the drive home with me so I could burn a CD from it.

That’s good use of free software.

Some downtime yesterday…

Late last night at some point my router decided to quit forwarding port 80. I reset it and all was well. My apologies for the outage.
I made the mistake of downloading the demo version of Baseball Mogul last night and I played it for several hours. The good news is, according to Baseball Mogul, the Royals are one star pitcher and a star catcher away from contention. The bad news is it’s hard to come by those two things, and when you’re the size of the Royals, it’s hard to afford them. Usually you find yourself overpaying for second-rate players you think you can afford.

The thing that keeps me from slapping down my 30 bucks and paying for it is the time factor. I know I’ll play it like crazy. I like this game’s approach because you’re the GM, rather than an arcade-style game like most baseball sims, or the field manager like most statistical sims. As much as I love on-field baseball strategy, I love wheeling and dealing and watching finances even more.

Speaking of slapping down money, there are a bunch of sales out there starting today. I posted more details in the forums, but after rebates, there are plenty of hard drives to be had in the $50-$60 range for the next few days, and if you need a $20 CD-ROM drive, CompUSA is your friend.

Getting in touch with my feminine side

Soon after I moved back to St. Louis, Gatermann and I came up with a weird ritual for Friday and/or Saturday nights. Come Feb. 1999, I started writing my first book, which was a full-time job on top of the full-time job I already had, so my brain was usually totally fried after a week of troubleshooting Macintoshes for 40 hours and spelunking in Windows configuration files and writing about my findings for another 35-50 hours.
Sometimes our buddy Tim Coleman was involved too; it just depended on whether he had to work on a given night.

First, we’d go rent a movie, almost always an old Peter Sellers movie. Tom can keep the Pink Panther series straight; being oh-so dark and cynical, my faves are, of course, Dr. Strangelove, the classic comedy on nuclear war, and Being There, which is a very cynical take on what it takes to succeed in Washington. If you haven’t seen it, I’ve already given away too much.

Once we had a movie or two, we’d stop off at the local QT for some lovely beverages. You can get a 64-ouncer of whatever soft drink you want for about a buck, which is what we usually do. Note: A full 64 ounces of root beer does really bad things to you. You feel it in the morning. I know you’re going to go try it now, and you’ll be cursing me afterward. You’re welcome.

The first night we did this, Tim complained about women always using the facilities. I’d never paid any attention. But that triggered another part of the ritual. Being five-nine and about 140 pounds, I don’t have a whole lot of room to put 64 ounces of anything, especially when those 64 ounces are consumed within about a two-and-a-half-hour time frame. So, when I stood up about 45 minutes into the first movie to go recycle, Tom yelled, “Dave’s a woman.” When I came back, Tim got up. Tom yelled, “Tim’s a woman.” Without looking back, Tim made a one-finger gesture at Tom over his shoulder and kept walking. Tom enjoys inciting those.

We’ve seen every Peter Sellers movie available on VHS and we’ve tried every flavor at QT, so we don’t do this all that much anymore.

I bring this up because earlier this week, I received a flyer from Skillpath Seminars. The title of the seminar: Conflict Management and Resolution for Women. The guy who delivers the mail personally walked over to my cube and handed it to me with a smirk. Since I get about four brochures a day for various seminars, I normally put them in my round file without even looking at them, but I glanced at this.

“Dwayne got one too. We had a good time sorting the mail this morning,” he said.

Yep. Either someone told Skillpath about our little ritual, or some procedure was performed this past week that I’m going to be very unhappy about when I find out about it.

Microsoft lives to see another day

Microsoft lives to see another day. I’m of two minds on the Microsoft breakup. As a good little Republican, I believe in free enterprise and history demonstrates again and again that the best way to kill something is to regulate it. Government is reasonably good at protecting us from thugs, when it wants to be, and it’s best at protecting us from thugs when it’s not meddling in things it’s not good at doing.
However, there is absolutely no doubt in my mind that Microsoft is a thug.

Microsoft rightfully recognized OS/2 as a threat to its empire and wanted to get it gone, quickly, before the public realized that Windows 3.1 was just a pile of unstable crap not worthy of being called beta software and started buying something that didn’t crash three times a day. Knowing that IBM is a big, slow company whose various divisions usually don’t even realize they’re part of the same behemoth, Microsoft attacked. As Windows 95’s release date grew nearer, Microsoft knew IBM’s PC division would want to sell Windows 95 pre-installed on their PCs, since no company wanted the distinction of being the only company that couldn’t sell you a Windows 95 PC. Microsoft told IBM that if they wanted to bundle Win95 with their PCs and continue to sell OS/2, well, then, they could just go buy their Windows 95 licences at retail.

Finally, IBM negotiated a compromise. They got their Win95 licenses, but at the price of not being able to market their vastly superior alternative anymore.

Microsoft saw a little company called Netscape as a threat, because its cofounder, a young, hotheaded programmer fresh out of college by the name of Marc Andreesen, publicly stated his ambitions to make his Web browser more important than the operating system it ran on. That’s a lofty goal. Strong talk. But what 23-year-old college graduate doesn’t walk across the stage thinking he or she can conquer the world? Bill Gates wouldn’t understand that feeling, seeing as he never managed to get a degree, but anyone else with the self-discipline to play the game for four years does. And when you’re Marc Andreesen, who managed to write both popular Web browsers, one of them while you’re still in college, you have more than a feeling you can change the world. You already know it. You have evidence! So of course you talk big.

Andreesen paid a tall price for thinking big and talking big. Microsoft went to NCSA and licensed the other Web browser Andreesen wrote, slapped its logo on it, and called it Internet Explorer. Initially they sold it as part of the Plus pack, but since Netscape was a far better browser, Microsoft wisely decided to compete on price. They improved it and started giving it away. Back when the Japanese started selling minivans at below cost, it was called dumping. But laws that apply to everything else don’t apply to computer software, because lawmakers and judges are morons who have no understanding of technology, and Gates, being the son of a lawyer, knew it. So Microsoft got away with it. Netscape, unable to compete, died a very slow, painful death.

But consumers are so much better off now, aren’t they? Rather than pay for a Web browser that sometimes crashes (or, as usually was the case, getting it for free when they sign up with an ISP who bought a bunch of Netscape licenses in bulk), they get a browser/operating system combo that crashes a lot and often takes the whole system down with it.

Now, somehow, a tiny company in Seattle that specializes in streaming audio is a threat to Microsoft’s OS monopoly. I guess when people are listening to underground radio stations using a piece of software that doesn’t display Microsoft’s Windows logo, they’re not thinking wonderful and lovely thoughts about Microsoft and therefore they’re a threat. So Microsoft makes streaming audio part of the OS and foists it on people, even if they don’t have a sound card. Listening to MP3s is an essential, inseperable function of the operating system, after all.

Now, RealAudio makes my life pure hell sometimes and I’d love to see the company roll over and die. But just because they had a good idea and a poor implementation and ambition to grow doesn’t give Microsoft the right to kill them just because they have a product the marketplace likes and some day might use that revenue to become bigger competition than they are now. The logical conclusion of that logic is for Microsoft to send out hit men to take out any programmer who dares work for somebody other than Microsoft or a company like Symantec or Adobe that Microsoft can wrap around its little finger.

And yes, Justice Penfield Jackson is a moron with a big mouth. He was understandably livid at Microsoft for its courtroom antics and doublespeak. However, rather than opening his mouth, ordering their breakup, then opening his mouth some more, he should have just held them in contempt of court. They fabricated evidence when they shot the video that attempted to prove that Edward Felten’s program didn’t work. Jackson caught them. The solution isn’t to extract revenge by opening your mouth outside the courtroom. That’s just stooping to Microsoft’s level. Holding them in contempt and saying why would have been more than enough.

But it’s increasingly looking like none of this matters, for once. Microsoft’s back to its old tricks, bundling more and more stuff that people may or may not want into their operating system, and now they’re doing more than just bullying their competitors. They’re bullying their customers as well. Not many companies will appreciate Microsoft forcing them to spend thousands of dollars to prove they’ve never ever installed a copy of Windows twice. The companies that are guilty, of course, have no leg to stand on. But a lot of companies end up paying for Windows twice. A copy of Windows comes with every PC they buy, but as part of a volume agreement with Microsoft, they end up buying, for whatever reason, an additional copy of Windows for every PC on their network. But now that Microsoft is flailing around for revenue, you’re guilty until proven innocent. If you own one PC and Microsoft knows about it, then it’s entirely possible you own two PCs and you loaded your copy of Windows on it too.

Some of the audited companies are understandably upset and suddenly looking for alternatives, where they were formerly in Microsoft’s camp 100%.

And, of course, Microsoft’s attempts to force people into upgrading, even when Windows 95 and Office 95 are perfectly suited to many tasks, will alienate some. Microsoft’s oft-misunderstood .Net initiative has infuriated people that I never expected to leave the Microsoft camp. Some buy right into it, but some always do. Meanwhile, Linux and its associated software marches on, getting better every day. Ironically, a similar tactic that Microsoft used to murder Netscape in cold blood–giving the software away for free–now threatens the cash cow of NT/2000 server. Servers are enormously profitable–you just take your desktop OS, call it a server, charge five times as much for it, and then charge a few bucks per seat for the privelige of connecting to it. The real cost of a Windows NT/2000 server usually runs five figures. And most companies have several servers. Linux, meanwhile, is low-cost (free if you want), more stable, and more versatile.

Since Microsoft’s current business model requires not just profits, but sustained exponential growth, Linux’s attacks on the server front may allow justice to finally be administered, no matter how incompetent the U.S. Government’s Keystone Kops turn out to be.

One can only hope.

Failures (of the modern man).

I love Joy Division references. For those of you reading this on the front page who can’t see the title (I’m sure I can fix that but I’m lazy and it’s late), I titled this “Failures (of the modern man),” which was the title of an early Joy Division song. I don’t remember what it was about. It was just a really cool title.
I saw another ghost today. Not literally. A ghost from the past. Someone I knew a long time ago, someone I hadn’t seen in eight years. I know I looked vaguely familiar to him because we made eye contact and he gave me the I-know-you-from-somewhere-but-I-don’t-know-where-so-I-won’t-say-anything look. I gave him the very similar I’m-pretty-sure-I-know-who-you-are-but-I’m-not-saying-anything-just-in-case-I’m-wrong look.

I met him in 1991. I’d just turned 16 and this was my first job, at a place called Rax, a now-defunct fast-food joint whose specialty was roast beef sandwiches. I was ambitious and worked hard. I had several reasons for working: It was something to do. I liked having date and weekend money. (Not that I got many dates–so it was mostly weekend money.) It was another place to meet people outside of school.

A lot of people looked down on me because I was working in a restaurant, and a fast-food restaurant at that, and it made me mad sometimes. I got the job easy and I didn’t want to make a lateral move, so it made sense to stay there. At that point in time, it was virtually impossible for a 16-year-old male to get a job outside of food service because until you turn 18, you can’t be prosecuted if you steal stuff. At a fast-food joint you can steal little stuff but they can fire you for doing it, and that’s usually enough deterrent. And I was ambitious. This was my job until I turned 18 and could get something else. Then when I turned 18 it was hard to get something else because not many places were hiring in 1992. We were in a recession. So I stayed until I left for college. No shame in any of that. I worked hard, I did the job well, I was good at it, and I did move up. My next job was in retail, hawking consumer electronics for two summers and two Thanksgiving and Christmas breaks. My next job after that was as a part-time computer tech, which grew into a full-time network administrator job.

I’ve been a young professional for just over four years now, and I can look back over the four years, see good reviews, a lot of work accomplished, and a steadily increasing salary, presumably a reflection of how my employers have valued my work. My car’s a 2000, I wear a tie most days, and I command respect. I guess I turned out OK.

Back to this guy I saw yesterday. He worked part-time. He was the guy who walked around the mess hall “dining room” and cleaned off the tables. He swept the carpet. He washed the trays. He got people refills. He was a good guy, a nice guy, personable. He didn’t strike me as dumb either. I remember him being reasonably articulate. He’s not of old European stock; he’s at most a second-generation American and more likely he’s an immigrant, but he had a very light accent.

I don’t know how well respected he was. One night I came in, and the general manager asked me to fill out the night’s lineup. The positions were usually pretty obvious. You had to be 18 to run the slicer, so you’d put the 18-year-old there. One of the people working until close took the salad bar, and the other closer took the drive-thru. Of the two people left, one took the dining room and one took the front register. Most of us had our specialties. I was good on the register, fast at making change, so I was usually on the drive-thru or up front. So I filled out the lineup, handed it to her, and asked if it was OK.

“No, put [this guy] on front cash,” she said, then laughed. “No, it’s great. Post it.”

I don’t know when I last saw him. The store closed in 1993. I left a little before that to go to college, but I remember the store’s last day. I don’t know if I came in just to say goodbye, or if I came in that day to get my last paycheck. I know I didn’t see him that day. The store fell on tough times near the end, because the company was struggling big-time, and just about all of us knew it. More often than not, we went without someone in the dining room. The salad bar person or the front cashier would pop out there and clean up the dining room when things were slow, which was often. He probably didn’t make more than $4.50 an hour, but if the store could save 9 bucks by not having him there from 5-7, the pressure was there for them to do it. He may well have sought employment elsewhere long before the store closed.

I saw him today. I was bad today. I rarely eat fast food anymore, because it’s terribly unhealthy, but today I had a Jack in the Box craving, so I went there. And there, working the dining room, was a dead ringer for the guy I was talking about. This guy had a beard, and he looked older, but it’s been 8 years, so of course he looks older. The name on his badge was a diminuitive form of the name he used when I met him, and it’s not a terribly common name. If I were a betting man, I’d eagerly wager a hundred bucks it’s the same guy.

And I felt bad. I’m 26 now. I said something derogatory about yuppies a couple of weeks ago, and one of my coworkers said, “But you are one.” And I guess he’s right. I wear a tie. I drive a 2000. I can afford a ritzy apartment. (I prefer to bank the money instead.) I’ve done OK.

And here’s a former coworker, in all likelihood in his 60s now, still doing the very same job he was doing when I met him more than 10 years ago. I confess I don’t know what minimum wage is these days because it’s been eight years since minimum wage affected how much money I made. And I never made minimum. My starting pay was $4.50 an hour, when minimum was $4.35.

While all fast-food jobs, outside of management, are considered unskilled labor, cashiers are generally paid better than the people who clean dining rooms. I doubt he made much more than minimum 10 years ago, and I doubt he makes much more than minimum now. Meanwhile, the only way minimum wage affects me is by raising the price of things like soft drinks and milkshakes.

And I’m wondering, where did it go wrong? Maybe he likes working fast food. I don’t know. But he didn’t look particularly happy, so I doubt it.

You can learn a lot in 10 years. I’ve been slacking. I wanted to know Unix by now. I also wanted to be able to read Greek and Hebrew by now. I can build and administer simple Linux servers now, but the only non-English language I know is Spanish, and I sure don’t know much of that. I can find the bathroom and I can ask for three of my favorite foods, I know a good way to get funny looks is to say, “Llavo mis manos con sopa de pollo,” and when one of my coworkers curses in Spanish, I know she’s cursing but I usually don’t know what she’s saying.

But I have learned a lot.

Why hasn’t he? Where were his opportunities? Did he choose not to better himself, or has the door been slammed in his face? I know it’s not the government’s responsibility to see to it he betters himself, or necessarily even to give him opportunities, but isn’t it his neighbors’ responsibility? What have they been doing? What should they be doing? What should I be doing?

Those are tough questions I don’t have an answer for.

Fare thee well, Alpha…

Fare thee well, Alpha, if Intel will allow it… I’m not holding my breath. The greatest CPU of all time, by a long shot, looks to be no more. Compaq pulled the plug on Alpha, essentially selling it out to Intel. Another case of far superior technology dying because its owner had no idea what to do with it.
But Intel, with its terminal case of NIH syndrome, isn’t about to let some other company’s technology thrive if history is any indicator.

One story in The Register likened replacing Alpha with Intel’s Itanium as replacing a Ferrari with a Yugo.

In my ill-fated Integrating Linux Servers with Windows Networks, I stated that we’ll miss NT on Alpha, and I presented Linux as a way to preserve a shop’s investment in Alpha-based servers. Indeed, an Alpha running Linux ought to be useful for many, many years, with or without Compaq’s blessing.

I guess I should be happy to see that IBM isn’t the only company that comes up with great ideas and great technology and then has no idea what to do with it. But I’m not. I hate seeing good engineering go to waste, especially when the beneficiaries of that waste are perpetual underachievers like Microsoft and Intel.

What can I say about Tuesday…?

Photography. Tom sent me links to the pictures he took on the roof of Gentry’s Landing a couple of weeks ago. He’s got a shot of downtown, the dome, and the warehouse district, flanked by I-70 on the west and the Mississippi River on the east.
I’m tired. I spent yesterday fighting Mac OS X for a couple of hours. It still feels like beta software. I installed it on a new dual-processor G4/533 with 384 MB RAM, and it took four installation attempts to get one that worked right. Two attempts just flat-out failed, and the installation said so. A third attempt appeared successful, but it felt like Windows 95 on a 16-MHz 386SX with 4 megs of RAM. We’re talking a boot time measured in minutes here. The final attempt was successful and it booted in a reasonable time frame–not as fast as Windows 2000 on similar hardware and nowhere near the 22 seconds I can make Win9x boot in, but faster, I think, than OS 9.1 would boot on the same hardware–and the software ran, but it was sluggish. All the eye candy certainly wasn’t helping. Scrolling around was really fast, but window-resizing was really clunky, and the zooming windows and the menus that literally did drop down from somewhere really got on my nerves.

All told, I’m pretty sure my dual Celeron-500 running Linux would feel faster. Well, I know it’d be faster because I’d put a minimalist GUI on it and I’d run a lot of text apps. But I suspect even if I used a hog of a user interface like Enlightenment, it would still fare reasonably well in comparison.

I will grant that the onscreen display is gorgeous. I’m not talking the eye candy and transparency effects, I’m talking the fonts. They’re all exceptionally crisp, like you’d expect on paper. Windows, even with font smoothing, can’t match it. I haven’t seen Linux with font smoothing. But Linux’s font handling up until recently was hideous.

It’s promising, but definitely not ready for prime time. There are few enough native apps for it that it probably doesn’t matter much anyway.

Admittedly, I had low expectations. About a year ago, someone said something to me about OS X, half in jest, and I muttered back, “If anyone can ruin Unix, it’s Apple.” Well, “ruin” is an awfully harsh word, because it does work, but I suspect a lot of people won’t have the patience to stick with it long enough to get it working, and they may not be willing to take the extreme measures I ultimately took, which was to completely reformat the drive to give it a totally clean slate to work from.

OS X may prove yet to be worth the wait, but anyone who thinks the long wait is over is smoking crack.

Frankly, I don’t know why they didn’t just compile NeXTStep on PowerPC, slap in a Mac OS classic emulation layer, leave the user interface alone (what they have now is an odd hybrid of the NeXT and Mac interfaces that just feels really weird, even to someone like me who’s spent a fair amount of time using both), and release it three years ago.

But there are a lot of things I don’t know.

I spent the rest of the day fighting Linux boot disks. I wanted the Linux equivalent of a DOS boot disk with Ghost on it. Creating one from scratch proved almost impossible for me, so I opted instead to modify an existing one. The disks provided at partimage.org were adequate except they lacked sfdisk for dumping and recreating partition tables. (See Friday if you don’t have the foggiest idea what I’m talking about right about now, funk soul brother.) I dumped the root filesystem to the HD by booting off the two-disk set, mounting the hard drive (mount -t ext2 /dev/hda1 /mnt) and copying each directory (cp -a [directory name] [destination]). Then I made modifications. But nothing would fit, until I discovered the -a switch. The vanilla cp command had been expanding out all the symlinks, bloating the filesystem to a wretched 10 megs. It should have been closer to 4 uncompressed, 1.4 megs compressed. Finally I got what I needed in there and copied it to a ramdisk in preparation for dumping it to a floppy. (You’ve gotta compress it first and make sure it’ll fit.) I think the command was dd if=/dev/ram0 bs=1k | gzip -v9 > [temporary file]. The size was 1.41 MB. Excellent. Dump it to floppy: dd if=[same temporary file from before] of=/dev/fd0 bs=1k

And that’s why my mind feels fried right now. Hours of keeping weird commands like that straight will do it to you. I understand the principles, but the important thing is getting the specifics right.