Archive for May, 2004

Robot Odyssey

Wednesday, May 26th, 2004

Growing up, all of my computers were Commodores. My first was a Vic 20 (which had a whopping 5k of RAM!), followed by a C 64, a C 64C, and finally an Amiga 500. As stalwart and inexpensive as the Commodores were, though, my heart always belonged to another machine: my friend’s Apple IIc. In fact, I think it would be fair to say that my road to true Apple geekdom began when I first played a particular game on the IIc: a Learning Company title called Robot Odyssey.

Now, before you decide that I must have been a complete nerd as a child, hear me out. Robot Odyssey may have been an educational game, but it was by far the most wortwhile-yet-fun form of “edutainment” I have ever seen. The basic premise is that you are a human trapped in an underground robot city, and the only way to escape is to get robots to transport you safely through a number of increasingly tricky mazes. To accomplish this, you actually “program” your robots by wiring up simple circuits connecting their sensory inputs (which can detect, for example, a collision with a maze wall) to outputs (such as thrusters), processing the electrical signal through an assortment of logic gates (AND, OR, XOR, NOT, etc.) that would be familiar to any computer science or engineering major. The game even allows pint-size VLSI designers to reduce their circuit designs to chips!

Though I was only dimly aware of it at the time, Robot Odyssey taught me the core concepts of programming in a very fun and appealing fashion. It was an ingenious attempt to explain to children how computers actually work, which is a pursuit I consider to be far more worthwhile than the “Microsoft Office classes” taught by the majority of American schools today. I think it’s a shame it isn’t more famous.

Fortunately, the original disk images are readily available, as are Apple II emulators. There’s also an interesting looking Java port. Maybe someday if I have some time on my hands (and no intellectual property complications) I’ll get ambitious and attempt a Cocoa version…

Informaticien

Tuesday, May 25th, 2004

As many readers undoubtedly know, there is a longstanding tradition at Apple whereby employees are allowed to put more or less whatever job title they want on their business cards. One of my friends, who works on disc burning, for example, uses the title “Coaster Toaster”; another uses the intriguing designation “Mac OS X Meta Person.” Unfortunately, I didn’t know about this when I came to Apple, so mine are pretty boring. If I ever order new ones, though, I know exactly what they’re going to say: “Informaticien.”

You see, I’ve had a fascination with this particular word ever since a post-collegiate Europe trip some friends and I took in 2001. At one point during said trip, I found myself in Paris, trying desperately to get a police theft report before my train left (insurance purposes—long story). After posing a series of awkwardly phrased French questions to a nearby police officer (at one point I was convinced that he thought I was confessing to the crime), I finally found my way to the local gendarmerie, where they spent a good deal of time figuring out what to do with me before finally tracking down an English-speaking officer.

This nice gentleman asked me a number of questions, one of which concerned my occupation. I volunteered something like “computer programmer,” and then looked eagerly at his computer screen to see how he’d translate it. He put down “informaticien,” which struck me as so much more sophisticiated and, indeed romantic sounding than the ever prosaic “software engineer.” Such a title gives its bearer the aura of some sort of information artist or craftsman, which, corny as it may sound (and as much as stern formalists like E.W. Dijkstra would probably disapprove) is how I often like to think of myself.

My only concern is that I seem to be getting a variety of different translations for the word. Using the various translation services in Watson, for example, gives me: data processing specialist (BabelFish and Lycos), computer (FreeTranslation), and computer scientist (InterTran). Any francophones out there care to clarify whether calling myself an “informaticien” would make me sound like a machine or glorified data entry clerk?

Intellectual Property Blues

Sunday, May 23rd, 2004

There are a lot of neat things about working for a big, innovative Silicon Valley company, but there are also occasional downsides. One of them is that when you join up, you are often asked to sign an intellectual property agreement that somewhat limits your freedom to pursue your own pet projects. I understand the rationale for this, of course, since intellectual property is a tech company’s most valuable resource, but the damnable Interweb is always filling my head with crazy ideas, and it still frustrates me sometimes that I can’t share some of them with the rest of the world.

Last weekend for example, I decided that I’ve been getting out far too much lately, so I stayed home and coded the bulk of an interesting freeware Cocoa app I’ve been contemplating for some time now. It’s in pretty solid shape at this point, and I’m very excited about it, so ordinarily I would simply unleash my creation upon the waiting blogosphere. Now, though, I would have to think twice about doing something like that.

This is not to say that said app will never see the light of day, of course—just that I have to get permission through the proper channels, who have to agree that my creation doesn’t conflict with the company’s interests. I guess we’ll see what happens…

