Category Archives: Computers

In Memoriam

The story of Steve Jobs poses a conundrum: were he a fictional character, the scale of his accomplishments would defy plausibility. Sure, he changed the way we buy and play music, before proceeding to transform what had been mere portable phones into pocket-sized connections to the networked world. Then, in what turned out to be his closing act, he created a new computer category, the tablet, whose story is still early on in its unfolding.

It’s worth remembering, though, that those are just his accomplishments of the last decade or so. The recent tour de force almost eclipses those other little things he did, like introduce the general public to the notion of the personal computer in 1976, and then to the concept of the GUI in 1984. On the Macintosh’s heels came the LaserWriter, and suddenly one could produce what looked like professional print in the comfort of one’s home. As Wired notes, the LaserWriter, like many another Apple product, wasn’t the first in its category to market. It was just the one that dazzled nearly all who crossed paths with it, and in so doing changed the game.

Somewhere in between his two rounds at Apple, Jobs spun up NeXT. Relatively few people ever had the chance to use one of the company’s sleek black boxes, or their advanced development tools, but John Carmack did when he created Doom, the game that rewrote players’ notions of the possible. Tim Berners-Lee used them to implement a system that let physicists share hypertext documents over the network, but which in short order spread to use by a non-physicist or two.

These things were not solely the work of Steve Jobs, and they would probably have happened without him. Eventually. But he was the one who saw what could be, and who, with all the unvarnished glee of an excited child, grabbed our hands to tug us into a future we hadn’t known we’d been aching for, well before we thought we’d see it.

Farewell, Steve Jobs. You will be sorely missed.

Safari Extensions

or: the line between nifty and useful.

Safari 5.0.1 introduced, at long last, support for extensions. Naturally, I almost immediately downloaded a slew of the new toys to play with. In the interest of not overloading my browser with a bunch of marginally-useful gadgets, I uninstalled a good percentage of the candidate extensions after the obligatory test spin. What remains are the ones whose features I find useful on something resembling a regular basis.


This is quite possibly my single favorite extension, simply because it works so well across a wide swath of the web, and requires no special behavior on the user’s part. It detects when you’re viewing a page that’s part of a series and, as your scrolling nears the bottom of the page, automatically loads the next page and attaches it to what was previously the page bottom.

Imagine that you’re in a library reading a document written on a long scroll. AutoPagerize is like a silent but observant attendant who, as your eyes near the bottom of the unrolled scroll, discretely and unobtrusively rolls it out further. I’ve been using it for over a month now, and I still smile when I catch it in action.


Invoke Safari’s built-in View → View Source command, and you’ll be rewarded with a new window of monochromatic text. Invoke BetterSource by clicking its toolbar button, and you get a new tab of syntax-colored, line-numbered source code. If you ever need to debug a page, or are even just curious about its structure, this is the way to go.


It’s been a convention ever since the days when browsers first learned to load images — and yes, I’m old enough to remember those days, thankyouverymuch — to place those images in the upper left corner. As with many a convention, there’s no particularly compelling reason for it. It’s just what everyone else has done. CenterImages, as its name suggests, instead centers the image within the current browser window, placing it against a neutrally gray background for good measure. Maybe it’s not for everyone, but I find myself wondering why browsers haven’t always done it this way. A recent update adds the ability to contrast-enhance chromatically “flat” images.


At the risk of sounding like an Apple fanboy who does whatever Steve Jobs says to, I am not a huge fan of Flash, mainly because it tends to behave as though it’s entitled to all free CPU cycles, which it bloody well isn’t. Load more than a few pages containing Flash elements into separate Safari tabs, and you’ll find Flash bogging things down even when those Flash elements aren’t actively doing anything useful.

ClickToFlash doesn’t systematically block Flash, but it does prevent Flash elements from automatically launching upon page load, instead replacing them with placeholder images. Click on those images, and the Flash is loaded. It’s a good way of staving off Flash’s limitless CPU appetite without completely forgoing the use of sites that employ Flash.

As a bonus, it’s smart enough offer the option of replacing Flash-based movies with their H.264 counterparts on sites like YouTube, yielding improved video quality and reduced CPU usage at once. In addition, it lets you categorically permit or block Flash from different domains.

Flickr Original

When you’re browsing Flickr, it normally presents you with scaled-down thumbnail versions of large images, which is only reasonable: you don’t necessarily want to download the original 4000-by-3000-pixel version of every image as you’re perusing a library. Once you do find an image you like, though, the process of getting the original is a touch tedious. Click on the image in the photostream, then click on the image in the slideshow view, then click on the “View all sizes” button in the top right, then click on the “Original” link. Feh.

