A flair for the dramatic

Writing about baseball two days in a row? Hey, it’s my site.
We played a doubleheader last night and won both games. I caught the first game; the second game the manager shooed me over to first base. I haven’t played first since one inning in high school, which was a disaster. I last played semi-regularly when I was 12, and that was mostly as a joke. I could make the catches but I was just over five feet tall so I sure couldn’t stretch to get the ball a split second sooner.

I did decent; I made 3, maybe four putouts. There were two bad throws, one I would have nabbed if I’d been six feet tall; the other I got the glove on but really awkwardly and I couldn’t keep control of it. I was pretty mad about that one. I’m a whole lot more comfortable in right or left field these days.

Enough about my reliving the glory days I never had. What about that All-Star game? Ripken has a great flair for the dramatic. First, A-Rod, elected to play short, shooed Ripken over to his old position and moved to third. And Ripken homered in his first at-bat.

That’s the story of Ripken’s career. Ripken had no business playing short at age 40. Ripken really had no business starting the game. But Ripken spent 14 years doing what he had no business doing. He was always too big and too immobile to play short, but he played it and played it well. Shortstops have no business playing uninterrupted for 14 years. Ripken did that.

And really, that’s what defines an All-Star. Yes, the numbers are a big, big part of it, but Ripken’s a star, whether he’s hitting .320 or .220, and Ripken’s a sure-fire first-ballot Hall of Famer whether he hits his way into winning his old job back (Ripken’s not even a regular on his own team anymore) or whether he goes hitless for the rest of the season.

And Commissioner Bud Selig made a total ass of himself, not knowing the difference between home runs and RBIs when talking about Cal Ripken’s achievements, and mispronouncing Honus Wagner’s name when talking about Tony Gwynn one-upping his impressive career batting stats.

It was tonight’s All-Star game that reminded me of what makes baseball such a great game. Baseball is full of great moments like that–great players, sometimes running on fumes, coming back and showing us one last time what made them great in the first place.

So what’s wrong with baseball? I honestly think baseball needs another Lyman Bostock. Lyman Bostock wasn’t a great player. He didn’t have time to become one, because he only played four seasons. But after making runs for the AL batting title in 1976 and 1977, Bostock signed with the California Angels, becaming one of the first of the high-priced free agents, and he immediately fell into a slump. He didn’t even hit his weight his first month, so he went to the owner of the team and tried to give back his salary, saying he hadn’t earned it. When the owner turned it down, he announced he was giving the money to charity instead. Thousands of requests came in, and Bostock went through them himself, wanting to determine who needed the money the most. Tragically, Bostock was shot and killed in Gary, Indiana, near the end of that season. He worked his tail off trying to get his batting average up over .300 by the end of the year. He was batting .296 when he died.

We’ve had tons of great stories since 1978. Ripken, of course. McGwire and Sosa’s friendly rivalry as they chased Roger Maris’ home run record. Orel Hershiser’s 59 consecutive scoreless innings. The emergence of Pedro Martinez and Greg Maddux when it appeared the era of truly, truly great pitchers was over.

But without another Lyman Bostock, they just look like a billionaire boys’ club. Emphasis on “boys.”

Baseball Mogul 2002 offers a glimpse of the future…

I have seen the future, and it crashes a lot. I’ve been playing Baseball Mogul 2002 like a fiend, and I love it. I love statistical baseball and I love financial simulations, so for people like me, this game might as well be heroin.
My big annoyance is that it crashes a lot. It seems to get through the first season just fine, but I haven’t gotten through a second season yet without a crash. That’s annoying. Playing games in a month’s batches seems to make it worse. I suggest you play week by week, saving at the end of each week.

I started off with the Kansas City Royals, of course, and pretty soon I realized what dire straits the team is in if the game doesn’t change. Without a bunch of trades for can’t-miss prospects, it’s virtually impossible to lift the team over the .500 mark, and with free spenders like Cleveland and Chicago in the division, third place is about as well as you’ll do. An out-of-this-world manager like the late (and very sorely missed) Dick Howser could probably improve matters a ton, but Baseball Mogul’s manegerial model is a bit clunky. You can change how your manager manages, but it’s with a bunch of sliders. There’s no way to model, say, a Dick Howser based on the tendencies he used in the dugout and save it. That’s a feature Earl Weaver baseball had way back in the early ’90s and I can’t believe modern sims don’t copy it.