Googling My Email

Sunday, May 23rd, 2004

Erik mentions not wanting to use his Gmail account because he prefers a desktop app to Gmail’s web-only interface. I too have struggled with how best to use Gmail since I was granted a coveted invitation by a kindly Google employee (who I thank sincerely, but I won’t name—unless he wants me to—in case he wants to be spared the inevitable pleas for invites). On one hand I feel quite privileged to be able to give the service a try (particularly now that things like Gmail Swap have started appearing), but on the other hand, I already have a well-established email address at my own domain, and, like Erik, I’m a desktop app kind of guy who is a bit reluctant to commit to Gmail’s web-only interface (particularly until it works better in Safari).

Fortunately, thanks to this post by Danny O’Brien, I think I’ve finally cracked the question of how to make use of Gmail based on its strengths: archive and search. I’ve added a .procmailrc rule on my web host’s server that automatically forwards any messages I receive to my Gmail account (in addition to delivering them to my normal inbox). Then I set up a filter in Gmail that takes any messages coming from my scifihifi.com account and places them directly in my Gmail archive (bypassing the inbox).

Gmail filters interface

This way I can still use my normal email address, and still receive and send email primarily through Mail.app, but I also get to use my Gmail account as a huge email repository with the world’s best search engine attached. I’ve never really thought full text search was one of Mail.app’s strong suits, and I also like the fact that I can walk up to any computer that has web access and search for a message that someone sent me awhile ago, so I think this arrangement is a big win.

My only real complaint about it is that it doesn’t also catch my sent mail, but that’s not that big of a deal. I suppose there’s also the potential privacy issues to worry about, but I honestly have a hard time getting myself too worked up about them.

Using Flickr

Thursday, May 13th, 2004

I know most people read this site using an aggregator rather than actually visiting the web page, so I just wanted to point out that, after ages of tinkering with my own, minimalist photo gallery script, I’ve finally decided to abandon the project and “outsource.” Part of the reason is that I hit a technical impasse with my own, somewhat novel approach (I was trying to create the Blosxom of photo gallery scripts, but that’s a story for another post). A bigger reason, though, is that Jason Kottke’s remaindered links pointed me to Flickr, and I’m finding that I quite like it.

The VC pitch for Flickr would probably go something like this: it’s a social networking site with photo sharing as its centerpiece. Fortunately, the actual site is much cooler than that description would make it sound. While a lot of the Orkut/Tribe-esque social software trappings (interest groups, chat, “Flickr Mail”) feel a bit tacked on to me, I think Flickr does the photo sharing user experience better than anyone else I have ever seen.

From the clever annotation interface that Kottke lauds, to the built-in comments system, the thoughtful privacy controls, the weblog integration and post-by-email functionality, and the RSS and Atom “photostream” feeds, Flicker is full of thoughtful details that show a lot of thinking went into its design.

More interestingly to me, though, Flickr also seems to have borrowed rather intelligently from a lot of my own pet web development design principles. It features: friendly, easy-to-remember cruft-free URLs, del.icio.us-style tags to facilitate simple, ad-hoc categorization and Blosxom-esque URL-path-based filtering, and good search functionality combined with hefty storage (at least in the Pro version) à la Gmail.

In short, I’m suitably impressed. I do have a few suggestions, though:

  • What Stewart Butterfield (president of Flickr creator Ludicorp) says on his weblog about supporting the proposed Fotonotes standard is cool, but right now I think there’s some low-hanging metadata that Flickr should really be exploiting: namely, EXIF. EXIF support is common to nearly all consumer digicams today, and EXIF tags contain a wealth of information that could be used for searching and sorting Flickr libraries. At the very least, Flickr should display my EXIF data.

  • Ever since I noticed that the EXIF standard contains tags for GPS location, I’ve been fascinated with the idea of organizing my photos geographically. Since my ideal photo gallery app would have this feature, I naturally think it would be cool if Flickr implemented something along the lines of the GeoSnapper interface.

    Things like GeoSnapper are always going to be somewhat impractical for the average user until digital cameras start to incorporate GPS, but it might be interesting to try implementing a system based on “location tags.” My thought here is that the first user to enter “Golden Gate Bridge” as a location could optionally enter GPS coordinates, and subsequent users would then get to benefit from the system’s previous knowledge of that location.

  • I don’t believe the search function searches tags. I think it should, at least optionally.

All in all, though, I think Flickr is already an excellent product, and I eagerly await more information about its upcoming “Pro” version. Keep up the good work, Ludicorp!