A Slave to My Tools

Last night, my hitherto faithful iBook began exhibiting some bad behaviour: At certain times, for no apparent reason, the LCD would turn off, and although to all other indications the system was up and running just fine, I could not get the machine to restore its display. After shutting the system off, I let it sit for a while, and then restarted it—whereupon it came back up normally for a few minutes, and then the same problem recurred. Although the machine did not feel hot to the touch, I suspected that perhaps there was some heat-related trouble, since that can often cause erratic behaviour.

Since it was late, and I wasn’t in the mood to spend several hours troubleshooting broken hardware, I left the machine to cool its jets next to the air conditioner overnight. When I came back in this morning, however, it exhibited exactly the same symptoms—and this time it was shortly after power-up, before the OS even booted. The exact behaviour was strangely inconsistent—sometimes, the system would not even pass its power-on self-test; other times, seemingly at random, it would boot all the way up and let me log in. Clearly, there is some kind of hardware failure at work here, but it was intermittent, which always makes for a difficult diagnosis. Happily, there was no data corruption on the hard drive, the display seems to work fine when it is powered up, and I was able to get a clean backup of all my active data.* But I really wanted to get some idea what is going on, so I can figure out what it would take to fix it.

So, time to do a bit of research. After trolling around on some Macintosh web fora, I learned that this behaviour is not only unusual, but it is in fact a fairly common problem. There’s a good discussion of it over at AppleFritter, but the executive summary of the problem is this: The graphics processing unit (GPU) in iBooks can sometimes loosen from the logic board, causing the system to wedge and the screen to go black. Flexing of the laptop’s frame can presumably exacerbate this problem, and since I am a fairly mobile user of my laptop, it’s not too surprising that I wound up getting bitten by it.

When this problem was first discovered, several users discovered that if you put some pressure on the left side of the laptop—say, using a wood clamp and some flat pads—you could get the system to boot and operate fairly reliably. I tried this, just using the weight of my arm, and sure enough I was able to get the system up and running again. Remove the arm, and after not too long, it failed again in the same way as before. With some of the earlier iBooks, folks were able to get things working by slipping a shim in between the plastic case and the metal grounding-cover over the GPU, so I figured I’d give that a try.** Since my iBook has the GPU in a slightly different place, I had to experiment a bit to get it to work—but eventually I found that a slice of packing foam placed a bit northwest of the video cable’s connection to the logic board let me boot up and use the machine consistently.

Episodes like this always remind me just how much of a slave I am to my tools. Even though we have plenty of other computers in the house, this laptop is the one that I’ve got configured with all the software and settings I need to work efficiently, and it’s an enormous amount of trouble to get all that shifted over to another system. Even if I were to replace the iBook tomorrow, I would lose at least two or three days worth of working time as I get everything transferred over and settled into place. To those of you who don’t program, this might seem utterly foolish: What could it possibly matter not to have the configuration files and extension libraries for your text editor installed? Isn’t that sort of like worrying about the placement of your footstool?

In short: No, it’s much more serious than that. Programming is a skill that requires an enormous amount of concentration and focus, as well as a large library of specialized tools. Perhaps a better analogy would be this—ask a master cabinet-maker to build you an elaborate piece of furniture using only a couple of screwdrivers, a hammer, and a chisel you found rusting in an old drawer somewhere. She might be able to do it, but it would be a very slow, painful process, and the results wouldn’t be nearly as good as if she could do the work in her own shop, where everything’s clean, complete, and well-organized. As with carpentry, programmers each have their own particular views as to how the shop should be set up, and moving things around can be an enormous setback.

Still in all, it is likely that my little temporary hack is just that—temporary. So, it looks as if I’m going to need to think about replacing the iBook with something a little more reliable. I had hoped to defer replacement till after finishing the Ph.D., but I really can’t afford to have my primary computer be suffering from random hardware failures while I’m doing that. This time, however, I will be a little bit more careful about reading the reviews before I buy. When I got the iBook, I did so because my previous machine had suffered a mechanical failure after more than five years of excellent service; the iBook was a hasty purchase, and motivated mostly by the desire to get something quickly and cheaply. I got what I paid for, and next time I’ll be more circumspect. I’m a long-time Apple user—going all the way back to the Apple //e that got me through high school—and I will probably buy an Apple again, but this experience has made me a lot more concerned about the quality of their machines.

* Since I make regular backups of my whole system anyway, I’m not really all that concerned about losing more than a couple of days’ work. That would be annoying, but not catastrophic. However, I would prefer not to have to spend a lot of time restoring backups, if I can possibly avoid it!

** This would ordinarily be a warranty issue, but the machine is out of warranty, and Apple does not currently have any coverage for this problem, except on certain very specific systems, and mine happens not to be covered. I’ve generally been very happy with Apple’s hardware, but I must say, buying this particular machine was a mistake—this is not their best-quality work.


Update, 4-Sep-2007.