After two seasons with the Royals, I got frustrated. I needed something easier, but not necessarily too easy. So I took on the Curse of the Bambino and took the helm of the Boston Red Sox. The Red Sox haven’t won a World Series since they sold Babe Ruth to the New York Yankees in 1920 for an astronomical $100,000. (Ruth was already a superstar and guided the Bosox to three World Championships, but with him gone, the Sox have been heartbreakers ever since, appearing in four Series and losing each in Game 7. The Yankees have just been scum.)

But how to take on the high-revenue, free-spending Yankees? The Bosox were a challenge unto themselves. Nomar Garciaparra, the greatest shortstop alive today, was injured at the beginning of the 2001 season, of course. MVP candidate Manny Ramirez’ presence in the lineup helped soften it, but I had a cripple playing first base (Brian Daubach was nowhere to be found, not that he has enough punch to really justify holding down that position). So I traded for Toronto’s Brad Fullmer, to get some protection for Ramirez. And Boston limped its way to the playoffs. It wasn’t exactly pretty. The Boston bats racked up tons of runs. Pedro Martinez was masterful, of course, but behind him I had four No. 4 starters: Frank Castillo, Bret Saberhagen (I was glad to see him come off the shelf, but he was the epitome of clutch pitcher, one of those guys who’d give up 9 runs if you didn’t have to win, but when the pennant was on the line, he’d pitch a shutout), David Cone (another ex-Royal, dumped unceremoniously for salary years ago, like Sabes), and Hideo Nomo. Fortunately the Bosox had a solid bullpen. We beat Cleveland in the first round of the playoffs, in five. Pedro had to pitch twice. Sabes won the other game. Of course we faced the Yankees in the ALCS. Boston won in 6, again behind Pedro and Sabes. It would have been poetic justice to have Cone face them in the series and win, but I had to go by the numbers rather than entirely by emotions. That brought us to Larry Walker’s and Mike Hampton’s Colorado for the World Series. Pedro won Game 1. Sabes won Game 2, of course. Castillo lost Game 3. Pedro pitched Game 4 on short rest and lost. I didn’t want to pitch 37-year-old Sabes on such short rest, so I pitched Cone instead. He lost. Sabes came back for Game 6 and won. A shutout, of course. Pedro came back strong and won Game 7.

The curse was lifted. Pedro, with a 19-6 regular season record and a 5-1 record in the postseason, took home the Cy Young award and an All-Star appearance. Manny Ramirez also brought in an All-Star appearance, but most importantly, the team brought in the World Championship.

The 2002 season was where things went nuts. The big-market teams started looking like Rotisserie Leagues thanks to free agency. I went and grabbed Anaheim’s Troy Glaus to play third base and Cleveland’s Kenny Lofton to play left field and bat leadoff. Then I grabbed Minnesota’s Eric Milton to give Pedro a legitimate #2 starter behind him. A couple of weeks into the season I noticed Houston’s Billy Wagner was still unsigned, so I nabbed him to give closer Derek Lowe some help in the bullpen. We rolled through to a 109-53 record, obliterating Oakland and New York in the playoffs. This time there wasn’t even any danger of Pedro’s arm falling off. (He went 27-1 in the regular season with a sparkling 1.53 ERA.)

Then I ran into the free-spending Braves. The Braves’ pitching staff was mostly unchanged from the real 2001 roster. (It was already an All-Star team.) But the lineup… Rafael Furcal, ss. Andruw Jones, cf. Chipper Jones, 3b. Barry Bonds, lf. Sammy Sosa, rf. Tony Clark, 1b. Quilvio Veras, 2b. Paul Bako, c. With the exception of the bottom three, they had arguably the best player in the league at each position. (The other three would be the second- or third-best player on a lot of teams.) Oh yeah. They also had superstar Moises Alou riding the bench. I took a look at Atlanta’s finances. Yep, they were bankrupting the team, deficit spending in hopes of pulling in a World Series. It came down to Game 7, Greg Maddux vs. Pedro Martinez, a showdown of the two greatest pitchers playing today (and arguably the two greatest pitchers alive). Maddux beat Martinez 2-1 in a heartbreaker. (Hey, you try shutting out that lineup!)

After facing that, I felt a little less guilty about running a Rotisserie-style team out of Boston. I’d passed on signing Kerry Wood as a free agent the season before for just that reason. No longer. Atlanta, unable to afford Maddux and Glavine for the next season, let both of them walk. I signed Maddux to a four-year deal, which pretty much guaranteed he’d get his 300th win in a Boston uniform. And between the two of them, I could pretty much count on getting at least three wins in a 7-game postseason. Throw in another clutch performance by Sabes (re-signed for purely emotional reasons–I was either going to get Sabes another World Series ring to go with the one he got with the Royals in ’85 and my fictional Bosox in 2001 or I was going to ship both Sabes and Cone back home to Kansas City, to finish their careers where they both belonged all along. But Cone retired so I opted to go for another ring.) and I’m pretty sure I’d be able to lift the Curse of the Bambino again.

