When I got my current computer, a Powermac G4, I started using the mouse that came with it, a featureless polycarbonate ovoid. It’s a beautiful mouse–nice heft, nice materials, nice shape. But a one-button mouse. These days, many mice have four buttons plus a scroll-wheel that can also be clicked, and OS X is built to recognize two buttons plus a clickable scroll-wheel with no extra software required (unless you want to remap the button functions).

Perhaps out of exasperation with my button-deficient mousing lifestyle, my über-geek friend Drew just flat-out gave me a new-in-box Microsoft mouse with two buttons and a clickable scroll-wheel that he happened to have lying around (this isn’t that surprising–as near as I can tell, he’s got 8 computers in varying levels of service). So I plugged it in this morning and have been using it.

My findings: In terms of shape, materials, and build-quality, Apple wins hands-down. As to the extra controls, I’m actually a bit ambivalent. The scroll-wheel is a big advantage, no question. But it clicks along in steps, not smoothly, which is actually jarring when following a screenload of text. The second button is also handy (though not as frequently so), but it forces me to pay more attention to what I’m doing. And despite that, having two extra buttons doesn’t quite feel like enough. With a one-button mouse setup, I use the keyboard more to make up for the mouse’s deficiencies. If I’m going to really use the mouse, I need to be able to use it more. Chorded input would give me 7 possible clicks from three buttons, but I’m not sure if that can be accomplished, and I am loathe to install Microsoft’s bloated (4.9 MB) mouse software to find out. A mouse with more physical buttons would do the trick, though perhaps at the expense of a lot more mistaken clicks. There are other mice out there that offer multiple buttons with better ergonomics, and I might break down and try one out.

Necesito más trabajo, Mister Roboto

A discussion on metafilter led me to a Sony robot demo. It’s quite uncanny to watch the robot, winsomely called Qrio, moving around, righting itself from a fall, or waving hello. As nifty as Sony’s Aibo is, this makes it seem like a Furby by comparison. Or perhaps even a Weeble.

But what’s with Japan’s fascination with robots, especially anthropomorphic ones? One might snarkily cite the fact that the guys designing these robots grew up with Tetsuwan Atom and Japan’s other robot-heroes, but what made those characters so popular in the first place? I don’t know.

Japan’s big electronic companies trot out the problem of the country’s rapidly graying society as something that robots can solve–the idea being that robots will do all the scut work for society, especially looking after incontinent oldsters. This seems like the most complex solution possible in search of a problem. Relaxing immigration policies would be the blindingly obvious solution, except for isolationism in Japan even stronger than most countries.

Beyond that, though, the economics of a robotic workforce make my mind reel. Robots wouldn’t be cheap to purchase or maintain. In a society with a high proportion of old people receiving government assistance, those seniors would probably be hard-pressed to pay for these robots out of their own pockets. So would the government: the tax burden would be falling harder on the dwindling (and perhaps resentful) younger population. And if we assume that there are WN man-hours of work to be done by society in general per year, with robots doing some amount WR, and humans doing the rest (WL) such that 0 < WR < WN, then the higher the value of WR, the lower the government’s tax revenues (I assume robots would not be paying taxes). In short, the government would literally need more warm bodies to tax to pay for all those cold bodies.

In a country with full employment, the economics must be different–but with a large fraction of the population on the dole, the economics get all screwy. Ironic that the root of the word “robot” is in the Czech word for drudge-work.


No doubt many electrons will be spilled as self-appointed geniuses like me pore over Apple’s new announcements. These are interesting, I agree, but I’m going to take a detour and look at Apple’s website.

Apple has long done an admirable job of presenting a clean design on its site. One thing that it always steered clear of is dynamic content. There’d be a little “hot news” animation on the front page, but that was usually it. As of today, though, there are signs of more mouseover fun. The Panther page uses some mouseovers (using old-school HTML+JS instead of way-new CSS effects), and the G5 page likewise uses these on the performance charts (one could easily miss these), and on the navigation bar for the G5 pages.

Shortly before OS X was made public, the Apple site was retooled with an Aqua look for the graphic buttons. It is interesting that it is reversing course to some extent–the buttons have a much less pronounced Aqua look (the Aqua interface itself has been toned down), but on some of the Apple Store pages, some buttons are flat ovals–not at all Aquatic.