Flickr Original lets you sidestep all of that. It adds two options to the context menu that appears when you right-click on an image: View Original Flickr Image and Download Original Flickr Image.

It’s hardly something I use every day, but it is certainly nice to have when I need it.


The web has put us into contact with our fellow human beings as few innovations before it have. Unfortunately, this accomplishment comes with an unpleasant realization: most of our fellow human beings are egocentric, mean-spirited, borderline-illiterate morons, or at least choose, for some inscrutable reason, to behave as such while online. (Penny Arcade noted as much years ago.)

If you find yourself vaguely annoyed every time you realize that the interesting article you’re reading only occupies the first fourth or so of the page in question, the remaining three quarters consisting of variations on “first post!!!!1!”, “u r so gay!”, trolling, and similar noise, then perhaps you, too will appreciate ShutUp. It adds a toolbar button which lets you toggle the appearance of comments with a single click. This may only be further proof that I’m a snooty, short-tempered pedant, but I find myself appreciating its handiwork.

Ultimate Status Bar

This is a very simple extension which, when you hover your pointer over a link, tells you where that link will take you. “But wait,” you say. “Isn’t that functionality already built into Safari?” Well, yes. But Ultimate Status Bar knows a few tricks Safari has yet to learn, nicely summarized on its own page. My single favorite is its ability to expand the shortened URLs popularized by Twitter and its ilk. Its way of discreetly hiding when not in use is a nice bonus.

What the extension’s page will not tell you, but which is nonetheless true, is that its developers are some of the nicest people you will ever cross paths with online. I sent them an appreciative comment a while back, and they not only replied, but commented on portions of my blog they’d clearly read. I could not help but be pleasantly shocked.

Infernal Designs

Or: “Learn, guys.”

(With apologies to Neil Gaiman and Terry Pratchett for stealing one of their lines, John Gruber for borrowing his idea, JerkCity for using one of their character names, readers for putting them through this, and… oh, God. Everyone, for everything. Except AT&T. For anything.)

Satan holds audience in one of his smaller, but still imposing, rooms. He sits on a throne hewn of flint, its lines simple and rectangular, its bulk as intimidating as its dark-gray matte.

Two of his aspiring imps, Atandt and Sissko, approach the throne to present their work, a small white device Atandt holds before him. Atandt smiles unctuously, but then, he always smiles unctuously. One suspects that he’d sleep with that expression, if he ever slept.

Sissko, on the other hand, just stares off into the distance. His hands are constantly moving, half-raised, seeming to trace out abstract shapes. Their styles, however, differ fundamentally: it’s as though the left and right hand are working to completely separate ends. Which they usually are.

Satan: Report.

Atandt clears his throat and begins.

Atandt: It’s a network box. It grants those who pay me $150 the functionality that they thought they were buying when they signed up for a two-year contract in the first place.

Satan: (Nods once, briefly.) And?

Atandt: It’s bound to a strict limit of ten devices, which you have to add through a web interface that connects to my headquarters, giving me insight into your associations.

Satan: (A ghost of a smile flits briefly across his face.) So the arbitrary limits are accompanied by potential violations of privacy. Nice. What else?

Atandt: By default, any voice communication still counts against users’ minutes, even though they’re like as not using bandwidth purchased from a completely independent party to transmit the packets. If they want unlimited minutes, they have to pay me an additional $20 a month.

Satan considers what he’s heard so far with one raised eyebrow. His earlier brief smile has lulled Atandt into a false sense of security.

Satan: Hmm. Go on.

Atandt: Well, that’s pretty much it.

Satan: (eyes narrowing) Excuse me?

Atandt: (caught off-guard) Sir?

With a speed that belies his size, Satan takes to his feet, his eyes glowing the deep orange of late-campfire embers. Smoke wafts ominously from his tightly-clenched left fist.

Satan: You’ve had months to work on this, time to study every major competitor’s submission, and this is the extent of your imagination? (His lips curl as he snarls the end of the question, revealing teeth whose clean perfection does nothing to dull the razor’s edge of their menace.)

Atandt: (stammering) S…sir?

Satan’s eyes glow brightly enough that both Atandt and Sissko are lit like beachgoers facing a sunset. Sissko looks vaguely nonplussed, as usual, but Atandt clearly realizes that the sunset he’s facing could well be his own.

Satan: Give me one reason why I shouldn’t snuff you out of existence right now! Besides force-feeding you rusted razor wire so I can add you to the Penance Abacus!

The thought of the Penance Abacus pales Atandt, his skin fading to an unhealthily dull brick red. He hears a voice from far away, and it takes him a moment to realize it’s his own.