The game even fabricates newspaper accounts of the season’s big games. The picture is almost always the same, and you can usually tell the story was computer-generated rather than written by an intelligent human being, but it adds an element of drama to it.

I also noticed the injury model is fairly realistic. Keeping Pedro Martinez healthy for a full season is virtually impossible, both in this game and in real life. But there are players who will tough themselves through their injuries. Mike Sweeney suffers about one serious injury per year, an injury that would knock most players out of action for a couple of weeks, maybe a month. In Baseball Mogul, Sweeney sits. In real life, Sween tapes himself up and keeps going until he either gets better or the injury hampers his play so severely that even he realizes the Royals are better off with his backup playing. That doesn’t happen often.

The other glaring drawback is that you can’t watch the games. I’d love to watch the All-Star game and at least the World Series.

So. We’ve got a baseball simulation that crashes a lot, doesn’t let you watch the key games (or any of them, for that matter), where injuries are all or nothing, and the managerial model is more crude than I’d like.

Those are serious shortcomings. But the rest of the game is so fabulous that I can mostly overlook them.

Now, the question is, who pitches Opening Day 2003? Martinez or Maddux?

Setting up Freesco for port forwarding

It’s a little late, but here’s how Gatermann and I got a Web server running behind a Freesco-based router. Freesco, despite the name, is a micro-distribution of Linux (based on the 2.0.x kernel) that offers firewalling, NAT, caching DNS, port forwarding, a lightweight Web server, and print services on a single floppy. Requirements are minimal; it’d run on a 386 with 8 megs of RAM, a floppy drive, and a pair of NE2000 NICs. For performance and ease of setup, I recommend a P75 (or faster, but a P75’s overkill; the main reason to use it is to get PCI) with a pair of PCI NICs and 8 megs.
What NICs do I recommend? Avoid the new Netgear FA311. The older FA310 worked fabulously, but Freesco doesn’t provide a module for the FA311’s NatSemi chipset, at least not yet. (The source code for a module is available at scyld.com and it’s compatible with the 2.0.x kernel, but compiling a kernel module isn’t a trivial operation for most of Freesco’s audience.) I’d probably go with a Realtek 8139-based card like a D-Link DFE-530TX+, a recent 3Com PCI card, or a PCI NE2000 clone. There’s a modules archive you can download that supports most other common NICs. A pair of D-Links, a P75 board, a floppy and this disk ought to give you nearly plug-and-play operation.

Enough of that. Here are the answers to the questions Freesco asked, in order.

Boot off the floppy. When it asks what you want to make with it, select ethernet router. Hostname doesn’t matter. Accept default for domain name, unless you’ve registered a domain for your LAN.

Don’t detect modems. Select two network cards. If you are using PCI cards, answer 0 to next four questions (IRQ, I/O). If you’re using ISA cards, enter the addresses and IRQs the cards use. DHCP? Depends on your ISP.

The first card’s name is eth0. (This is the card for your cable/dsl modem). Don’t use dhcp logging. Don’t update DNS by DHCP. Second card is eth1. Give it an IP address (10.x.x.x is fine, which is Freesco’s default; normally I use 192.168.1.x network and put my router on 192.168.1.1). Network mask will almost always be 255.255.255.0. I don’t configure for DHCP, so I don’t give it an IP range. if you want one, tell it the range of addresses you want to reserve. The fewer the better, for memory purposes, especially if you’ve only got 8 MB of RAM in the box.

Caching DNS? Answer S (secure). Don’t log.

Enable DHCP? Depends. If you don’t want to configure your LAN manually, DHCP is nice. If your LAN is already configured, DHCP is probably more trouble than it’s worth.

Public HTTP server. Answer Y. Default is S. Port 80. (You might be able to get away with answering N here, and you’ll save a little memory. DO NOT answer S–you’ll never forward port 80 if you do.)

Time server via HTTP? No.

Print server. No.

Telnet server. no.

Screensaver/spindown? 5 min is fine.

Swap file–0 if you have 8 mb or more. I suppose you could run Freesco on some tiny machines if you put in a small hard drive and enabled the swap file, but as cheap as a P75 with a pair of 4-meg SIMMs is these days, I wouldn’t bother.

Extra modules/programs? No.

Log: take defaults.

