Jeff Duntemann's Contrapositive Diary Rotating Header Image

January, 2010:

The Night of the Monumental Fail

(And you thought I was talking about the Massachusetts senatorial election…)

Pulled down the Fedora 12 DVD ISO earlier today, burned it to disc, and turned it loose on my Linux SX270, which at the time had a 60 GB hard drive with a functional Ubuntu Intrepid partition on it. I’d been meaning to install Fedora for some time, and wanted to try a few things on which I’ll report in the near future.

Alas, things went what may be irretrievably bad, or bad enough to be irretrievable without completely wiping the hard drive, including my Ubuntu instance.

No, I don’t know what went wrong. It’s hard to troubleshoot a failed install of an OS. What happened went this way:

  • I used the built-in partitioner (Disk Druid, unless I misrecall) to shrink the existing 55 GB partition to 22 GB.
  • I allocated the rest of the drive to the Fedora partition.
  • With the shrink/allocation apparently successful, Anaconda dove in and started the installation. After installing 106 package files, the process stopped. The machine wasn’t completely frozen–the mouse pointer still worked–but nothing was happening, no disk activity, nada.
  • After watching it sit at file 106 for over an hour, I gave up and hit the power switch. The machine had only 512 MB in it, so I dropped my spare 512 MB DIMM into the second slot. I know that most Linux installers set a lot of stuff up in memory prior to the actual install, so maybe it just ran out of RAM.
  • When I booted back into Ubuntu to take a look at what remained in the wake of the crash, I saw the new partition, and saw that it did not have a file system. That seemed odd to me, since for all appearances it was copying files to the hard disk.
  • I rebooted from the install DVD and started the install from scratch. I tried to make use of the partition I had created on the first pass through, but nothing selectable allowed me to make use of the partition.
  • I booted back into Ubuntu and deleted the new partition. I then restarted the install DVD and told it to use the free space where the new partition used to be. Again, it stopped at the partitioner, this time telling me that there was no root partition defined. I defined the existing Ubuntu partition as root, and kept going.
  • Almost immediately it died and gave no sign.

Now, I have nothing irreplaceable in the Ubuntu partition. I could wipe the whole drive if I wanted to. But it makes me wonder if the engineers at the Fedora project ever took into account the (inevitable) event of an install failure. Is there any machinery in Anaconda to pick up the pieces when an install croaks and it has to start fresh?

If a Linux distro won’t install with 1 GB of RAM, I’m not sure it still qualifies as Linux. Or is there something else freaky about this machine? I don’t know, and don’t know how to find out. I have room on my slightly cranky 3 GHz Pentium downstairs, and that box is loaded. I’ll try again down there. Still, this counts as a very significant fail for Fedora. I’ve installed Ubuntu on SX270s at least five times, and never had any problem more significant than a video mode screwup requiring minor editing of xorg.conf.

Next attempt: OpenSuse. We’ll see if it can move into Fedora’s slightly scorched apartment, or if it needs to gut it to the walls first.

Sometimes Somebody Just Nails It

There’s a thread underway on Slashdot right now involving a slightly arcane issue in which the Comprehensive Perl Archive Network (CPAN) is receiving 20-30 HTTP requests per second…from IP addresses owned by Microsoft. If this makes no sense to you, let it ride; it’s not important for the point I’m making. CPAN’s servers are so tied up honoring all those requests that they’re mostly inaccessible. The Slashdot discussion focuses on the question of whether Microsoft is doing this deliberately, or whether the torrent of requests is a side-effect of something else they’re doing. (A third possibility, that Microsoft’s servers have been badly hacked by DDOS bots, is possible but seems unlikely to me.) The question cooks down to whether all the action from Microsoft’s subnet is due to malice or incompetence.

A chap on Slashdot named Lloyd Bryant pretty much nailed it: “Sufficiently advanced incompetence is indistinguishable from malice. See Government, US.”

Hoo-boy. Somebody please give that man the Nobel Prize.

Victoria Duntemann’s Home-Made Beef Barley Soup

My mother was not a fantastic cook (as the youngest of eight kids, her older sisters did all the cooking and hence all the learning) but certain things she did very well. One of these was beef barley soup, and in her honor I made a pot of it today, according to her recipe as I best remember it, with only minor tweaks. My sister Gretchen pitched in on the remembering, reminding me that mother used tomato soup instead of diced tomatoes, but having imbibed a little too much of it in the early ’60s, I cannot abide tomato soup.

So here’s the recipe. It works, though it makes a lot, and in dinner-party portions probably serves 10 or 12. Carol and I will feast on it for a day or two and then freeze the rest.

  • 1 pound stew meat
  • 32 oz beef stock or broth
  • 6 cups water
  • 1 cup pearled barley
  • 1 large onion
  • 1 can (14.5 oz) diced tomatoes
  • 2 large carrots
  • 3 large stalks celery
  • 2 tblsp salt