Atandt: (softly, blinking) Our solution to the problem will require the user’s solution of a similar, but not identical, problem.

Satan: (still irate, but intrigued) Explain.

Atandt: (clinging to the loose thread that’s barely keeping him out of the abyss) We’ll insist that the unit can only be used in certain geographic areas. We’ll enforce that by building GPS into it, and requiring GPS confirmation of the unit’s position before enabling it.

Satan pauses thoughtfully for a moment, then sits back down. He tilts his head and purses his lips thoughtfully, idly drumming on the throne’s armrest with the claws of his left hand. Atandt tries not to flinch with every flare of ensuing sparks. Then, to both his and Satan’s surprise, Sissko speaks for the first time.

Sissko: Doesn’t that sort of defeat the purpose of the whole thing? Requiring people who can’t get a solid cell-tower signal to get a clean GPS signal? Anybody with a fast, wired internet connection who’s stuck inside a building without some view of the sky will be screwed. (He realizes that the other two are staring at him the way automotive engineers would contemplate a colleague bemoaning that a proposed engine design would deliver at least 150 miles per gallon.) Oh. Right.

Satan: Is it feasible?

Sissko: Sure. Of course, it’d mean stripping other hardware features down to the bare minimum. (He notes that the other two are staring again.) So, uh, bonus.

Satan: (not yet convinced that Sissko is getting the picture) Describe the interface.

Sissko: Blinking lights on the front?

Satan nods once, prompting Sissko to continue.

Sissko: No built-in HTTP server or support for SNMP. No logging. Basically, no way at all to tell what the heaven is going on or what, if anything, is wrong.

Satan: (nodding more firmly this time) Good.

Atandt: (Now really getting into the spirit of the thing.) We’ll add a vague but long delay to the setup process. Tell users that after they’ve done everything on their end, they’ll have to wait for something on the order of two hours to see if things are working. (Thinks for a moment.) We’ll even instruct them, in the manual, to “relax” while they’re twiddling their thumbs, waiting to see if the blinking lights go solid.

Satan: And in the end, it’ll work?

There is a pregnant pause, at the end of which the three burst out laughing, Atandt so hard that sulphuric-acid tears start glistening in his eyes.

Atandt: (Wiping his cheeks dry.) No. But we’ll provide a technical-support number that they can call. It’ll answer with a completely confusing message that’ll make end-users think they’ve accidentally dialed some internal-service number.

Satan: Won’t there be a website that they can use to sidestep the support line?

Atandt: (Shrugging.) Of course. The support site and the promotional site will be one and the same. People trying to visit the former, in a desperate attempt to get running the hardware they already paid for, will be treated to a video ad that starts automatically, doesn’t have pause or mute buttons, and has a lady with a perky voice delivering the pitch. Not only will they harbor homicidal urges towards her after the third time she’s given her spiel, tops, but links on that page will open new tabs in the foreground, so that desperate attempts to click her away will only hide her in the background while she rambles on.

Satan regards Atandt levelly for a moment, briefly wondering if he should worry about the understudy’s seemingly bottomless well of perversity. Then he remembers that he’s the father of lies, and Atandt merely his prodigal son.

Satan: Won’t they try to return it?

Atandt: (Unctuous grin now back to full power.) What, and implicitly admit that I suckered them into buying a half-baked product? Again? Besides, it’s got firmware. As long as you dangle the hope in front of them that a future update might fix their problems, people will bend over for anything.

Satan: Hmm. Good point.

Sissko: Also, we’ll make sure there’s a port for an external GPS antenna. That way, at least some of them will burn just a little more time and money on the acquisition of extra gear that might make things work. So we foster false hope from both the software and hardware ends.

Satan: (leans back in the throne, contemplating them both, impressed despite himself) Well. After a bit of a rough start, you’ve accounted yourselves well. (He waves them off.) Carry on. Oh, and send Sony in on your way out.

Five web development environments you’re just as happy having never used

With apologies to Merlin Mann; brickbats and kudos to Chris for the pointer to the original inspiration, and his contribution of the second item, respectively.

  1. FORTRAN on Floats
  2. PL/I on Pontoons
  3. Smalltalk on Stilts
  4. Algol on an Alpaca
  5. REXX on Rollerskates

Update: Chris points out that Lisp on Lines exists, and is not a joke. Okay, well, it exists, at any rate. And its acronym, by accident or design, is LoL. Simula on Smack and Haskell on Hash cannot be far behind.


If we’re to take the title of Kevin Forbes’s Simulated Comic Product at its word, we can only conclude conclude that, on a day-to-day basis, it is at least as tasty as the real thing.