Host gateway–depends on ISP. Check one of your other PCs and use it.

Primary/secondary DNS. Use your ISP’s. Proxy, probably none. Check your ISP.

Export services? YES. This is the magic forwarding formula.

Now, assuming your web server is on 10.42.42.3, you’d use this line in config:

t,80,10.42.42.3/80

If you want to export other services, like, say, IMAP on port 143, add additional lines, subbing in the appropriate port and IP address. (HTTP is port 80.)

Pick a root password and web admin password, save configuration and reboot. You’re up and going.

Now, to configure your Windows boxes to get their Internet connection through your lovely what-was-old-is-new-again Freesco router, just open your TCP/IP settings, give it an IP address on the same subnet as your Freesco router if it doesn’t already have one, and set your gateway and DNS to the address you gave your Freesco router.

Voila. Configure your system’s BIOS for keyboardless operation if it has such an option, then take the keyboard and monitor away, write-protect the floppy and make a backup of it just in case (or burn it to a bootable CD if the machine is capable of booting off CD and you have an old drive to put in it) stick the box in a corner somewhere, and forget about it. If you have a power failure, it’ll reboot and happily start itself up again. As for stability, I find Freesco, in combination with decent hardware, is more stable than the hardware routers that are popular these days. Since it has a caching DNS, it’ll usually give you better performance too. And since you can probably build one with parts you have laying around, it’s cheaper.

Who is GenX?

Bible Study last night. My buddy Sean and I led the discussion, using “Too much [whatever], not enough God” as our topic. We prepared like mad dogs–I’ll bet we each put more than five hours into preparation for this thing–and yet I still looked every bit as disorganized as I do when I prepare an hour beforehand. So it goes. I think when I speak in front of a group I’m always going to look a bit disorganized and a bit eccentric and it’s probably just part of me. People seem to like it anyway. One of our regulars brought a couple of friends, and one of the friends came up to me afterwards and asked if I was on the radio, because I seemed to have the voice and charisma for it. That was odd. I’ve never been complimented on my voice before. And the charisma is easily explained. There wasn’t anyone there tonight I was trying to impress. (Which ought to teach me something, but I’m digressing.)
At one point, the subject of Generation X came up. I think it was because the other friend (the one who didn’t compliment me on my voice) talked about how he never plans anything in advance. It just happens and that’s how he likes it. Of course I’m exactly the same way–Sean and I made up two thirds of the sadly defunct Bastions of Decisiveness, and believe me, it was a sarcastic nickname–and one of the girls piped up, “You…. I know you! You’re a GenXer! I read a book about you!” Of course she was laughing as she said it.

And that’s a hot topic for me. Churches fret over how to reach GenX and what they have to do differently. As far as I can tell, churches didn’t operate too differently when I was young from how they operated when my parents were young. And there was a point in their lives when they didn’t have much to do with any church. But they came back, as much for the sake of my sister and me as anything else. They may not have always liked the church, but they trusted the institution for whatever reason.

Now we GenXers are growing up and having kids of our own. Some of us are coming back. Most of us aren’t. And on average, we’re waiting longer to have kids, so there are buckets of us out there who have nothing to do with a church and don’t really care to. Meanwhile, churches’ ranks are dwindling as their members age, and our generation is a large, mostly untapped resource.

What gives? I think one of my ex-girlfriends put it very well. We were talking about gifts and abilities, and I told her sincerity was all I’ve got. She rolled her eyes, as she often did with me, and said, “Sincerity is everything.” I’ve forgotten a lot of things she said to me, but I’ll probably carry that to my grave. In fact, I was talking to someone else a couple of weeks ago and I said that sincerity is usually more important than good intentions.

What else about GenX? I don’t think we like hypocrisy all that much. Bill Clinton didn’t alienate my generation at all. He was as old as some of our parents, but as a demographic group, we dug him. You can say a lot of things about Bill Clinton, and I certainly have because I can’t stand the sorry excuse for a man, but you can’t say he was a hypocrite. But our generation has great disdain for people like Jimmy Swaggart, who said not to do one thing and then did it.

I think the biggest difference between GenX and the previous generation is that the previous generation accepted that hypocrisy exists and you can’t get away from it, and that sincerity is nice but you won’t always find it. GenX isn’t tolerant of that. If you’re insincere, talk to the hand. If you’re a hypocrite, don’t let the door hit your backside on the way out.

And, yes, I’ll say it. It’s easier to find insincerity and hypocrisy in a church than almost anywhere else.