Cut the beef up into small chunks, suitable for spooning. Mix beef chunks in a bowl with flour to coat all pieces. Melt a little butter in the bottom of a suitably large pot and brown the beef. Once the beef is browned, add in the broth, the water, the salt, and the barley. Bring to a boil, then reduce heat and simmer for 15 or 20 minutes to give the barley a good head start.

Add the vegetables. Simmer for another 45 minutes to an hour, or until the barley gets soft enough for you. (If you need to shorten the cooking time, use quick-cook barley, throw everything together at the beginning, and cook for only half an hour or forty minutes.) If you like pepper (we don’t, not that much) grind a little in.

Note that I prefer “hearty” soup, which means you can stand a spoon up in it. The recipe sounds like it calls for a lot of liquid, but barley is half-sponge, and when you’re done you’ll have something about 40% of the way from soup to stew. For thinner soup, add water or cut back a little on the barley. Nothing critical about the recipe; more meat would work, and you can leave out the onion if that’s an issue.

And there you have it. We ate simply but well when I was a kid. The evidence is in the pot.

Steampunk Home-Made Tubes…and Transistors!

tennis1.jpgWhile ragchewing with Joe Flamini earlier today, we got on the topic of whether or not it would be possible to make a usable transistor in your basement. It’s not a cakewalk, but a fair number of people have made their own vacuum tubes at home. I myself have made a sort of point-contact diode using a chunk of galena (lead sulphide) crystal and a piece of #44 wire–it’s what the old guys used to call a cat’s whisker detector. Like a lot of guys, I added a second whisker and thought it might become a point-contact transistor, but I didn’t know how to test it. (And that was in 1964.)

There’s a kind of early junction transistor called a “meltback” that starts with a small germanium bar. You heat one end until it melts a little, and as it hardens and recrystallizes after heat is removed, P-dopants gather somehow in the zone between the melted and unmelted germanium, and what results is an NPN transistor. I read years ago of somebody making meltback transistors in his basement, but I can’t find the reference now. I guess the hard part is just laying hands on a piece of germanium with both dopants in it. This article describes a number of ways that transistors are made, including the meltback method. None of them seem difficult from a lab technique standpoint, but there’s always the question of just where you get a little indium when you need it.

While researching the question I came across the Web site of H. P. Friedrichs AC7ZL, who wrote a book some years ago about making tubes and transistors at home. The book is called Instruments of Amplification, and used copies are available for about $25 on Amazon. I don’t have it yet, but I want to call your attention to the author’s online photo albums, which show some of the devices that he’s built. They’re beautifully photographed, and definitely show some steampunk influence. Here’s Album 1, and Album 2.

A fair number of people were stumbling around in the dark pursuing solid-state active devices as early as 1910; here’s a good overview. So not only was it possible for the Edwardians to make transistors, some actually came pretty close to doing it. The problem was not even access to materials–pure germanium had been available since the late 1880s–but simply that the physics was still obscure. A suitably intuitive scientist who understood electricity as well as it was understood in 1890 could have worked out PN junction physics. The fact that nobody did could have been simple bad luck: The right guy with the right background and the right obsessions working in the right lab with the right tools and the right materials just didn’t turn up.

While we talking steampunk, few are aware that a purely steam-powered biplane flew successfully in the early 1930s. It had a interesting characteristic: It was quiet. Internal combustion is nothing more than a continuous series of explosions inside a piston. Generate your pressure some other way, and the sound level goes way down. There’s some period b/w silent footage on YouTube. The engine could be quickly and easily reversed, though it’s not clear to me how valuable that would be in a biplane.

Steam-powered aircraft interest me because there’s nothing essentially electrical about a steam engine. In my novel The Cunning Blood I suggested that all aircraft on Hell (a prison planet seeded with nanomachines that homed in on and destroyed electrical conductors) would be either Diesel or turbojet powered, simply because I didn’t think you could make a steam engine that was both powerful enough and light enough to fly. I guess I was wrong.

Heh. I love to be wrong!

A Tree For the Ages


Not everything gets done on time, but at our house, at least, most things come in at or under budget. Carol and I budgeted an afternoon to take down and pack all of our Christmas decorations, and that’s about what it took. We’re certainly not on time (I had planned to be done a week ago) but a buzzing swarm of minor irritations got in the way, and it wasn’t until suppertime yesterday that the tree came down–and that only after everything else in the line of decorations was gathered in from the eight corners of the house and repacked in six cozy Rubbermaid totes.