Apple seems to be reversing course on Aqua for its software, too: in addition to all the iWhatever programs, Apple will be applying its “metal” theme to the Finder. This strikes me as dumb: the rationale behind the metal theme has always been dubious, the application of that rationale has been spotty, and I never liked the theme in the first place (so I turn it off).

I’m not sure what prompted the changes to make the site a tiny bit more dynamic and less aquatic. The website once was a harbinger of the Aqua interface on the Mac, though, and I wonder if it’ll be again. It would be nifty, from a geeky perspective, if Apple tried using modern CSS layout techniques and valid, clean HTML, but it is still a pleasure to read.

More thoughts on the iTunes Music Store

The interesting thing about ITMS is that it is integrated so tightly with iTunes, and that iTunes itself is a pretty slick program.

Perhaps Apple is still working out the bugs, but the initial rollout of ITMS is missing a huge opportunity: recommendations and aggregation.

Amazon already does recommendations based on what you’ve bought and what you say you like. And audioscrobbler (thanks to iScrobbler) keeps track of exactly what I’ve been listening to, and makes recommendations based on that using some kind of collaborative-filtering hoohah.

iTunes also keeps track internally of what I’ve been playing. ITMS could roughly duplicate what audioscrobbler does and let me preview/buy the recommendations directly. That would be slick. iTunes also allows one to assign star-ratings to songs, but that’s a little tedious, and the audioscrobbler philosophy–that what you listen to most is what you really like the most–is probably more honest.

Likewise, Apple could aggregate this data into a form that it could sell to the record industry. This raises obvious privacy questions, but frankly, as long as it would be anonymous, I would be perfectly happy for the record industry to know that I have never, not once, listened to Britney Spears, N’Sync, Alan Jackson, or whatever–but that I do listen to Beck, the Asylum Street Spankers, Caetano Veloso, etc.

It’s also funny to see how they categorize music, since (once you get past the front page) the store uses the same genre/artist/album column-browser as iTunes uses for your own music library. Jimmy Cliff, Jon Secada, Martin Denny, and Abba are all listed under “World music.” Putting music in pigeonholes is often unhelpful, and that particular slot is especially so.

eDonkey on Mac OS X

Has anyone out there successfully installed edonkey on OS X? If so, how? I spent way too much time trying to get it to work and failing.

Oh Lazyweb, I invoke thee!

Apple Music Store

As rumored, Apple has created a store for downloadable music, which ties in with a new version of iTunes.

They apparently have a library of 200,000 tracks from the five big labels. So far so good. They’re charging $0.99 per track. Not good. In terms of an hour’s-worth of music, this works out to be about as much as buying the CD, perhaps more–except you don’t get the CD, booklet or full-quality audio for that matter, but do get restrictions on how you can use your downloads (although the restrictions are admittedly pretty liberal, and easy enough to circumvent).

This does seem like an improvement over some of the existing for-fee music-download services, and the integration with iTunes looks pretty slick, but the pricing is outlandish ($0.25 per track would be my limit), and the pay-per-track pricing model is a bad idea. A monthly-fee all-you-can-eat model is one that I could get behind.

The WiFi phone

A prototype phone can open a voice-over-IP connection if there’s an open WiFi node available. Very, very interesting. If you had one of these and never left Manhattan, you’d probably never need to subscribe to cellular service.


Bah. I really like Chimera, and I like the name. Apparently they can no longer legally use it.

Mike Pinkerton says he doesn’t want suggestions for other names. Tough. If they can’t use Chimera, I suggest Kimera. Or maybe Ximera, which has a certain OS-X pun quality. But it looks awful on the page. Or maybe they can write it in Greek.

But not Camino.


A discussion over at Macintouch led me to the OS X beta of Ragtime, an integrated app available as a free (but big — 54 MB) download. I’ve downloaded it and will be evaluating it.

Random computing thoughts

There’s been a lot of excitement lately about different ways to get one web page to talk to another. To the uninitiated, this probably sounds incredibly weird, but it’s also a very powerful concept. This is accomplished using techniques with mysterious names like xmlrpc and REST. Unless you are an über-geek, the difference between the two doesn’t matter: suffice it to say, there are some pretty well-understood and standard ways of doing this. Sometimes a non-geek like me gets an idea for a way that xmlrpc (or REST, whatever) might be used, but I don’t have the technical chops to write the code. Now, this may be my naïveté (two umlauts and an accent in one post — that’s a record for me) speaking, but I suspect that it would be possible to write a generic universal xmlrpc processor that a non-geek could configure to send out/suck in data to suit. Perhaps even give it a pretty web interface for configuring. This would be pretty cool.

