Presented Without Comment

A frequent pattern in the technical workplace.

What Was Said

I don’t think this proposal is thought all the way through.
The Truth
I didn’t even read it all the way through before I started inventing my own.

Hands up if you’ve seen this one.

Bacon in the News

Since someone expressed interest, or at least failed to express sufficient disinterest, when I mentioned these:

Donuts and Bacon ’08 takeoff on the Obama campaign logo.

Bacon Wrapped Twinkie Stonehenge

Cindy points out that it’s really french toast, not twinkies. Here’s the recipe, and she’s right, but somehow “Bacon Wrapped French Toast Stonehenge” doesn’t have the same “pop” to it.

MPFS History

Every once in a while, a discussion on one of the storage blogs turns to MPFS/HighRoad, how it relates to what is now known as pNFS, what differentiates it from alternatives such as GFS, Lustre, etc. Most recently, the comments in a post on Chuck Hollis’s blog demonstrated some confusion or misunderstanding about the project’s various names. I tried to clear up that one issue there, but it occurred to me that even though I spent more time on MPFS than on any other project in my career except for the one at Revivio, I’ve written less about it than about what came immediately before or after. To correct that, I wrote a History of MPFS page. If you’re interested in what someone who was actually there at the beginning might have to say about some of the mythology and misinformation surrounding the project, you might want to give it a read.

External Laptop Battery

When I was comparing netbooks/subnotebooks/whatever, I selected the Aspire One knowing that it lost a bit in the battery-life department. That’s OK, because I think it’s more important 95% of the time for it to be lighter, and there’s a clear battery capacity/weight tradeoff. However, that other 5% includes time on trips – not only on planes but in airplane terminals where somebody else got to the power outlets first, etc. Accordingly, I always planned to get an external battery as well, for those particular occasions. During my online research, I found everything from drastically overpriced monstrosities (more than the A1 itself cost!) to cheap pieces of junk that were really little more than bare batteries and some leads with no regulator (good luck getting that past TSA without them thinking it’s a bomb). One of the more appealing options was this Powerbank RF638, so I bought one.

There’s really not much to say about a battery, I guess, except for does it work and how long. Well, yes, it does work. It was easy to figure out how to set it to 19V output and to find the right tip to fit the power jack on my A1. It powers the mostly-idle A1 for between four and five hours, and charges back up in about a third of that – most importantly, in far less than the three hours the A1 can run by itself, so I can leave it charging in an out-of-the-way corner while I take the A1 elsewhere. It’s a nice size, a bit bigger than a paperback book but smaller than the A1, and seems solidly constructed. Not bad for just over a hundred bucks – which is still less than the difference between laptops with larger and smaller batteries. If you’re in a situation like mine, usually focused on weight but needing a longer-untethered-runtime option occasionally, I highly recommend this as an alternative to a laptop that’s much heavier and pricier because of a big internal battery.

Regexes Considered Harmful

This is what Cisco’s home page apparently looked like for a few hours yesterday.

Cisco FAIL

The first thing you might notice is the lack of lower-case ‘t’ characters. What’s less obvious is that all of the formatting was lost too because – as Duncan Smart illustrates – the letters had been stripped out of HTML tags as well. It’s amazing the page renders at all. Apparently some web-monkey got careless with a regex, and there was inadequate change control that allowed this to slip through. It’s not quite as awkward as EMC subsidiary VMWare’s “screw customers’ machines because we’re confused” bug a few weeks ago, but it can’t be very pleasant for the people involved.

Hat tip to Ned Batchelder for the link to Duncan.

Dark Pools of Liquidity

I found this on the way to something else. It’s something I had never heard of before: Project Turquoise. One of the key components seems to be to enable trading away from public scrutiny or regulation.

the new exchange has already started to dream up alternative revenue streams should stock trading not prove sufficiently lucrative.

The first of these is to allow transactions in “dark liquidity”pools, where firms offer to buy and sell large blocks of shares away from public sight. Speaking at an Exchange Forum conference in London in May, Phillip Hylander, co-head of European equities at Goldman Sachs, said: “Turquoise is to be a hybrid that will incorporate a public order book and a non-public order book.”

Is it really a surprise that Henry Paulson’s good buddies at Goldman Sachs are the chief proponent of this money-launderers’ dream? To paraphrase Gandhi:

Q: What do you think of the American free market?
A: I think it would be a great idea.

Unfortunately, open and free markets are the very last thing that those who pass between the Washington/Wall Street revolving door have ever wanted.

Weekend Pictures

Nothing particularly amazing, but I thought these were cool enough to share.

Some clusters of small mushrooms growing inside a rotting log at Drumlin Animal Farm on Saturday. The largest is no bigger than the tip of my finger. Amy actually spotted these and asked what they were, but I didn’t know.
A squash plant taking over a shrub at Bowman school on Sunday.

Oppose the Paulson Plan

Please, please write your senators and house representative. Tell them to oppose this unconstitutional, immoral, and impractical piece of garbage. Do it today before it’s too late.