So… I help organize this group of GenXers who meet on Friday nights to read the Bible, of all things. That’s prime party time. But, consistently, 15-20 people come. Most churches don’t have 15-20 GenXers in the sanctuary on Sundays. What’s the secret?

Here’s the secret. There’s no bull with me. I am what I am. At one point tonight it looked like I got choked up and someone commented, asked if I needed Kleenex. Actually I wasn’t choked up. I just lost my place. But I don’t try to hide anything. I’ve got an expressive face, so I’m easy to read. They’ve never seen me get choked up at the beginning like that, but it wouldn’t be out of character. You want sincerity? I’ve got it and so do the other people who lead.

As for hypocrisy, we’ve all been around the block, some of us more times than others, but we don’t try to hide it. And when I say, “Here’s how to overcome this problem,” I’m generally not talking from experience. When I talk about the problem itself, I usually am. But I look to see what God says about solving a particular problem, because when it comes to life’s problems, I sure haven’t solved very many, and I’m not afraid to talk about those failures. Neither are the others who lead.

OK. So we’ve taken care of the sincerity and hypocrisy. That’s not enough to bring people back. What is?

I think it was Mark Twain who said God gave us two ears and one mouth for a reason. We listen. At least I listen. I listen to the questions people ask and the prayer requests they give. You can tell what’s bothering a person based on those things. And what’s bothering one person is usually bothering more than one. You can tell that from looking at those things. If you see a pattern, you go for it. Go find what God has to say about it. The Bible’s not a short book. Name any life experience, and chances are the Bible’s got something to say about it.

No one ever comes and feels like they wasted their time. Sometimes they have other reasons for not coming back, but that’s never it. We have deep and challenging discussions. But they’re not academic. It’s stuff that we’ll spend the next couple of weeks applying to our lives.

So here’s the secret formula. Check hypocrisy and insincerity at the door. Listen. Care. Then go where that leads. Interestingly enough, it usually leads to relevance.

So much for me ever writing a book about ministering to my lost generation–it’s not a subject long and complex enough to be worthy of a book. But if the sales of my last book are any indication, that’s probably just as well.

Two vendors you can count on

Vendors. I’ve been trying to get out of the build-PCs-for-friends business and for the most part I’ve succeeded. My reasons for getting out are twofold: time and support. It takes some time to spec and build one, and if something goes wrong, I’ve got some responsibility for it. It’s something I don’t understand, because the systems I’ve built for myself have been reliable (I had a system appear dead that turned out just to be a corrupt MBR–I can live with that now that I know how to fix it, and it wasn’t the hardware’s fault) but the last two PCs I’ve built for friends have been horrendous.
One of those up and died last week, so we ordered replacement parts. I didn’t get around to placing the order until after close of business Friday, so the orders didn’t get processed until Monday.

I ordered a Gigabyte 7IX-E4 motherboard from Newegg.com. Newegg rakes you over the coals on shipping sometimes, but sometimes they run specials, and this board’s shipping was 5 bucks. Often they’ll charge 10 bucks to ship a CPU, which is ridiculous. Five bucks to ship a motherboard isn’t bad. And their pricing is first-rate–they’re obviously making their profit margins on shipping. But I’ll forgive Newegg’s shipping prices because the package arrived yesterday, even with the holiday Wednesday.

So, if you’re in the market for a motherboard, CPU, video card or hard drive, those guys are worth a first look. Figure out what you want, check the shipping, then check elsewhere and see if they still beat it. I’ll be doing business with them again.

I ordered the CPU, case, and fan (along with another case and video card for me) from Directron.com. Directron’s shipping prices are about as good as you’ll find, and the order is promised today. When Steve DeLassus ordered a batch of stuff from them it arrived promptly, so I trust them. Directron’s pricing is a bit spotty, but their shipping often makes up for it (they wanted $10 more for the CPU, but after shipping they ended up being cheaper than anywhere else I looked) and they’ve got the best case selection I’ve ever seen. Shipping for two cases, a video card, a CPU and CPU fan ended up being about $20, which isn’t bad at all.

Switchboxes. Gatermann’s Linksys KVM switchbox was a disappointment, but I thought to have him try connecting the extension cable directly to his monitor cable to see what that did to the image. I had a hunch that the problem might be the cabling, because I remembered yesterday morning that I’ve seen extension cables cause precisely the effects he was seeing. Sure enough, when he connected the cable (a Belkin, incidentally) to his monitor, the picture quality degraded–worse than it had been with the switchbox in the equation. So I’m going to dig up a couple of other types of cables (I use Fellowes cables on mine) and see if that makes a difference.

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.