And boy, what a tree that was! We put it up on December 10, which means it was on duty for almost five weeks. It had dropped some needles on the floor, but nothing I’d call a torrent, and when we got to picking ornaments off the tree’s high precincts, we discovered something else: The tree had been growing. On the very highest branches, there were new pale-green needles emerging from the branch tips. Those had certainly not been there when we brought it home back in December. This is not a trick we’ve observed in any other tree we’ve had in 33 years of marriage, nor with our respective families prior to that. We’re not sure how we managed it, but we’re going to buy our tree at the same lot next year and hope we get lucky again.

OrnamentsBox.jpgWe broke only one glass ornament this year, and it wasn’t one of the old ones. It was perhaps ten years old, the sort of worked-glass item you see artists making in real time with a blowtorch at home and garden shows, out of thin glass rod. When Carol touched it to take it down from the tree, it literally flew apart in her hands. (There were internal stresses involved, as we vacuumed up fragments six feet away.)

A lot of our ornaments were inherited from Carol’s family, especially after we sold her mom’s house in 2006. Many are old, some extremely old, judging by the fragile cardboard boxes that had held them on store shelves decades ago and still serve in 2010, taped and patched though they may be. What I found remarkable was a price tag on the box shown above, from the venerable (and now extinct) Weiboldt’s department store in Chicago. The tag reads two for fifteen cents.


Maybe it was a clearance sale price for the day after Christmas. I don’t know. I can’t remember the last time I bought anything enduring for less than ten cents. (Hamfest junkmongering doesn’t count, though the junk certainly does endure.) Even the Hi-Flier kites I flew in 1962 cost me a dime. This may take us back to the early 1950s, and possibly to the late 1940s. Carol’s parents were married in 1947. We wonder if this box could be among the ornaments they bought for their first Christmas together.

I snipped off the branch tip shown in the photo at the top of this entry, and put it in a glass of water, just to see what happens. The tree is now out in the garage and will go to Rocky Top in the next day or so. The decorations and the Lionel trains are back in the Harry Potter closet downstairs. I gave Carol a hug while we moved the furniture back into its accustomed places. Christmas is over, but there’s still a little sparkle in the air, and I’m dealing well with the ordinary gloom of winter.

Mission accomplished.

Odd Lots

  • We take digital clocks for granted, but this project may give you some perspective on just how difficult a challenge a digital clock really is. Absent integrated circuits, it takes over 1200 discrete electronic components to make a 6-digit digital clock. And you can get a kit.
  • Maybe RCA’s engineers are having a little fun with us. It’s hard to tell sometimes, but I still don’t understand how this thing is not a hoax. I maybe know a little bit about both RF power physics (37 years in ham radio) and Wi-Fi. If there’s a place in the world with enough Wi-Fi hotspots to make that little box generate useful power, please tell me where, so I can be sure never to go anywhere near it.
  • Several people have noticed that my author bio photo on Amazon has been replaced by someone else’s. Most oddly, the photo is of my old friend Jon Shemitz of Santa Cruz, who’s done some very good books on Kylix and .NET 2.0. I’ve been trying to get Amazon’s attention for a couple of weeks now, no luck yet.
  • did it again: They sent me an email asking whether I’d like to reconnect with a girl from my high school class. As I’ve said before, Lane Tech High was all-male until several years after I graduated, so there was no Teresa Mazzerelli in my class–nor does she appear in the alumni directory. One I could call a database error. Two I call fraud. Don’t give these guys your money.
  • Malt is my favorite ice cream flavor, but it’s very hard to come by. Several companies have offered it in the last ten or twelve years, including Meadow Gold and Boulder, but the flavor has always vanished after a few months. I guess I may just have to make my own.
  • Sprint may be partnering with Wal-Mart to put WiMax nodes on top of every single Wal-Mart in the country. This is not the first time I’ve heard this, and have reported on it before, but having had some experience with something a little like WiMax, I think it could be a huge moneymaker for Wal-Mart if they don’t let the control freaks at Sprint ruin it.
  • From the Words-I-Hadn’t-Heard-In-Thirty-Years-Until-Yesterday Department: bildungsroman, a coming-of-age novel. Why, then, does it suggest erecting a shrine to the Emperor out of cow pies?

FreePascal (And Lazarus) From Square One

About two years ago I started piecing together a book on FreePascal based on my 1992 Bantam book, Borland Pascal 7 From Square One. I set the project aside in part because I needed to get my assembly book updated and back into print–something that took most of a year and all of the personal energy I could summon. But there was another problem: The text-mode IDE included with FreePascal is erratic in the extreme, and crashed constantly on me, especially under Windows. I had hoped that there was an easy fix, but apparently not. I installed the new 2.4.0 release of FreePascal yesterday, and the IDE hasn’t changed a bit. Try to set the text display resolution to anything at all (25 X 80, 43 X 80, whatever) and it crashes. One wonders why the damned thing is still there.