Maybe government action is necessary to prop up our failing financial system, but not this plan. Here’s the most concise and accurate and concise list of flaws I’ve seen yet. It starts with the complete lack of accountability for either the people who got us into the mess or their very good friends on the other side of the Treasury/GoldmanSachs revolving door who would use taxpayer dollars to bail them out, and ends with the fact that it simply won’t work. The banks and brokers have a capital crisis? Well, let’s loan them some money in return for equity just like any private savior would do under similar circumstances. That way, when they recover, we get our money back. As it currently stands, the Paulson Plan is just the most blatant effort yet to make all risks public while all profits remain private, and to shield the entire unholy partnership from any kind of legislative or judicial review. There’s nothing “clean” about using fear to turn a national crisis into a personal opportunity, Mr. Paulson. If you do pull it off, you’d better hope the citizens whose trust you abused prefer the guillotine to the gallows.

Barney Frank’s proposal is barely any better. Chris Dodd’s proposal, while not perfect, addresses most of the major flaws and is the one most worthy of our support. Again, please let the people who supposedly represent you in Washington know that your eyes are open and you won’t stand for having our constitution shredded.

Proboards is Antisocial

They’re antisocial because they allow users to define an avatar that is hot-linked from the original site, causing that original site to be hit every time a user’s posts are viewed. They also dynamically resize it, which is just stupid in terms of the server load it causes. At least that’s their own problem for which they bear the cost, unlike the hot-linking. Hey Proboards, use your own damn bandwidth!

Aspire One: my own kernel

As I mentioned in my article on wireless for the Aspire One, one of the things I did was build my own kernel so that some day I could strip out some of the superfluous crud. Well, yesterday I actually started trying to boot that kernel. It was more of a struggle than I thought it would be, but I eventually succeeded. Well, kind of. Before I get into more detail, let me just make something very clear: don’t try this at home. I’m going to talk about doing some things that could seriously screw up your system – not just the Aspire One but whatever other machine you run some of the steps on. Don’t blame me if you turn one of your machines into a very pretty brick.

At this point, I have concluded that the version of GRUB (the boot loader) that’s installed on the A1 is non-standard in some way. No matter what I did in grub.conf (or menu.lst just in case it was lying to me about which config file it was using) I couldn’t get it to show me an actual boot menu. Come to think of it, I couldn’t get it to show me the splash screen referenced in the as-shipped grub.conf either. It would always show the original who-knows-from-where splash screen, and always boot the original kernel. The only thing that seems to have changed since I first received the box is that now I have to hit the space bar a couple of times at the blank screen where the GRUB menu should be. That was good for a few tense moments, but it also tells me that GRUB isn’t being bypassed entirely.

Until I understand exactly what’s special about the Aspire One version of GRUB, I’m loth to replace it or to modify that first entry. Instead, I chose to set up an external boot loader on my oldest and smallest USB key, using my Dell laptio to set it up and test it because I don’t trust any of the GRUB utilities on the A1. I saved everything I used to have on it, reformatted it as plain ext2 (had been ext3), copied the my Dell’s /boot directory onto it, ran grub-install etc. The only non-obvious thing was that after grub-install I still had to go into the grub shell and run setup there. That seems redundant, but here are the commands I used.

grub> root (hd1,0)
grub> setup (hd1)

No, not (hd1,0) as you’d think. This allowed me to use the USB key to boot the Dell, so then I tried on the A1. The boot entry I used looked like this.

title My A1 Kernel
rootnoverify (hd1,0)
kernel /boot/bzimg_jd ro root=LABEL=linpus vga=0x311 splash=silent loglevel=1 console=tty1 quiet nolapic timer
initrd /boot/initrd-splash.img
map (hd0) (hd1)

The most important part is that (hd1,0) when booting from the USB key means the internal SSD, whereas when booting from the internal SSD – or the Dell’s hard disk while I was setting this up – it meant the USB key. Similarly, the “map” command makes it so that post-boot references to /dev/sda refer to the SSD again. This also makes it possible to remove the USB key after booting, despite having used it to boot the system originally.

The other bit of strangeness had to do with loading kernel modules built for one kernel while booted with another. On my first boot, things mostly worked but some things failed because the version strings weren’t quite the same. To get around this, I used “make menuconfig” to change the local version in my kernel from “lw” to “jd” then rebuilt and installed my own matching modules – in parallel with the shipped ones instead of replacing them. My next reboot went a lot better, except for ndiswrapper which had been installed separately. That was just a matter of unpacking it and running “make install” just as I had before.

So now I have my own kernel that’s functionally identical to the original one. I’m out of time now, but some day soon I’ll actually start trimming the fat from my version.

UPDATE 2008-09-22: While I was able to boot my own fully-functional kernel this way a couple of times, on other occasions not everything came up OK (“HAL failed to initialize”) and on still others the system exhibited random flakiness later (failed to make a WiFi connection or recognize a USB device). Apparently, building from the Acer sources with the Acer config file still doesn’t yield something functionally equivalent to the Acer kernel. It might have been an honest mistake/omission on their part, or it might be like when Sun used to accept my fixes and incorporate them into SunOS but leave them out of the supposedly-equivalent NFS source they shipped back to us. Either way, it irks me.