I’ve been teaching myself CSS, and have figured out how to do some pretty slick things with it. It’s very powerful. I can imagine ways to make it moreso, although this would probably drive the wonks at the W3C nuts.

A way for styles to alternate. The obvious use for this would be for alternating color bands in tables, but as long as its kept general, it could be used in all kinds of different ways. The syntax could get kind of hairy: I would propose defining each alternant as a separate style, and then gang them together under the catch-all style that will be alternated something like this:

.lightgrey {background-color: #CCC;}

.white {background-color: #FFF;}

tr:alternating {styles:.lightgrey .white;}

That would give you a table with alternating rows of light grey and white backgrounds. You might want to do it with three different backgrounds, or where you only alternated every second or third column. Simple — express it like this:

tr:alternating {styles:.lightgrey .lightgrey .white .white .yellow .yellow;}

Later:It seems they’re working on this for CSS3 the Nth child pseudo-selector

I’ve also been working with some very redundant CSS stylesheets, where there are many similar styles, the only difference being the style name and one number that could be generated algorithmically. If we could use mathematic expressions in the CSS, it would save a lot of redundancy and debugging. I imagine it might be possible to use Javascript or PHP to do this for me (if I were any good at coding either one), but the idea of rolling mathematical expressions into CSS strikes me as appealing.

[Later] How’d that get there? Right when I hit the “post” button for this entry, I noticed that the “URLs to ping” field in Movable Type contained “”. I tracked down, and it seems to be associated with Ben Hammersly, linked to at the top of the post in reference to getting web pages to talk to each other. I guess this is auto-trackback in action, somehow.

Yet another browser

Some mad scientist has ported Phoenix to OS X. It’s still somewhat primitive, but it’s interesting to see. Funny that I ran across this news on the same day I read that Opera may be withdrawing from the Mac. No great loss there. At any rate, that leaves us with, what, four Mozilla-based browsers for OS X (Chimera, Mozilla, Netscape, Phoenix), Omniweb, Internet Explorer, iCab, Safari. Am I missing any?

Mesh networks


Locust World has developed the software and hardware to create mesh networks on the cheap (about $400 per box). This is potentially big. A mesh network allows one to extend a wireless network indefinitely — a signal will hop from one box to the next, until eventually finding one that’s got a landline connection. Obviously traffic could get backed up, but this makes all kinds of interesting things possible. via BoingBoing.


Sometimes a bit of software just blows your mind iCommune is one. A seemingly mild-mannered plug-in for Apple’s iTunes music software, it turns iTunes into a streaming peer (that also, incidentally, allows you to copy MP3 files).

The weak spot is that the user must manually enter fellow peers to stream from/to: there’s no auto-discovery. But once they’re in there, your friends’ music is just as available to you as the music on your hard drive, through the same interface. The simplicity is very powerful. This may be part of the reason Apple forced the author to pull the plug-in. But if you can find a copy, check it out.

And let me know what your IP number is so we can share.

Browser atomization

There’s a post at, taking Apple to task for not integrating more specialized interfaces into its new browser Safari.

This got me to thinking. A few years ago, Netscape was predicting that the browser would become the OS. After all, you could run a Java app inside the browser and do almost anything, right?

Obviously it didn’t turn out that way. But more interestingly, things have gone the other way. Rather than one web browser that does everything, I have multiple different web apps. I’m writing this post in a specialized blogging program called Kung Log. It does one thing: post to Movable Type blogs. I read a lot of blogs in NetNewsWire Lite. Although I don’t use it much, I’ve got Sherlock for specific kinds of searches, and it has an excellent competitor, Watson I can read the funny papers in Comictastic. And I’m sure there are lots of other specialized clients out there for extracting and presenting a specific data type from the web.

And of course, I’ve got, what, four general-purpose web browsers on my hard drive.

The profusion of specialized tools makes sense in a broader picture. Each tool can focus on being good at one thing. With the availability of a reasonably fast and always-on Internet connection, the Internet becomes almost like a feature of the computer–like the CD drive or the mouse. Nobody says “if you’ve got one program that interacts with the CD drive, why would you need two?” Also, although this isn’t as polished as it could be, different applications can interact with each other so that separateness doesn’t necessarily need to get in the way of integration. And increasingly, that integration is actually between applications on different computers, communicating over the Internet. Pretty nifty.


Macworld expo just opened in San Francisco. I attended the expo myself, about 10 years ago (has it really been that long?).

Nobody expected much in the way of interesting announcements from Apple this time around. While Apple hasn’t exactly announced that all Macs will now come with quantum-computing processors or anything similarly groundbreaking, they did pull a few rabbits out of their collective hat.

Perhaps most interesting is that Apple has a web browser, Safari. It’s still in beta. At first glance, it has some good points and bad points.

Good points:

  • Clean interface. Buttons are inobtrusive and fairly customizable (though not supporting the standard toolbar interface, yet). Though I should mention that I’ve disabled Apple’s metallic look, which Safari uses. There’s a Google search-box right there in the toolbar. The URL field serves double-duty as the progress bar–nice touch. Has a “snapback” feature that takes you to the last page you were at outside the current domain — very clever.
  • Fast. Can’t complain about the speed. Especially when backing up to a cached page.
  • A brilliant bug-reporting tool. Click on a bug icon. It pops up a sheet pre-filled with the current URL, gives you the option to send the source text and a screenshot of the current page, and other options. Why, it practically makes software problems fun!
  • Pretty amazing bookmark organization.
  • A minimum of extraneous bells and whistles.

Bad points:

  • Bad CSS rendering. Yes, it’s still beta, and I’m fairly sure they’ll get it worked out, but pages that rely on CSS extensively for layout may not look right. Including my own.
  • No support for tabbed browsing. Hello?
  • Doesn’t seem to import bookmarks from Netscape or Chimera, though I may be missing something. It automatically snags my IE bookmarks, though.

While I’m a big fan of Chimera, I don’t have a religious dedication to it. If something better comes along, I’ll use it. With some work, Safari could be better.

The other interesting announcement is that Apple has both supersized and downsized the beloved PowerBook (which is still available in its original form). A laptop with a 17″ screen…wow. Imagine flipping one of those suckers open at your local coffeeshop. Cower in fear, lesser laptops! Oh yeah — and Bluetooth. And 802.11b/g. And faster firewire (interestingly, no USB 2). And a backlit keyboard. And an “ambient light sensor” so it knows when to light up the keyboard and change the monitor’s brightness.

One for the lazyweb: better javascript e-mail obscurifier

I’m currently using a javascript to generate my e-mail on this page in a way that spambots apparently can’t detect. Described in brief, it spits out a mailto link, with my account name, then an encoded at-sign, then my domain name. This is all hard-coded into the script (have a look).

Although I lack the coding chops to make it work just right (much less make it elegant), I’d like to generalize this to work as follows:

The script is called with two or (optionally) three parameters. The first parameter is the account name. The second is the domain name. The third is the text (or image tag) that will be used for the link text — something like “mail me”. If the third parameter is not present, the e-mail address itself is inserted as the text.

And it would be great if there were a plug-in that inserted this into Movable Type so that it automatically re-coded e-mail addresses in the main content and in comments.


For the past few days, I’ve been wrestling with the problem of creating a simple order-tracking system for my side business lately, and after trying out a few different candidates, I felt as if they’d all take too much work to get something that was almost — but not quite — right. I sighed wistfully “I could build exactly what I want in Hypercard.”

Alas, Hypercard is a mothballed product. You can still buy it (somewhat to my amazement), but it hasn’t been updated in years, and certainly doesn’t run under OS X. It does run under OS 9, but I haven’t installed that.

So it was with great hope that I started fooling with Supercard today. Hope that was dashed. Supercard seems like a decent product in its way, but it’s just different enough from Hypercard to make some things that were easy in HC to be like pulling teeth in SC — as if it is trying to emulate HC in a superficial way without really partaking of its more fundamental structures. It lacks some of the handy coder features that HC had — that allowed you to watch variables as a script executed, shortcuts to break into certain script-editing windows, etc. It also has some minor but infuriating bugs. The differences and shortcomings are just enough to make me throw up my hands in frustration.

Maybe I’ll re-install OS 9 on my machine, just so I can run Hypercard.

Interface uniformity

Steven Berliner Johnson writes on the contrast between Apple’s trend towards using specialized apps–iApps–to handle different media types, and Microsoft’s rumored move towards integrating everything into one do-it-all file manager. This sounds a lot like the BeOS file system, actually.

This is a false distinction, in a way. While iTunes (for example) provides a certain lens onto the files it manages, and a handy one at that, it doesn’t eliminate the value of a good file manager. Indeed, the current version of iTunes can help keep your music directory organized in the Finder–as long as you like it’s organization scheme–and there are scripts that can let you organize different, if you don’t. iPhoto is a program I don’t use at all because it doesn’t leave my photos in their original JPEG format–it merges a bunch of photos into a single monolithic file, which I don’t like. (Many people choose their e-mail client based on how it manages files as well.) I can certainly see how iPhoto would be useful, but I don’t like being locked in–it makes it easy, as long as you do things its way. (It only communicates with one photo-hosting website, also.) Umberto Eco once wrote that the Mac is “Catholic” in its insistence that there is one way to do things. This isn’t always true on the Mac (though with the Unix underpinnings, in some ways it is moreso now), but iPhoto is definitely “Catholic.”

Johnson writes

Consider the default layout of iPhoto, which shows you a broad mosaic of all your digital photos scaled to fit the size of your screen. If you have more than a couple hundred pictures, this means each image is the size of a thumbtack, but Apple includes a handy zoom tool that lets you instantly zoom in and out to focus on a particular batch of images. It’s much easier to find the photo you’re looking for by scanning iPhoto’s mosaic than it is to pore over document names in a directory overview. (It also happens to look very cool, particularly the zooming effect.)

Now, you could conceivably apply the iPhoto zoom to all your data: Turn on your computer, and you see a list of document titles and tiny icons; zoom in on one section, and a spreadsheet comes into focus or a Web page; zoom all the way in, and the document appears on your screen at normal size, ready to be manipulated. This would be an innovative approach to file management, but also a spectacularly inefficient one because a spreadsheet or a text document reduced to 5 percent of its usual size is indistinguishable from any other spreadsheet or text document. But it works great for photos.

Arguably, Apple did just that with the zooming Dock, which is supposed to act as a holding-pen for any document we want to keep handy but not active. And Apple has been justifiably criticized for this feature, for exactly the reasons Johnson mentions.

Johnson quotes Bill Gates, who says:

Right now when you use Windows, the way that you step through your photos, the way you step through your music, the way you step through e-mail or files, they’re all different. You have to learn different user interfaces, different search commands. … The idea of Longhorn is to have one approach, one set of commands that work for everything, including all of those things. And so the number of concepts you have to learn is dramatically less.

Gates is missing the point. If I want to find something, regardless of what program I’m in, there will usually be a text field with a Search button next to it. The problem isn’t so much that users need to learn different applications as it is that different applications may not implement common features (like Search) in a predictable, understandable way. There’s no user advantage to one massive application that provides all the lenses I could want onto my e-mail, my music, my photos, and my calendar. And there can be an advantage to applications that narrow the context.


I’ve been seeing a lot of ads lately for a videogame called Desert Storm: Conflict. Although it putatively is a simulation of the 1990 Gulf War, is it clearly intended as an anticipation of the upcoming Gulf War, Episode II. Cashing in on war fever with a videogame? There’s something about this that strikes me as wrong, wrong, wrong. And weird.

More Word Weirdness

Microsoft Word is legendary for its awfulness. This is not news. But I just ran across a quirk so funny that I had to stop working on my tight-deadline job and blog it.

I’ve got auto-correct turned on. I’m zipping along and type “arcana.” Word corrects it to “arcane.” That’s odd–I couldn’t imagine that there would be an arcana/arcane pair in the auto-correct dictionary. And there isn’t. But there’s another feature (that can be disabled, fortunately) that will auto-correct based on the regular spellcheck dictionary. Apparently that dictionary doesn’t include “arcana” but does include “arcane,” and the spellcheck algorithm decided the latter was the only viable candidate to replace the former. So it did.

Here’s where it gets funny. Word also includes a regular dictionary with definitions–the whole works. Arcana is in that dictionary. Go ahead, make jokes about one hand not knowing what the other is doing, the insane redundnancy of two different word lists, etc. I’m with you.