Over the weekend, the iBook’s behaviour got worse and worse; at this point, I cannot reliably use the machine for more than fifteen or twenty minutes without the screen going black, and I have to reboot sometimes four or five times to get it to come back after it does this. Now, too, the mode of failure is more complex—probably due to my “after-market” shimming job—instead of going directly black, sometimes the screen will show a kind of shimmering “ring” around the borders, with a black center.

Fortunately, it appears we will be able to get a new machine soon; in the meantime, I’m trying to get some work done on one of our desktop PC’s. But, as you can imagine, this is a slow and very tedious process.


Update, 5-Sep-2007.

The iBook has now been replaced with a shiny new MacBook Pro. This is actually the machine I had been daydreaming about as a replacement for my old PowerBook G4 back in 2005, but the PowerBook’s display hinges broke at a very inconvenient time, i.e., after the new machines were announced, but before they became available. Amusingly, however, the PowerBook is still running just fine—we use it as a file and print server, in which capacity its broken hinges do not limit its utility one whit. Not so the iBook.

Through a combination of good luck and sleight-of-hand on Sara’s part, we managed to obtain—at no extra cost—one of those all-in-one printer/scanner/copier devices along with the new laptop. We didn’t really plan on this, but it was a promotional freebie, and it turns out to be useful. Plus, the price is right. As you’d expect from reading the reviews, the all-in-one devices don’t do as well at any of their individual functions as would a dedicated device; however, it will be nice to have an easy way to make photocopies and print colour photographs at home.


Update, 20-Sep-2007.

It took a few days to get everything transferred over to the new machine, but since then it’s been smooth sailing. I salvaged the hard drive and other useful parts (e.g., RAM, keyboard, display, DVD drive) out of the failed iBook, and recycled the rest. The hard disk is big enough that I installed it in the external FireWire enclosure so that we can use it for quick-and-dirty backups via CarbonCopyCloner. The rest I hope to find good homes for—if you happen to need any G4 iBook parts, let me know, as I probably won’t find much use for them myself. I suppose I could offer them on eBay or Craigslist, though.

Incentives for Polite Driving

After reading some of the “pop economics” books that have become popular in the past couple of years, I have begun to think in economic terms about how to create incentives for more civil behaviour among those of us who operate motor vehicles in urban centers such as the greater Boston area. In particular, I’m interested in how to improve conditions for us who use the streets to get around—whether by bus, automobile, motorcycle, scooter, moped, Segway, bicycle, or unicycle. One thing seems clear to me: The laws that ostensibly regulate the behaviour of motorists do not work. So, how can we do better?

First off, I don’t think that more laws are the answer. In fact, I think that it’s extremely rare for any highly-regulated system to be improved by more legislation. On the other hand, I do believe that part of the problem is that the current traffic regulations are very poorly-enforced in greater Boston. I don’t have any hard evidence to back up this claim—but I have plenty of anecdotal experience that suggests traffic stops are comparatively rare, as compared to the frequency of moving violations. That said, I don’t think the problem is (entirely) the fault of law enforcement, either: Cops are smart enough to recognize when pulling someone over for a minor traffic misdemeanor is going to create a more dangerous situation for everybody else than simply letting it pass. Given the abominable state of the roads in these parts, there are very few places where aggressive traffic enforcement would be safe enough to be justified. Furthermore, I suspect that the incidence of more serious crimes, e.g., petty theft, burglary, assault, armed robbery, domestic abuse, homicide etc., is high enough that the police have their hands pretty full even without considering automobile moving violations. So, while enforcement is a problem, I don’t think that’s where we should look for a solution.

The fact remains, however, that the roadways around greater Boston are thick with unsafe, aggressive, and uncooperative driving habits. These habits are cultural and self-reinforcing: A driver who does not partake in what I’m calling these “bad behaviours” receives a great deal of negative social pressure to conform, not least of which is the inability to get where he wants to go in a timely fashion. The driver who does conform to the legal regulations puts himself at a remarkable disadvantage. So, if we take the economist’s viewpoint, is it any wonder the laws are not obeyed? Thus, the question: How can we give drivers a concrete, meaningful incentive to obey certain basic standards of cooperative behaviour while operating in traffic?

Let’s consider a traffic problem typical of urban settings: Two busy bidirectional roads intersect at a square, regulated by traffic lights. In theory, these should be trivial—but in practise, the trouble here is that traffic flow out of an intersection is often restricted by other intersections, whose traffic lights are not necessarily coordinated with the square in question. This causes a number of bad feedback loops to form:

  1. Drivers attempting to cross the intersection are unable to clear the square in a timely fashion. Although the yellow light of a traffic signal is intended to compensate for this, many drivers will enter an intersection after the signal turns yellow, thus destroying the effect it was intended to produce.
  2. Because of this, the drivers waiting on the crossing road are unable to enter the intersection when their signal turns green. Legally, at least in Massachusetts, they are not permitted to enter the intersection till it is clear—even if their signal is green. However, in practise, drivers will enter the intersection anyway, and sound their horns furiously. In many cases, drivers engage in risky passing behaviour to get around the blocking cars. Perhaps out of a sense of “tit-for-tat,” the drivers on the crossing side will repeat the same behaviour when their signal turns green, completing the cycle.
  3. In addition to this, many busy intersections also have lights that permit pedestrian traffic to cross. This interacts badly with the provision that a motorist may usually make a right turn through a red light after stopping, and if the intersection is clear. Many motorists seem to ignore the restrictions—and the additional constraint, in some municipalities, that the “right-on-red” permission is void when a pedestrian “walk” signal is displayed in the intersection. Consequently, pedestrians will cross whenever they can find a space—including when the intersection is backed up with blocked cross-street traffic—and this further amplifies the congestion.
  4. Taken a bit further, blockage at multiple intersections leads to true grid-lock: The state in which a blockage at intersection A causes a blockage at intersection B, which prevents (with some additional steps) the blockage at intersection A from being removed. There is a large and rather subtle example of this phenomenon on some of the roads around the Fenway in Boston, though it is difficult to see when you’re actually driving there, because the knot-points of the grid are not visible to each other.

