It has been blamed for directing huge articulated lorries down tiny country lanes, encouraging car drivers to plunge into impassable fords – and even sending inattentive motorists down railway lines.
And last night, it was revealed the curse of satnav has found yet another way to wreak havoc on Britain’s roads – by funnelling tall vehicles under low bridges.
The problem came to light after rail chiefs realized that three of the railway bridges most often hit by traffic lay in a one-mile radius in the same town: Grantham in Lincolnshire. Between them, they were struck an astonishing 62 times last year.
Half involved one of the structures, earning it the dubious distinction of being Britain’s most crashed-into railway bridge.
A spokesman said: "It’s a rising problem and satnavs are playing a greater role. They are great tools but they are no substitute for common sense and following the rules of the road."
An AA spokesman added: "The fact that you’re getting bridges with a reputation for being hit suggests that satnav software is directing large numbers of vehicles to take those particular routes.
"The problem is ‘blind reliance’. If people were using a map they would be more likely to question whether a bridge was high enough for their vehicle but it’s staggering to what extent people are blindly relying on technology."
Freight Transport Association director Geoff Dossetter agreed: "Satnavs are wonderful for drivers in unfamiliar territory but if a road sign says ‘low bridge ahead’ there really shouldn’t be any doubt about what that means.
"Foreign drivers are particularly bad in their blind adherence to satnav and need to improve their behaviour."
The first question that came to my mind was, isn’t there one of those universal road signs that means "Low Bridge"? And apparently, there are:
I own a car that has a satnav system in it, and I’m here to tell you it’s a lovely little bit of technology. And I’m someone who Never had trouble with maps. I love reading maps. A favorite pastime of mine since I got paid vacation is to browse my big road Atlas like it’s a Christmas toy catalog. But for helping me navigate large, snarly highway interchanges in unfamiliar territory, or guiding me to a specific address when I have to be someplace at a certain time, the satnav system is really handy. Even so, if I saw it telling me to drive into a creek or make the next left onto a set of railroad tracks, I wouldn’t do it. I’d probably just frown and think to myself, well this part of the map needs a little work.
But that’s because I understand the technology from the inside out. It’s not some kind of mysterious magic to me. To me it’s only a computer program manipulating pixels on an LCD screen. I may not know the details of how that particular program works, but I can build a general idea of how it’s probably doing it in my head. I know what it is that it’s telling me and, just as importantly, what it isn’t telling me. But more importantly, probably, I know what all computer professionals know about computers: garbage in equals garbage out. It didn’t take me long after I got the Mercedes, to realize that just because its nav system is telling me there’s a gas station two miles ahead of me, that doesn’t mean that there really is a gas station two miles ahead of me. It might be there was one there at one time, when the map was being made, but now it’s abandoned. Or it might never have been there at all to begin with. At some point, all the information in one of those satnav systems had to be put into it by a human. And if the human got it wrong, the computer will happily feed you the wrong information just as though it was good information. And not even ask for thanks, because it’s just doing its job.
I know this. I have to keep reminding myself that to other people, computers seem a tad mysterious and maybe even a bit creepy. You can’t see a program running. The computer just sits there and then the next thing you know it’s displaying something on the screen. Maybe it’s what you asked for. Maybe it’s something like this…
And a lot of people, seeing that, wouldn’t curse the lazy ass programmer who wrote that lousy, utterly worthless error message, but just sit there and let their computer make them feel stupid and they’re not. The computer knows something I don’t… No…the computer doesn’t know anything. It’s just a machine.
I know a lot of people feel this way about computers:
Everyone always wants new things. Everybody likes new inventions, new technology. People will never be replaced by machines. In the end, life and business are about human connections. And computers are about trying to murder you in a lake. And to me, the choice is easy. -Michael Scott, The Office
But this is as silly as saying that skin will never be replaced by clothes. We are not our technology, but our technology is us. Technology does not dehumanize us. That’s trope. A stone ax is technology. A plow is technology. A book is technology. To say that humans are tool makers misses it a tad. Tools are the visible part of the human soul. They are embodiments of our thoughts, our feelings, our innermost selves. They are art. All technology, is art. The masters of a craft, the ones who make the best, most useful, most enduring tools, are the ones who understand this. In the way that output is only the visible part, the part you can see, of the running computer program, the things humans make, our tools, our machines, our buildings, our works of art, are embodiments of the inner, essential human nature every generation leaves behind in its wake. Whether it’s an arrowhead, a cuckoo clock or a satnav system, their nature is our own. And as the saying goes "There’s nothing as queer as folk".
Computers are something humans came up with, to help with tasks that humans wanted to do. They’ve become ubiquitous because the basic technology is so damn versatile. Trust it where you can verify that it’s working properly and not when it hands you something you can plainly see with your own two eyes is crap. It’s just a machine. It’s judgment cannot replace yours because it doesn’t have any judgment. It’s just a machine. In his poem, The Secret of the Machines, Rudyard Kipling wrote…
Though our smoke may hide the Heavens from your eyes,
It will vanish and the stars will shine again,
Because, for all our power and weight and size,
We are nothing more than children of your brain!
When the road and the nav system disagree, believe the road. If the computer directs you to go jump in a lake, it’s not being malicious, and you don’t have to do it. It’s not working right. Go find the programmer and make them fix it.
"I am, in the States, known as a Software Engineer. In Canada we’re not allowed to call ourselves engineers, although the discipline is no less rigorous than any other kind of engineering. But perhaps its for the best, because ‘engineering’ describes only a part of what I do. A software developer must be part writer and poet, part salesperson and public speaker, part artist and designer, and always equal parts logic and empathy."
Yeah. It’s like that. But I love it. It still amazes me that I do the work I do.
As I’ve transitioned over the course of my life as a software developer/systems engineer, from an exclusively Windows oriented work life to a mix of MacOS, Linux and Windows, I’ve come to appreciate how incredibly brain dead the Really Smart Kids at Redmond are when it comes to computer security. Windows, simply put, is unsafe at any speed. I say this fully realizing that Unix/Linux and MacOS (which is Unix down in its kernel), isn’t bullet proof either. But as there is a difference between driving a Mercedes-Benz or a Volvo and driving a 1960 Corvair, there is a difference between running a Unix like OS and Windows. I could point to a number of different Windows inanities that continue to bother me, but here’s the one that’s got my attention now: autoplay. And here’s why:
It’s time to add digital picture frames to the group of consumer products that could carry computer viruses and Trojan horse programs.
In the past month, at least three consumers have reported that photo frames – small flat-panel displays for displaying digital images – received over the holidays attempted to install malicious code on their computer systems, according to the Internet Storm Center, a network-threat monitoring group. Each case involved the same product and the same chain of stores, suggesting that the electronic systems were infected at the factory or somewhere during shipping, said Marcus Sachs, who volunteers as the director of the Internet Storm Center.
"When (the first incident) pops up, we thought it might be someone that was infected and blamed it on the digital picture frame," Sachs said. "But this is malware – and malware that does not seem to be very well detected. You could plug in a device and infect yourself with something that you would never know you had."
And that’s possible in large measure, because of autoplay…something build into Windows that isn’t in other operating systems because most software engineers think allowing executable code to be automatically run from any media you happen to insert into a drive or port is just plain nuts. And because Microsoft thinks doing that is such a really really neat idea, there is no easy way to turn the goddamned thing off. You have to attack it in the system registry. Here’s a sample registry script for turning off autoplay that I run on all my Windows 2000 and Windows XP boxes:
If you’re still running 95/98/Me the value of "NoDriveTypeAutoRun" should be BD 00 00 00.
For those of you who don’t want to deal with directly editing the Windows system registry (and you should absolutely leave it alone unless you know what you’re doing!), there is an article Here on how to use the Windows Policy Editor. However that only works on Windows XP Professional, and I assume the pro grades of Vista. If you don’t have either of those, there is a little application from Microsoft called TweekUI you can download Here.
Vista, apparently has a new dialog you can access from the control panel that lets you configure each device and also individual media types. I haven’t worked with it myself so I can’t comment on how simple or intuitive it is, but apparently you can just uncheck a box at the top of the dialog and that turns it off for all media and devices.
The motivation here of course, is to make installing new software and new hardware devices more convenient. But convenience can end up being more hassle then its worth. It would be more convenient if you didn’t need a key to start your car too. Then you’d never need to worry about loosing your car keys. Just your car.
I was scanning my server logs last night and saw someone had hit this post of mine with the Google search string "can’t pull out key mercedes". I hope their problem was as absent minded as mine was, or more charitably, that I’d forgotten how you park a car with an automatic transmission. (Hint: you put it in ‘Park’). But as I was scanning the Google hits on that string (my post was forth in the list), I got to thinking about the anti-theft technology in it the key itself.
I posted this shot of my new car’s key the night I made a deal with Valley Motors to buy it. I’m wondering how many others reading it had the same first impression I did when I first laid eyes on a Mercedes-Benz key… That’s a car key??? It’s more of a dongle then an actual key, which makes sense given where automobile anti-theft technology is going. The Honda had something in its key too, that the on board computer authenticated it with. But it was also an actual key, in that it had a ridged steel shank like most keys that moved tumblers of some sort in a lock you turned to actually start the car. Mercedes just took the next logical step and did away with the steel shank and tumbler lock part altogether.
I’ve wanted one of these cars ever since I was a teenager. But when I actually took mine home, I found myself stressing out every night about it getting stolen while I was asleep. I’d wake up at random moments and trudge over to a window and verify the car was still there. A small, but non-trivial reason why I’m not leaving the car at home and walking to work every morning like I normally do, is because I’m still a bit afraid to leave it alone. The neighborhood I live in has enough retirees in it that there are always a set of eyes somewhere keeping watch over things. But I still stress about it. A few months ago a small SUV was stolen from a guy just a few houses down from me. But he’d left his doors unlocked, and an expensive tool kit set in plain view. Still…I read about car thefts and attempted car thefts in the local police blotters for my district. Lately, I’ve actually started mapping them out to see where the car thieves are most active.
Mine isn’t the only expensive car in the neighborhood…there’s others scattered here and there, and if you count some of the the big SUVs and pickup trucks there are actually quite a few vehicles within a few blocks of mine costing at least as much if not more then Traveler did me. But a Mercedes sticks out. I didn’t buy it for that…I really wish it didn’t, but last Halloween I had several dads walking their kids around complement me on the car, and ask me if they could check it out inside. Of course I happily let them…I know the feeling, I had it myself for decades. I gave them the whole tour of the car. But afterwards it worried me that the car sticks out like that. It’s bound to attract the attention of car thieves.
I’ve found that the best cure for the worries is to learn as much as you can about what’s worrying you. So that Google hit prompted me to do something I’ve been meaning to do, to ease my worries a tad about someone making off with my new car in the middle of the night. I started looking around for information about the anti-theft technology Mercedes is using now. In the process, I got a bit of an education about modern automobile smart, or "VATS" keys.
The GM system, for example, uses a set of fifteen different precision resistance chips that can be embedded in a key. The onboard computer knows which resistive value is supposed to work on its car and if you put a key with the wrong resistance chip in it in the ignition lock, the car cuts off fuel to the engine and starts a four minute clock that prevents the car from starting even if you insert a key with the right chip in it. Ford on the other hand, uses a small transponder embedded in the key that transmits a code to the on board computer. Some Japanese automakers use set of passcodes between the key and the car that rotate each time the car is started.
I was gratified to learn that Mercedes-Benz has a key so complicated it requires its own set of instructions. Sometimes complexity is a good thing. The moment you insert the key in the ignition a dialogue takes place between it and the on board computer, and the key’s digital passcode is verified and a new randomly generated passcode is assigned to it by the computer.
At that point, the steering wheel and ignition systems are unlocked and the car is made ready to start when you turn the key. I can hear the steering wheel being unlocked the moment I insert the key in the switch, as well as other very faint, gentle whirring sounds coming from somewhere inside the dash that I’m assuming have something to do with the climate control system powering up. So even before I turn the ignition on and proceed to start the car, it already knows that a valid key is in the switch and its unlocking things and starting up other things. It also grabs hold of the key slightly…not so much that you can’t pull it right back out again, but enough to make that something you have to deliberately do. And the moment you pull the key back out the steering wheel re-locks and the faint whirring sounds stop. So the car is, in a sense, unlocked and switched on the moment you insert what it determines is a valid key for that car.
My car came with two keys…I’m not sure if there is an upper limit on the number of keys you can assign to an individual car…but the on board computer keeps track of the keys that belong to that car, and which passcodes it has randomly assigned to what keys. There’s a set of button batteries in each key that are user replaceable. Not sure what happens to the passcode a key has when its battery dies, but hopefully its kept in some sort of flash memory.
Other luxury car makers such as BMW also use this system, but Mercedes is unique apparently in that it did away with the steel shank portion of the key altogether. Given the technology being used here, the shank part is now a tad redundant. You can probably expect to see steel shanked keys slowly disappear from cars altogether as the on board computer takes on more and more responsibility for preventing theft.
Hence, the current popularity of car jacking. If car thieves have to have the key in order to steal the car, then obviously they’re gonna try and get the key. Usually that means getting it away from you. So now I can rest a tad easier about the chances of my car getting stolen when I go to bed at night, or when I’m away from it. On the other hand, now I have to worry more about dealing with a car thief face to face. Ah well. This was why I was bullied so badly in junior high school…so I could grow eyes in the back of my head for thugs…
According to the documentation, my new Mercedes c300 will read in vCards from a Bluetooth enabled cell phone. That’s really handy, except my iPhone doesn’t do vCards. That’s just one of many common smart phone features Apple mysteriously decided to re-invent the telephone without. However, the Mac address book application does do vCards, and the Mercedes has a PCMCIA card reader slot in the dash, from which it can also import vCards (it can also be used to play MP3 files and update the Nav system maps). So I figured all I needed to do was export my address book entries from one of my Macs, onto a PCMCIA card, then put the card in the Mercedes and import them into the car’s address book.
Back in the day, PCMCIA cards were how you expanded a laptop. Nowadays laptops come with just everything you’d want built-in, but I had on hand several old PCMCIA cards, including modems and Ethernet adapters, that I’d bought for laptops I’d previously owned. But I had no PCMCIA memory card. So I went looking for one online. They’re not exactly hot selling items anymore. I saw very few and those had very little memory on them by today’s standards. They also cost far more then the Compact Flash cards I use in my digital cameras. But lo and behold, there were PCMCIA Compact Flash card readers available for sale cheap. I could buy one of those, and pop one of my flash cards into it, and that had the extra added advantage that I already had a USB Compact Flash card reader.
I bought one from B&H Photo, who I’ve made a lot of online purchases from, for about ten bucks. It came in the mail today, and right away I put my plan to work. I connected my USB flash card reader to Akela, my Mac Powerbook, and exported a few selected entries from Akela’s address book onto vCards onto one of my Compact Flash cards. Thanks to my .Mac account, all the address books on my Apple computers plus my iPhone sync with each other, so Akela had the same address book list that my iPhone did.
Then I put the flash card into the PCMCIA card reader and took it out to the Mercedes. You activate the Command-Nav system and bring up the Phone menu, and then work your way into the Phone’s address book where you eventually find a menu item that’s normally grayed out, for importing vCards from a memory card. Once I popped the PCMCIA card in the slot in the dashboard that menu item came to life and I clicked on it. A little timer icon came up, and pretty quickly I got a message saying the import process had completed successfully.
Well…not. Most of the address book entries were malformatted. Some wouldn’t even come up when I clicked on them, but only displayed a “Function Not Available” message. I figured the Apple vCard format was different enough somehow from the standard, that the Mercedes software wasn’t able to cope. So I went back and tried exporting the vCards again, but this time from the Palm Pilot software I still had installed on Akela.
Once again I selected a few entries in the address book…only the ones I figured I’d want to call while on the road. This would be mostly immediate friends and family. I figured once I had the process down, I could add entries later as needed. Once again I copied the exported vCards to my Compact Flash card via the USB card reader, then popped the flash card into the PCMCIA card reader and walked it back out to the car.
I did the import and was horrified to see that the damn Palm Pilot software had exported not just the address book entries I’d highlighted, but Everything in that address book. Every phone number and contact I’d ever acquired in the last fifteen years or so. The Mercedes phone book was a complete mess now, though at least the entries seemed to be properly formatted. But it was too much. And I discovered then, that there was no way to delete a bunch of records from it all at one time. I had to go through each individual entry and manually delete it.
After about the first thirty I got frustrated enough that I started looking around for a way to just blow away the whole address book and start over. I found a “Reset” command under the “System” menu and gave that a shot. It promptly warned me that I was about to erase all my data and I figured that since I’d only had the car a few days, I didn’t have enough of my own data on it to worry about having to rebuild everything. It deleted everything, including all my radio presets and my Nav map customizations. But thankfully it didn’t delete the Bluetooth setup with my iPhone, so I didn’t have to go through that process again. And it didn’t delete the Gracenote database entries it had found for the CDs I had in the changer.
I spent a couple minutes redoing my radio presets and my Nav map settings, and making sure my iPhone was still talking to the car. Then I went back inside and sat down with Akela and looked at the preference settings for the Apple address book application. My theory at that point was that maybe the photos I’d attached to some of the entries in my iPhone contact list were getting into the vCards and confusing the import software on the Mercedes. So I looked around for a setting that allowed me to specify which fields in the address book I wanted included in a vCard. There wasn’t one of those, but there was a setting to choose between exporting a 3.0 vCard or a 2.1 vCard. I decided to give the older 2.1 format a try.
I redid the export, and walked the card back out to the Mercedes. It worked. The import went without a hitch, and all the phone entries were now correctly formatted.
That task finally finished, I flipped over to the Nav system to see if it got all the addresses. That was when I discovered that the car’s phone book, and the Nav system address book, were two entirely different entities. I could import vCards into the phone book, but the Nav system required you to manually enter every destination you wanted to save, and it offered no way to link those to the phone book entries.
I suspect that’s because the Nav book has its own database of city and street names that it uses to compute directions. Whenever you enter a destination into the Nav system, you go through a series of menus that drill you down to the street address. So for instance, to get to my workplace, The Space Telescope Science Institute, which is at 3700 San Martin Drive in Baltimore, first I select my state, “Maryland” from a pulldown menu that lists all the states in the U.S. Actually, Maryland comes helpfully pre-filled in the state field, I assume because the Nav system knows I’m in Maryland. Once I’ve selected my state, select “Baltimore”, again from a menu that lists all the named cities and towns in Maryland. When I’ve done that, I can go to another menu that lists all the named roadways in the city of Baltimore and select “San Martin Drive”. You’d think that having done that, I could simply enter the street address using the numeric keypad on the dashboard. Nope. The system gives me another menu, with all the valid numbers for that street. I can’t enter 23 San Martin Drive, because there is no such address on San Martin Drive in Baltimore, Maryland. But theoretically I could have a vCard with that wrong address on it, or a misspelled street name, and the Nav system wouldn’t know what to do with it.
But still, it would be nice to at least be able to link the phone number in the Phone book, with a physical destination in the Nav system, even if you had to enter that one in manually using the Nav system’s built-in street maps. The software engineer in me doesn’t much like the idea of having redundant information in a database. There should only be one contact list, that both the phone system and the Nav system use. I can accept not being able to import addresses from vCards into the Nav system, but at least I should be able to link a Nav system destination address with a name and phone number entry in the phone book.
But at least I got all my critical phone numbers copied over. I’ll add the addresses into the Nav system as I need to. Hopefully Apple will add vCard functionality to its re-invention of the telephone and then all I’ll have to do is sit in the car with my iPhone and send updated vCards to the Mercedes’ phone book via the Bluetooth connection.
I bought my iPhone yesterday morning, after hemming and hawing over it for…oh…about 38 hours. 38 hours being the timespan between the moment one of my friends showed me his iPhone, and getting my hands on one of my own. For some time now I’ve been waiting for that all-purpose cell phone/music/email/entertainment widget to appear on the market and I figured the iPhone would be it. But I wanted to wait a generation to let them work out the bugs. Then I had a chance to get my hands on one and I realized then that I’d been thinking about this sort of device all wrong.
Last Wednesday I’d been invited over to a friend’s condo in Washington D.C. for the annual fireworks show. From John’s condo you can see the Mall fireworks nicely. I stopped by my friend Jon Larimore’s place beforehand, where he and his boyfriend Joe were waiting to spring the trap on me. "Look at what Joe bought me," says Jon happily as I walk in the door. He’s holding out his iPhone. Joe had walked into an Apple store the day before and bought two, one for himself and one for his other half. A few hours later we drove over to John’s condo for the fireworks. Our usual Friday happy hour gang showed up along with some of his other friends. The crowd was mostly gay computer geeks, a subset of gay you won’t generally find in the movies they show on Logo. Everyone swarmed around John and Joe’s iPhones like bees to honey. I couldn’t blame them. The moment I got my hands on one, my fingers just didn’t want to let go.
They are sweet little gizmos. The touch screen user interface is the candy that attracts the eye, but what attracts the imagination is how it brings together several different threads of information technology into one device, and right away you can see ways in which they relate that you didn’t before. The one thing a little gizmo can do to win my heart is show me something I wasn’t expecting from the technology, but which in retrospect I should have seen coming. In the case of the iPhone, believe it or not, what it was, was the integration of the wireless networks, the address book, and Google Maps. Suddenly I had a map of the whole goddamned world in the palm of my hand and it could tell me exactly where everything in my address book was located, from where I was standing right then, right that moment, if I wanted it to.
The iPhone doesn’t have a GPS unit built-in yet, but I can see that coming down the road. Still, if I need to see where I am on a map in most urban zones I can just walk up to the nearest door, read the street address off it and plug that into the iPhone and get my location on a map back. Then if I want to know where a certain place is from where I am I can plug that address in, perhaps from my address book, and I get back a map with path lines and a set of directions. Or if I just want to see what’s in my general vicinity I can scroll around the map with the touch of a finger or two. If I’m planning on driving somewhere, a few touches here and there and I can get a traffic map of the area. Two fingers can zoom out or zoom in on just about any iPhone display with simple, obvious, pinching or expanding motions. The user interface is sweet. The screen is made of glass, not plastic, and the entire unit feels solid to the touch.
James Burke once said that data isn’t important. What’s important are the connections between the data. My old Kyocera Smart Phone linked my Palm address book and the cell phone in a way I thought was useful. So when I decided to get the iPhone I migrated my Palm data into the address book and calendar applications on Akela, my Mac Powerbook. Then I bought a .Mac account so the address book and calendars on both my Macs could sync up with each other, and then the iPhone, even when I’m away from home. (The only major gripe I have so far with the iPhone is that the note taking applet doesn’t let you sync your notes too. I really need that. But I can wait for it.) So now I had the links between my address book and the iPhone established. To that I added links to my two household Macs, and the web too, since a .Mac account allows me to view my personal data from anywhere, and share selected bits of it with others. Then yesterday while I was at Jon’s house, Jon showed me how you can tap on an address and the iPhone will bring it up on Google Maps. Seeing how that worked I realized that there wasn’t any reason now, why all my personal data can’t be linked in some way to the general storehouse of information on the net, and that those links could tell me things about my personal world that I hadn’t seen before.
We had our usual happy hour last night, and I and another friend, Tom, brought our brand new iPhones along. You have to picture this little clutch of gay geeks walking into a gay bar brandishing iPhones as we chat with each other. Later that evening several of us were driving together out of D.C., chatting about this and that. The conversation strayed to books we all wished we’d had the time to read and Tom, asked me if I’d ever read a certain mystery writer. I said I hadn’t and tried to tell him about another one whose books I’ve just loved over the years and I had a brain block and for the life of me I could not recall that writers name at just that moment. So while we’re all riding down the highway I start tapping away on my iPhone. I bring up Google and do a quick search on the names of two of this writer’s characters I remember, and I instantly get a page of search results back that tell me the name of the writer. That took me maybe thirty seconds. Then a few more miles down the road the conversation stayed into singers and sentimental songs and Vera Lynn and how you never hear those deeply felt sentimental ballads on the radio anymore. I mentioned a favorite of mine from my teen years that I hadn’t realized until recently was about the Vietnam war and Jon asked me who had composed it and once again I got a brain block and just couldn’t remember the name of the composer. A few taps on the iPhone later and I had it.
There’s a story I’ve heard the science-fiction writer Arthur C. Clarke tell. He was trying to make a point about space exploration, but I think it makes the same point about any emerging technologies. Suppose, he asks, you could go back about 500 million years and ask a reasonably intelligent fish why fish should bother trying to colonize the land masses. Fish breath and live in water. Air is a dangerous place for fish to be. Colonizing the land would be costly and difficult. But this particular fish, being a reasonably intelligent and progressive member of his species, might be able to give you many, logical, sound, progressive reasons why, despite all the hazards and cost and difficulties, fish should try to colonize the land. It might tell you that in learning to colonize the land, fishkind would learn more about how to take care of the seas. It might tell you that all sorts of new technologies would be invented along the way that would benefit the lives of fish. It would never have thought of fire.
So…last night I rode down the highway with some friends, looked at the iPhone in the palm of my hand, and I beheld fire. There are other devices recently that have tried to put all these technologies together into one hand held device, but they’ve been really awkward to use, or at least I’ve found them so and I’m someone who never had trouble programming a VCR. In the iPhone Apple has brought everything together into a seamless whole and now suddenly you can see a horizon before you that you never expected: what life is like when the answer to anything you want to know is literally in your pocket. As time goes on other companies will probably take the hint and start designing these devices to be more then simply cell phones with some extra widgets tacked on. The phone part of the iPhone may end up being the part of it I use the least.
Yes I am interested in owning an iPhone. But not the first generation ones. I’ll wait. But I’ve been wanting that all in one communication, personal information store, entertainment, wear on the belt or put in your pocket widget for years now. The thing needs to grow a little more memory, and shrink a tad less in cost though. But it will eventually.
"Microsoft has admitted, in an email to the press, that ‘some customers may be waiting to adopt Windows Vista because they’ve heard rumors about device or application compatibility issues, or because they think they should wait for a service pack release.’ The company is now pleading with customers not to wait until the release of SP1 at the end of the year, launching a ‘fact rich’ program to try to convince them to…
"Fact rich"? "Fact rich"? "Fact rich"? Well that certainly helps me make up My mind about running Vista. Hell will not only have to freeze over, it’ll have to turn into ice cream too.
Momentarily abandoned by the two people at the party that I know well, I am engaged in conversation by a yellow Crocs-wearing, pop-collared, fauxhawkedangertwink:
Angertwink: So, Rob said you are a writer?
JMG: Depends on your definition. I have a blog.
AT: A what? A blog? Wait, is that on the internet?
JMG: What, you seriously don’t know about blogs?
AT: Um, I don’t know, I guess I do. Like, name one.
JMG: Well, I guess one of the most famous ones is Andrew Sullivan’s…
AT: Andrew…. who? Oh, right! That guy who killed Gianni Versace!
…and I have to open a Google Image page and first I Google "Crocs clothing" because I figure it’s an article of clothing he’s talking about.
Oh Sweet Jesus…
No! No! No!Please dear God keep those goddamned things off of cute guys! Next I have to Google "faux hawked" Ugh. Those… Then I Google "popped collar" Meh… Then I Google "angertwink" and I’m back at Joe. My. God…
Angertwink (noun):
A young urban gay male who goes through his life very angry because:
1) The rest of the gay world does not recognize his incredible hotness.
2) The rest of the gay world is not incredibly hot, like he is.
Identifying characteristics: Angertwinks can often be spotted wearing fauxhawks, popped collars, and expressions of disgust.
Angertwink was coined by my friend Dagon, on his blog At The Mountains Of Madness. (Example: here). After a few beers last night, I told him that he had to get this word into UrbanDictionary.com or Wikipedia or something,
I dunno… How angry can you be when you’re wearing goddamned Yellow Crocs?
Why Less Then Half Of My Generation Even Bother With PCs
Via Slashdot… The Pew Internet and American Life Project has released a report outlining who among us are using computers and computer technology regularly. About half of my generation hardly even bother with it all. God, I hope they’re not all getting their news from Fox…
Memo To A Certain Someone Down In Orlando: Yes…I know. Computer technology can be a real bear sometimes. And my trade is largely responsible for that, and I’m sorry. We should listen to the people who have to use the stuff we create better then we do. But there is a whole wide wonderful and enriching world out there that you’re missing. A world where a casual stroll down a trail can take you from Mark Twain to H.L. Mencken to Einstein to the study of extra-solar planets. The blazes on these trails span the written word to the spoken one, to new music, paintings, photography from all over the world. An afternoon hike can take you across time and space, to the light from near the beginning of time. It’s worth the hassle it often still is. Really.
The upgrade to Bagheera’s secondary hard disk went…okay Mostly. I mean…I got everything working and I’ve gone through worse. Much worse actually. All in all I have to say that upgrading the hardware on a Mac is not a bad experience at all. But it threw me for a couple pretty big loops nonetheless.
I needed to increase the capacity on Bagheera’s secondary hard drive. Bagheera is my art room G5 tower (PowerPC), and I use it for both my cartoons and my photography. I have both the good scanners attached to it, including the new Nikon Coolscan 9000 that I’m using for the Big Scan project (basically, I’m scanning in every negative and slide I ever took since I was a teenage camera bug)
I did one last backup of the old drive and then turned off Bagheera and let its innards cool down for a bit. Then I opened it up. I swear every time I open Bagheera I just have to marvel at how cleanly and…stylishly…its innards are laid out. I often think of Apple as the Bang and Olufsen of the personal computer world. The old drive came out and the new on went right in and I had it all connected in a snap. Then I gave the insides a good dusting with some canned air and the big Kirby vacuum (with the hose attachment of course!). There wasn’t much dust. I’d had it apart just a couple months ago for the memory upgrade. Then I put it all back together.
OSX booted right up and instantly saw that there was a disk inside that hadn’t been formatted, and offered to start up the disk utility. I formatted the new drive with the same file system as the old (Mac OS Extended), and gave it the same volume name. Then I started up Retrospect, which is my backup software, and let it do a restore overnight.
The following morning everything was done, and I rebooted…twice. For some odd reason Retrospect doesn’t properly reset some file permissions it mucks with during the backups when its done, and OSX always asks if I want to fix them during boot up, which requires a restart. So… reboot… reboot… Once that was out of the way I tried starting up iTunes, to see if it could read from my music library. I had a concern that the change out of the hard disk its library was on would cause the iTunes DRM crap to balk. But…not. It seemed to be playing things just fine. But it was not what it seemed. (sigh) More on that later…
Then I started up Aperture, and here’s where it first started getting weird. Aperture found its special library folder on the new drive just fine, but it insisted that the drive where it thought all my master image files were on was now "offline". Crap. Somehow it knew the old drive wasn’t there anymore, and it wasn’t buying the same volume name on the new one.
Here’s why that mattered: Aperture is among a new category of image editing and management software aimed specifically at photographers. Another one is Adobe’s Lightroom. I happen to like Aperture much better, but your mileage may vary. The difference between it and, say, Photoshop, is that it begins with the photographer’s understanding of the negative (or slide) as the master, the source, from which all begins, and from which everything flows. The negative contains everything there is to know about that particular image. You cannot add information to it. It is your source. To alter it in any way removes information from it. That’s damage. Every print you made from then on, would be limited in scope by that damage to that negative.
So unlike Photoshop, or most other image editing software, these programs for photographers perform non-destructive editing on the original image file. Basically, changes are stored in separate files almost, but not exactly, like deltas. More like recipes for making a final image off the master. This leaves the original master files untouched, and allows infinite versions of it to be created and saved in the deltas. When you create a new version of the image, the software reads the master image file, applies the changes it finds in the deltas, and writes out an entirely new file, leaving the master untouched.
In a way this is similar to how it works in an actual darkroom, where you load your negatives into an enlarger (or if they’re big enough, a contact printer) and you make prints. Perhaps you choose a particular paper contrast grade, or use a certain kind of filter on the enlarger. Perhaps you expose the paper a certain way or develop a certain way, for a certain desired result. Perhaps you crop the image just so, or burn and dodge certain areas of the print while you’re exposing the paper. The important thing is that the print is a version and the negative is the master.
For this non-destructive form image editing to work in software, the program needs to always have the master image files where it can get to them. Otherwise the delta files won’t be of any use, since all they contain are the edits. So I needed somehow to convince Aperture that all those files on my new hard disk were really the masters it was looking for. Otherwise I’d have to rebuild its library from scratch, loosing all my previous edits (Like the ones I made for the Rehoboth Beach photo gallery I currently have up).
So I asked a few questions on Apple’s Aperture support board, and came to find that Aperture doesn’t go by the volume name, but by the "hidden" volume ID, which is a kind of unique serial number. This, I was told, is in case the user decides to change the volume name. Swell. Another case of the software protecting you by making simple chores a lot more difficult.
I was pointed to a "manage referenced files" function inside Aperture, which I’d actually used before but on a much more limited scope. For an Apple dialogue it is very, very counter intuitive, especially for ‘reconnecting’ an entire library tree. First you point to the top level of the Aperture Library in the Projects panel, and then File -> Manage Referenced Files. The Manage Referenced Files dialogue comes up and at the top are the available drives and a list of all the managed files. I note that now have two drives in the list of available drives with the same name…one I guess, that will forever read ‘Offline’. So you need to select the first file in the list of referenced files. In the bottom panels in the Manage Referenced Files dialogue, is something like a column file system listing like you might see in Finder. You need to drill down to the location of the file you’ve just selected in the list above and select that. Basically you’re now telling Aperture where to find the file. After a few moments the ‘Reconnect All’ button activates. But it looks from there like you’re telling it to look for files from the point in the directory structure you’ve just drilled down to…not the entire tree.
I…guess…what’s going on is there is some code in Aperture that compares the difference between where it thought the file was, and where you’re telling it that it is now, and it goes like…ohmygod…only the Volume ID changed…maybe I can find all the other files I’ve lost by Just Changing The Volume ID too…!!!! Which is fine because it really saved me a lot of work, but I’ve never, never in my life seen a dialogue this confusing from Apple. It’s very weird considering how lovely the rest of Aperture is. I am absolutely in love with Aperture. I guess there is a period of adjustment in every relationship.
It took Aperture about a half hour to reconnect everything (I have a lot of master images already in there from the Big Scan), but when it was done I had my library back and everything was working.
So I figured I was done. I had some changes I wanted to make in the Dreams of Baía cartoon I posted the other day (mostly just to make the text in my thought balloons clearer…and also to reformat the song text a tad more nicely), so I started up Photoshop and started working on that. All my cartoon scans for the past five years were still there and readable on the new drive as far as I could tell. Photoshop came up and loaded my cartoon panels without complaint. While I was working I decided to bring up iTunes so I could listen to some music. That’s when I got my other unpleasant surprise.
iTunes began complaining that it couldn’t find about four-fifths of the music I had in my iTunes library. WTF!!!
Computers. They’re like children. They don’t break things because they hate us, they just do it to make our hair go gray. It’s part of their job description.
It seems that on the initial reboot after I’d just installed the new drive, and before I even had a chance to do the restore, some part of iTunes was running and when it couldn’t find its library, it reverted to the one it installs by default on the main drive, which I’d left there when I moved the music library to the secondary drive some time ago, because I was afraid there was some DRM crap in there that I didn’t dare delete. It apparently still had copies of all the music I’d put into it before I moved it, and that was what I’d been testing on, unbeknownst to me, the first time I brought iTunes up after the drive restore. So I only thought it was all working.
I opened the iTunes preferences dialogue and in ‘Advanced’ there is a field where you can tell iTunes where its library is. I pointed it back to the one on the secondary drive and a little button labeled ‘Reset’ activated. I gritted my teeth and clicked on it, and iTunes did a scan of the Library on the new drive and one by one all the little I Can’t Find This icons disappeared from my music list. Then iTunes offered to consolidate my library folders and I let it do that too and then iTunes was happy again and I could stop sweating.
So for the moment I think I have it all working now and I have an additional 300 gigabytes of storage that I can fill up with the Big Scan project. But in the meantime I’ve taken the old hard drive and put it carefully in the box the new one came in and stored it safely away. Just…in case…
I’ve been getting very tired of having to shut down Linux and boot into Windows, every time I just wanted to run my checkbook program. That one little program is pretty much all that’s tying me to Windows now for my own personal use. Between the Macs and Linux I can pretty much deal with the other hassles of living in Bill’s World. But there is just no good replacement for that checkbook program I use that runs on Linux and that’s surprising because I don’t ask much of a checkbook program. I just want something to reconcile my bank accounts with the statements and, most importantly, print standard wallet size checks. Yet there is nothing out there for Linux that prints those kinds of checks, something both Money and Quicken have done since the MS-DOS days.
So that leaves me stuck with my old checkbook program, which is Money 97. Yes…I’m still using Money 97. I like the user interface, and it just works. But not in Wine, the so-called Windows emulator API for Linux. And that doesn’t surprise me because I don’t think anything I’ve ever tried to run in Wine has ever worked. But recently I was tasked to investigate VM technology for possible use in the software test center where I work. As I did so, I began to think VM technology might be my answer…at least until a viable native Linux alternative to my checkbook software popped up.
A Virtual Machine is a program that emulates hardware, and upon which you can (theoretically) run a different Operating System within the one currently running. Until the Intel based Macs came out recently, Macintosh users could use a product called Virtual PC to run Windows in, and thereby the Windows applications they needed that simply didn’t exist for the Mac. You have to have a license for the "guest" OS you’re running, and there is a performance penalty due to the overhead of running inside an emulator. But it makes running two different OSs at the same time on the same physical machine possible.
VMWare offers two free products that will run on Linux: VMWare server and VMPlayer. But the server wasn’t really the kind of desktop setup I was looking for, and the free VMPlayer will only run pre-made VMs. I did a little looking around though, and found some websites that will allow you to download a kind of VM template for Windows…an empty VM that’s ready to install the OS in. I tried the one on www.easyvmx.com. It limits you to a 640×480 desktop, and puts Windows in it’s own isolated disk image based file system. But it allows network card bridging (your guest OS can have its own network address). You just fill out a few items in their form and then you download your ready to run VM. I gave my VM a 10 gigabyte disk image to play in, and 1 gigabyte out of my 4 of core ram. I figured even if it was locked into it’s own private file system, I could still share files via the network.
I decided I would run my copy of Windows 2000 inside the VM, since there is no software branding on 2000. I assumed that XP would regard the VM as a new machine, and it only allows you to re-install it on two new machine configurations before you have to call Redmond and explain to them that you’re not a pirate. I’ve already used one my XP license lives due to a motherboard failure on Mowgli so I didn’t think I’d be able to install XP at all on VMPlayer.
VMPlayer installs via your usual Linux rpm package, and it set up without a hitch on CentOS, which is the Linux I’m running here at Casa del Garrett. The VM I downloaded from easyvmx came in a zip file that I unzipped in my home directory. First you have to run the VMPlayer config script, vmware-install.pl which makes you agree to a license, and then confusingly asks you many of the same questions that the form on the easyvmx website does. After that’s done you can run the VM by simply entering “vmplayer (vm).vmx” where (vm) is the name of the .vmx file in your easyvmx VM template directory.
When it first comes up without the OS installed it tries to boot, first from the CD player and then from the floppy. So you install your guest OS just as you would if you were installing on a naked PC. So far so good. My Windows 2000 install CDs boot from a set of four floppy disks. VMPlayer was able to boot from them and then install from the CD without trouble. When it comes up, it does so in a small 640×480 window. When you click inside the window your mouse and keyboard work with the guest OS. But to get back out of it you have to hit control-alt. You can also hit alt-g to enter the guest OS.
Unfortunately I couldn’t get my network card to work with it, and that was a deal breaker. Without networking I’d have been reduced to shuttling my checkbook files back and forth via the floppy drive or the CD, assuming I could get CD burning software to work on it. Still not sure what the problem was since from what I’m reading VMWare seems to work just fine with nearly every network card out there. Worse, I also couldn’t get it to work with my printer, which I would have needed to print checks from my checkbook program. The VMPlayer kept complaining it couldn’t access the LPT port. I figure my default print queue was holding it open. I might have been able to access the print queue alternatively via the network, but I couldn’t get networking to work. So I was hosed.
So that left me with either springing for VMWare Desktop ($190), or another product, Win4Lin (currently $70). The reviews of Win4Lin looked promising, and this Wikipedia page gave it a pretty good looking pedigree. Even better, Win4Lin claimed to integrate the guest OS with the Linux file system directly, something VMPlayer wouldn’t do, so I could easily share files with it without needing the networking, if I couldn’t get my card to work with it. Win4Lin pro sells for $70 currently. The web site claims the price is only good through October of last year (the normal price is $90), but I was still able to buy it at the sale price. They offered a money back guarantee. It looked promising so I decided to take a chance on it.
Win4Lin’s requirements page practically screams at you that they won’t support anything but certain Windows bootable CD-ROMs (oddly…all Win2k bootables except SP3)…yet when I read the documentation it looks like it will install a Guest Windows OS from bootable floppies too, as well as directly from an MSDN library disk…which could be really handy because the only other way to install Windows from an MSDN disk on a naked PC is to make bootable floppies.
But based on what I read from their requirements page, I looked around for ways to make a bootable CD from my MSDN CDs. I found this page, which gives you a good set of tools and step by step instructions. Except it was only after following those instructions and creating a Windows 2000 CD with service pack three on it that I discovered that SP3 is The One Windows Install CD That Win4Lin Does Not Support. Dang. So I had to go back and make another bootable CD without the service packs.
Win4Lin installs via an RPM, just like VMPlayer, and needs certain kernel development packages handy on the host machine to allow its service module to be built on the fly. The documentation leads you through installing these on your Linux box on a wide variety of different distributions, but it seems as though all it needs is the kernel development package and the GCC compiler, so I can’t imagine any distribution that wouldn’t be able to run this. The rpm installed on my CentOS system without a hitch. After the rpm is applied, you run a configuration program which sets up the VM and its service, asking you some questions along the way about how much memory and how big you want the system disk image to be, and whether or not you want it to access the Linux file system.
Then you run a "load Windows" program which gobbles up your bootable CD into a disk image. They advertise a simple “one-click-to-Windows” setup, but I chose to do each step myself from a terminal window. When I ran this part of the install it worked for a while and then complained that it couldn’t read my Windows CD. So I put in a different one and ran it again. This time the software complained that a Windows CD had already been “installed”. Hmmmm. I tried the optional command switch that allows a reinstall of the Windows CD, and the process started back up again, and after reading the CD for a while gave me the same error message it did before. So just for kicks I just went to the next step, which was to run the Windows install off the CD image Win4Lin had theoretically just gobbled up. It ran without a hitch. I’m guessing that for some reason the disk image program just wasn’t handling the end of the CD correctly.
The "install Windows" program runs the Windows installer off the disk image it just gobbled up, and then promptly shuts down the VM, and puts a link on your desktop. Double click on the link and a new window comes up and you can watch Windows booting inside of it, just as if it were booting on a stand alone PC. Win4Lin gives it a nice 1024×768 desktop window right out of the box. I’ve not tried fiddling with it to see if I could change anything. There is a full screen mode too, which I’ve not examined yet.
Moving the mouse cursor into the window made the VM and its guest OS active, moving the mouse out made my Linux desktop active. The first thing I noticed was that the keyboard sometimes got confused as to the state it was in when I went back into the VM from the Linux desktop, and appear to be locked up. It wasn’t, it was just in the wrong shift state for some reason. I eventually discovered simply hitting the alt key whenever that happened would clear it up. Hitting Shift F12 while inside the VM window brings up a menu of special keystrokes you can send to the guest OS, such as control-alt-delete, and the cut and paste functionality.
Networking worked right off the bat. I could bring up IE and it went right out to the network without a hitch. Charmingly, Win4Lin had somehow made their home page my browser’s initial default home page. I reckon that happened via some OEM switch they used during the install. Win4Lin does not support network card bridging, so my guest OS had the same network address as the host. But it all seemed to work just fine.
Integration with the Linux file system in Win4Lin works like this: Windows is installed on it’s own disk image file under your /home/winpro directory. This becomes your Windows ‘C’ drive. But Win4Lin also puts in a link to a “//HOST/home/My Documents” directory it creates (if it isn’t already there). In your Windows explorer this looks like your usual My Documents directory. But it’s on your Linux file system as a normal user directory. You can put symbolic links in that directory to other parts of your file system as needed, and they show up in your Windows explorer as folders under My Documents.
If you install Windows off a disk image that Win4Lin has gobbled up, that image also shows up on your Windows explorer. So any time you change your Windows configuration and it needs to fetch something off your install CD it’s always right there. I suppose this is why they want people to install Windows their way, and not directly off the install CD.
You add your printer by adding it as the network printer: //HOST/host-printer, and then specifying the Apple LaserWriter printer driver. This is a generic postscript printer driver that talks to your default Linux print queue. Following those instructions I was able to get Windows talking to my old HP Laserjet from within the VM without any trouble.
Then I installed my old version of MS Money. The autorun CD feature on Windows works just fine on Win4Lin. You put the CD in and, on CentOS anyway, the CD auto mounts and (since I’m running KDE) a Konqueror browser window automatically pops up, as usual. But if the Win4Lin VM is up, the Windows running inside it detects the inserted CD too, brings up an explorer window on it, and the autorun feature starts if present. The Money install went off without a hitch. Then I ran the check printing setup, and printed a test check. It came out exactly right.
So I was in business. I decided to bring my Windows 2000 instance fully up to date. I installed IE6, and then ran Windows update to bring it up to it’s final version. Redmond won’t be producing a version of IE 7 for Windows 2k. But the last version of IE 6 is enough to get me past another couple of Linux/Firefox annoyances, such as my UMUC online web class site, which oddly keeps insisting that the current version of Firefox doesn’t support Javascript 1.5, on Linux, but when I run it on the Mac and Windows it’s fine. When that was done I had an IE I could run from within Linux for those occasions when I was hitting on a web site that only worked right in IE. As a test I logged onto my UMUC web classroom able to navigate around it without any problems.
After I had IE6 up to date, I could install the latest Windows Update active-x control and finish updating Windows. That was when I realized something else about running Windows inside a VM. What’s nice about Linux and MacOS is that doing a system backup is a fairly straightforward process, compared to Windows. There are no hidden system files or delicate registries…it’s just a matter of copying files from one place to another. In the VM, the Windows system disk resides on a disk image file and that makes it a simple matter to back up and do a system restore of Windows if necessary. I made several safety backups of my Windows VM image file as I went through the process of applying all the Windows 2000 service patches, until I had an up to date (or as up to date as it will ever be now that Redmond has pretty much stopped supporting it) Windows 2000 installation.
Then just for kicks I tried installing iTunes for Windows. You can share your iTunes library on your local network, and when I’m running XP on Mowgli I can listen to my iTunes library on Bagheera, which is my iPod’s authorized computer, through the iTunes instance I have installed on Windows. I thought it would be nice to be able to listen to my iTunes music while running Linux too. iTunes installed in the VM okay, and after I poked a couple holes in the CentOS firewall for its ports, it detected the shared library on Bagheera. But nothing would play. Nothing. Not the DRM’ed music nor the non-DRM-ed stuff I’d ripped from my own CDs. iTunes would just sit there, with not even the track elapsed time counter moving. As a test I tried directly importing and playing a local mp3 file into it and it still wouldn’t play. I don’t know if that’s a Win2k issue or one with the VM, but I ended up uninstalling iTunes. Oh well. I can still plug my iPod into Mowgli’s audio input jacks.
The soundcard is gracefully shared between Windows and Linux. I could get Windows media player to play some mp3 files in Windows and XMMS to play those same files in Linux. I didn’t try playing them at the same time, I just wanted to know that playing one wouldn’t stomp all over the other. It didn’t. The desktop sound effects in both CentOS and Windows worked fine while the VM was up.
I installed only the basic Sun Java VM, not the SDK. Then I installed my copy of Office 2000, mostly just for files that only Word or Excel would read. So now I pretty much have everything I need to keep running Linux nearly all the time, without needing to swap hard drives back and forth whenever I suddenly need to run a Windows only program.
Windows runs without any noticeable sluggishness on Mowgli inside this VM. Mowgli, let it be said, is a 2 Ghz AMD Athlon 3200 64 bit machine with 4 gigabytes of ram. I installed all this on 32 bit CentOS though.
It works. So far, I’ve zero complaints about it, and I’m a bit amazed. This was really very simple to do with this VM product.
"The Hindu, a leading national newspaper, reports that the Communist government of Kerala (the state with the highest literacy rate in India) has announced its all-out support for FOSS in the draft IT policy announced yesterday. The draft also calls for preferential treatment for companies coming forward to work in the FOSS domain.
Wasn’t it Microsoft CEO Steve Ballmer who said that open source software was a Communist plot…?
Platt, who has also written nine books for computer professionals, has a message for software developers: "Your. User. Is. Not. You."
People who write software programs value control. The user, on the other hand, just wants something that’s easy to operate.
To illustrate his point, he notes that computer programmers tend to prefer manual transmissions. But not even 15 percent of the cars sold in the United States last year had that feature.
I bought the Honda Accord over the Toyota Camry because Honda would sell me a nicely dressed up Accord with a stick, while Toyota would only sell me the economy version with a stick.
This blog is powered by WordPress and is hosted at Winters Web Works, who also did some custom design work (Thanks!). Some embedded content was created with the help of The Gimp. I proof with Google Chrome on either Windows, Linux or MacOS depending on which machine I happen to be running at the time.