I’ve been following the Lazarus project since it had been the Megido project, back in 1998. The idea was to create an open-source alternative to Delphi, by writing a GUI front end for FreePascal. It’s possible to create ordinary console apps in FreePascal using Lazarus as the IDE, but I hesitated to use Lazarus as the example IDE in the book because it’s only available for Windows, Linux, and FreeBSD. (There’s a Mac port, but I’ve heard it’s less complete and much less robust than the others.)

Pascal and VDM readers, feel the irony: Jeff Duntemann hanging back from a RAD environment because he’d hoped to have a more broadbly applicable (read here: portable) book. Wow.

Heh. I changed my mind. I’ll have to go back to the beginning and pull out all the references and screenshots involving the text-mode IDE, but Lazarus is a much better IDE, even if you’re not actually doing any RAD work….yet.

“Yet” is key. If this first book works out, I hope to adapt some of my material from The Delphi 2 Programming Explorer into an intro book for Lazarus as a RAD tool. So getting readers familiar with the editing and project management machinery built into Lazarus is a good thing, even if the bulk of the app goes to waste while people learn the fundamentals of Pascal.

I’m going to try something new with this book. I’m going to pull a Cory Doctorow and give away the complete PDF version for free, and sell the printed version on Lulu. The book will be yet another descendant of Complete Turbo Pascal (in fact, it will in essence be the 25th Anniversary Edition!) and I’ve been paid for the work many times over. So I won’t be losing much by giving it away, and I’m very curious to see how many paid print sales I’ll make based on a free ebook.

Most of the work lies in the early chapters, where I introduce people to the Lazarus RAD environment. After that, well, it’s all basic Pascal, and while Delphi has extended Pascal fantastically in the last fifteen years, CASE statements are still CASE statements.

Unlike my earlier books, I intend to post regular PDFs of the work in progress, so you can follow the project as it happens. (There’s a 2008-era PDF out there now, and you can get it from my FTP area using HTTP.) I’ll post an updated PDF as soon as I untangle all the existing references to the text-mode IDE. Watch this space for more details.

The Limitations of Celebration

Yesterday saw an annual ritual performed here: Popping the Christmas mix CDs out of the 4Runner’s CD changer, and dropping back in four non-Christmas selections from the 20-odd mix CDs I have in the CD wallet. Tomorrow is the Feast of the Epiphany, which, in the minds of most Catholics–my own included–is the end of the Christmas season. Our tree is drying out, and probably Thursday or Friday we’ll pull down and pack the ornaments, re-roll the 10 strings of old-style lights, and get everything back into its proper box. I’ll run the Lionel trains around the track one more time and pronounce them good, as I have now for 30-odd years of Christmas railroading. The tree will come down and be taken to Rocky Top, a local rock-and-dirt yard that recycles Christmas trees into mulch. The trains and all the decorations will go back down under the big stairs in the Harry Potter closet, to wait quietly for Christmas 2010.

It wasn’t that I was getting tired of the Christmas mix CDs, or the tree, or the decorations, or (especially) the Lionel trains. Far from it. What I don’t want is for them to become ordinary. That is in fact the risk of endless Christmas celebration, as it sometimes seems to lean in this country. Nor is it specifically a Christmas problem: Celebrate anything too much, and whatever you’re celebrating merges into the landscape of ordinary life, and loses its power to remind, to re-orient, to refresh.

It’s important to separate the mechanics of celebration with what is being celebrated. The ideas behind Christmas, whether the purely religious or the secular (there’s nothing essentially religious about “peace on Earth, good will toward men”) are worth keeping close at hand at all times of the year, and ideally through every waking moment we live. The tree, the lights, the egg nog, the creche, and all the rest of it serve as reminders, popping up on an annual basis to reinforce the importance of keeping generosity, civility, and patience in our everyday toolkits. If we engage in the mechanics of celebration for too long, the symbols lose their power, and because symbols demand attention, they can too easily become irritations.

So it’s essential to the mission of Christmas to put it all away after awhile, lest we get all Christmased out and cease to see the point of it. Come next fall (and a little later than November 1, perhaps? Please?) we’ll begin to remember again, and the symbols will re-emerge, refreshed in their power just as we left the previous Christmas season refreshed in our convictions. We’ll rediscover the delights of Christmas music and Lionel trains and colored lights all over the place. We’ll remember why we do it, and resolve to keep the ideals in our minds as we slog through yet another damned miserable winter.

It’s time. I’ll miss the trains (and maybe the egg nog) but yes indeed, it’s time.