His recent Easter-themed comic, Eggs, is in a league of its own, though. In three short panels it tells the story of two quick-thinking children who narrowly thwart the escape of a genetic freak. Or of two ruthless brats who unhesitatingly betray a gentle victim of science back to his creator-tormentors. Take your pick. Forbes doesn’t shove an interpretation down your throat, and that’s what elevates this particular strip to the level of genius.


Watching these guys climb their way up the outside and inside of pipes small and large, then shimmy into a small crevice for good measure, makes you think that this is pretty much exactly what the maintenance robots of the future will look like.

Scowling at the Menu

If you were around for the glory days of Usenet, those golden years spanning the early 1990s, chances are that you were exposed to Chip Morningstar’s seminal essay, “How to Deconstruct Almost Anything: My Postmodern Adventure”, in which the author chronicles the cultural confusion that resulted when members of the Engineer Tribe found themselves wandering the unfamiliar territory of the Literary Theorist Clan.

Ultimately, the essay seemed to be saying, the literary theorists had evolved themselves into a cul-de-sac; we should be nice to them, and help them where possible. Its citation by engineers was almost invariably accompanied by a measure of self-congratulation, even smugness, as if to say, “Are we not manly men, fortunate to ply a trade with no need of such verbal frippery?”

Lately, though, I’ve noted an obnoxious trend nestled inside a positive one, and while I won’t go so far as to call the former disturbing, I find it just a touch disquieting.

The larger, encompassing trend is the increasing accessibility of the means for do-it-yourself production, especially of microelectronics. That one, as far as I’m concerned, is pretty much an unalloyedly good thing, and I’m all for it. I delight in the proliferation of inventive personal projects, and the cross-pollination which tends to result from their being shared on the web.

However, I delight considerably less in the smaller, attendant trend, which seems to involve summarizing these projects using deliberately abstruse language and self-conscious circumlocutions. It’s as though Morningstar and Farmer returned from their foray those many years ago the unwitting carriers of an absurdly slow but incredibly virulent pathogen, one that, having quietly and unobtrusively pervaded the population, is now switching over to the scything-us-down-like-wheat phase of its life cycle.

Take, for instance, the summary for Lady Ada‘s Fresh Air design, which makes my toes curl every time my eyes stray across it.

The Fresh Air project is a low-power, extensible RF jamming system for personal use. It is intended for city-dwellers who feel that their personal space is being overrun with undesired radio transmissions.

Much like the personal air ionizers available in catalogues, this device is for cleaning up the air around the user. By pinning this device to a bag or jacket, the user can enjoy a radius of silence.

I mean, come on. “People who talk loudly on cell phones in public places are annoying as Hell. Fresh Air lets you shut them down cold. Savoring their resulting expressions of helpless confusion is entirely optional. But fun.”

(Please note that I’m not trying to harsh on Lady Ada here. She has more badass electrical-engineering fu in the tip of her little finger than I do in my entire body, and is tireless in sharing what she knows with others. Moreover, her store and the kits sold therein rock just as hard as she does. I’m guessing that she had to put that verbiage in there for her thesis, and the description for the followup Wave Bubble design is, gratifyingly, much more straightforward.)

Today, though, we have this gem:

Wifi Camera reveals the electromagnetic space of our devices and the shadows that we create within such spaces, in particular our wifi networks which are increasingly found in coffee shops, offices and homes throughout cities of the developed world.

For fuck’s sake. “Hey, we built a gadget that lets you visualize the distribution of WiFi signal in the air around you. It’s neat. Check it out.” Is that so hard?

Seriously, this stuff makes me feel like a surly patron in some overrated restaurant. “Yes, I’d like the Technical-Skill Entree with the mixed Innovation, Inspiration, and Cleverness side salad. Oh, and please hold the pretentious horseshit. Thanks.”

Perhaps I’ll calm down once the drinks arrive.

Flaming the Kindle

John C. Welch on why the first version of Amazon’s e-book reader is not going to take the world by storm:

The other major problem with replacing books is that there isn’t an online store that you want to browse the way you will a book store. Jeff Bezos can hump his Kindle until it’s as sticky as a stripper’s shoes, but you don’t browse Amazon, not really. You might link-hop a bit, but face it, Amazon’s strength is that it lets you get shit done like a SEAL sniper. You find your target, take the shot, and get out. That’s not bad, not on any level. It’s one reason why I use, no why I love Amazon so much for buying gifts and the like. They have a lot of stuff, it’s easy to find, and it’s usually pretty cheap. It’s also really easy to get through the whole “trading money for stuff” part of the transaction.