These troubles are only compounded when the intersection in question is not just two roads, but three or more, and requires multiple streams of traffic to merge or to cross each other in a kind of X pattern. The congestion leads to frustration, which leads to “bad behaviour,” which leads to more congestion. That’s the worst feedback of all. And if you stuck a bunch of police officers into the middle of all of this, to pull people over and ticket them, you’d only make the problem worse. What we need is a situation that reduces congestion and frustration.

So, here’s one proposal: Suppose everybody’s car has a device like an electronic toll collection transponder, such as the ones used in the E-ZPass or Fast Lane systems. These devices are pretty simple RF transponders, cheap to build and already widespread in urban environments like greater Boston. Now, suppose you set up busy intersections to work like this: Any vehicle whose transponder enters the intersection from the active road after the light turns yellow, and which is still present in the intersection when the crossing light turns green, is charged $1 per occupied lane of crossing traffic per 15 seconds (say) of time in which they occupy the intersection against traffic.

The transponders would automatically deduct this fee from the driver’s account, and the proceeds could go either to a fund for road maintenance and traffic flow improvements, or—even better—could be credited to those drivers on the crossing road who complete their traversals of the intersection with their light after the delaying vehicles have left the intersection. Let your account run empty, and you get a bill.

Leaving aside the many engineering issues with this proposal, I can already hear you wailing, “That’s not fair! I have no way of knowing whether I will be stuck in the intersection!” But then, I argue, you should not enter the intersection, till you are sure. And remember—you wouldn’t be penalized if you entered while your light was still green; only if you entered after it turned yellow. This should encourage us to see yellow lights as a true caution, rather than an engagement to accelerate into the intersection. Furthermore, it gives the crossing drivers some added benefit for waiting their turns, rather than shoving their way through the narrow spaces in the intersection (in fact, you could charge them in the same way, if they do enter while the blocking cars are still present).

What I like about this system is that it does not prevent you from “breaking the rules.” It just makes you live with some of the cost of your behaviour. In the current system, you gain some advantage by cheating the lights—you get across the intersection faster—but you do not really suffer any of the costs of it, except possibly a bit of embarrassment if you have a conscience. The costs are imposed on other drivers, upon whose interests you are perfectly justified in not wasting your own time and energy. So: This proposal gives you a way to act in your own best interest, a motivation you are far more likely to respond to. Furthermore, the system adapts to the level of contention: If the intersection is only busy in one direction, you need not be charged for blocking the intersection, since in that case you are not unfairly tying up a resource somebody else needs. It doesn’t mean you have to be polite, but you are strongly encouraged to act is if you were.

How hard would this be to implement? Well, not trivial—for one thing, every car would have to have a transponder. But every car has to have a muffler, too—and that’s a lot more expensive. So, I don’t think equipment cost is necessarily a problem. The intersections would need some equipment to detect and localize transponders, but again, I suspect that is a problem some clever engineering could solve at reasonable cost. What’s more, I think that there are several potential positive outcomes: Reduced frustration and congestion might reduce accidents, and thereby reduce insurance and medical costs. Also, I suspect reduced congestion would speed overall traffic flow, and cut down on fuel consumption from vehicles idling in traffic. Unblocked intersections would also make it easier for emergency response vehicles such as fire trucks, police cruisers, and ambulances, to get where they are needed in a timely fashion. Such a system might also reduce costs for traffic enforcement, leaving police resources free for more serious crimes.

What I do not like about this system is that it involves tracking the movements of free citizens in a way that could easily be abused by persons in power. But I think it is time we admit to ourselves that our current methods of regulating traffic are woefully inadequate, and unlikely to get better without some kind of cooperation on the part of us who drive. This, like my idea for LOV lanes (“for those who LOVe the environment”), is more than a little crazy, but I think it might just be crazy enough to work.

On the other hand, I really think the whole “right on red” concept is a bad idea, and should be done away with entirely. It’s convenient, and I’d miss it sometimes, but I’d happily give it up as a driver in return for safer biking. That, however, is a rant for another day.

In particular, the books Freakonomics (Levitt/Dubner, 2006) and More Sex is Safer Sex (Landsburg, 2007), and the weblogs written by their authors.