Jeff Duntemann's Contrapositive Diary Rotating Header Image

Synthesizing a Functional Cardinal

I haven’t done any new fiction in over a year, largely because I took ten months out of my life to update Assembly Language Step By Step, and another three months to catch up on all the stuff that didn’t happen while I was doing the update. Today was the first day in ages that I had both a reasonably clear schedule and a solid night’s sleep behind me, so I sat down this morning after a bacon & cheese omelette to see what would happen.

Much good did. I got 2,000 words down on Old Catholics, which is about as much fiction as I generally crank out in an uninterrupted day. So far I’ve got 6 1/2 chapters completed, out of 18 planned, for a total of 32,000 words. The target is 90,000 words, with a hard ceiling of 100,000. I mean to impose whatever discipline is necessary to stay under that ceiling; I set myself the same ceiling for The Cunning Blood and ended up with 145,000 words of novel, which I don’t think helped me at the big presses during the five years that I shopped it.

The current chapter represents a difficult point in the telling of the story. I’m about to introduce the last of the major characters: Cardinal Peter Paul Luchetti of the Archdiocese of Chicago. The problem is that while I’ve met a fair number of Roman Catholic seminarians and priests, as an adult I’ve never been within striking distance of a Roman Catholic bishop, much less a cardinal. (It is true that Cardinal Albert Meyer came within striking distance of me when I was 12, as some of my Roman friends of a similar age may understand.) I generally design characters by drawing on people I’ve met and talked to, but in this case I came up completely empty.

The entire novel is an attempt to design and portray better characters than I have in my SF so far, in a setting where I’m unlikely to get distracted by gunfights, hyperdrives, or berserk nanomachines. Creating a convincing Roman Catholic cardinal is probably the toughest characterization issue I’ve ever faced, simply because cardinals exist. People can call me on the details. I can’t just make things up on a whim. It’s the issue SF people call “offending the known,” and, as I’ve discovered, offending the known is much easier in non-fantastic fiction set in the current day.

I did my best, and used a technique I learned from my SF mentor, Nancy Kress: I wrote a 1,500-word fictional dossier on the man. Only a little of that will actually make it into the story, but filling in the details of Peter Luchetti’s life forced me to consider his strengths and weaknesses and special talents and record them in a coherent way. I’m drawing on the few books I’ve found that speak honestly and in detail about cardinals without mythologizing them: Peter Hebblethwaite’s The Next Pope (1995) and I Am Your Brother Joseph (1997) by Tim Unsworth, a short biography of Cardinal Joseph Bernardin, who was by far the finest cardinal Chicago has had or probably ever will have.

Perhaps I should worry less. The book is a sort of fantasy, in that what I describe is whimsical, outrageous, and almost certainly impossible. That said, I’ve managed to work in almost everything I’ve ever learned about Catholic life, worship, and history, from Benediction, Tenebrae and Holy Hour to apostolic succession, Arminianism, and the Council of Constance (1414-18). Both liberals and conservatives within Catholicism will likely be annoyed at me, and if they are, I’ll call the book a resounding success.

As for the feeling of sitting down to write fiction again: Damn, it’s good to be back!

Authors Get 70% Royalty from Kindle Sales

Wow. This is big: Amazon just opened up an option for Kindle author/publishers under which royalty rates are 70%. (Some analysis here; ignore Jeff Bezos’ open mouth.) We’re now closing in on the sort of royalty structure that reflects the realities of ebook economics: No paper, no ink, no physical warehousing. (Server space is way cheaper than maintaining pallet loads of print books out in meatspace somewhere. Trust me on that one!)

To qualfy for the new royalty rate, author/publishers (funny how the two are now blurring together!) must satisfy a few requirements:

  • Ebooks must list for between $2.99 and $9.99
  • The ebook list price must be at least 20% below the cover price for the printed book.
  • The ebook is made available everywhere that the author/publisher has rights.
  • Author/publishers must agree to accept the full list of Kindle features–current and to come–without quibbles, pointedly including text-to-speech.
  • Although Kindle won’t demand an exclusive, an ebook’s price at the Kindle store must be at or below the price at other ebook retailers from which the ebook is available.
  • The 70% rate applies to in-copyright works only. Reprints of public domain material do not qualify.

It’s no secret what’s going on here: Apple’s not-quite-top-secret tablet is really a game-changer ebook reader, and having seen how Apple basically created and still rules the market for individual music tracks, Amazon wants to make sure it retains its hard-won early lead in ebook retailing. This is certainly the reasoning behind Point #4, which basically prevents author/publishers from cutting sweeter deals with other ebook stores like Nook and whatever retail mechanism Apple eventually puts together.

If I hadn’t had to update my assembly book, my SF titles would be available for the Kindle by now, and this makes the effort all the more urgent. Looks like I have a lot to do this year–and maybe now I can expect a little more money in the bargain.

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

NewBalsamShoots.jpg

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.

WeiboldtsTwoForFifteen.jpgWow.

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.
  • Classmates.com 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.