Mar 2005

Tiger Mail screenshot and user interface

I find the screenshot of Mail for OS X 10.4 fascinating.

The first thing I notice is that the mailboxes aren’t in a drawer anymore, which I think is a good thing.

A few other things:

1. The toolbar background appears to be some sort of gradient. As in a metal window, there is no line between the top of the window and the toolbar buttons. But it’s not metal. It looks new. (The screenshot of system preferences has the same look.)

2. The toolbar icons appear to be embedded in some kind of new button. Whether it’s a new button style or just a look for the Mail toolbar icons I can’t tell from the screenshot.

3. The mailbox list has a background color. This may or may not be customizable—you can’t tell from the screenshot. It’s a good guess that, if customizable, the color shown is the default color. This is interesting because I can’t think of any other source lists from Apple that have colored backgrounds by default.

4. The vertical splitview dividing the mailboxes from the rest of the window is not a standard splitview. (Unless it’s new in OS X 10.4.) (Actually, I’m just assuming it’s a splitview.) Note how the apparent thickness of the divider is zero. The horizontal splitview looks more like a standard splitview—though I’ve squinted at it a bit and started to wonder if that’s true.

5. I don’t see a status bar. (It could be that, like Safari, the status bar is hidden by default. Or it could be that it was added after this screenshot was taken. Or maybe there just isn’t one. I don’t know.)

So... what do you think?

(Note: remember to respect any and all non-disclosure agreements. We’re just looking at public screenshots. And these screenshots may or may not resemble the final, shipping versions.)

What books should I buy?

For my birthday I got some money to buy some books. (When I’m not programming, I’m reading.)

I have a pretty good idea of what books I want to buy, but I’m always looking for cool books I don’t know about.

My interests are literary fiction, science fiction, spy/thriller novels, history, science, languages, art, and animals. (And other things too, but those are the main ones.)

Are there any books you’ve read lately that you just plain love, that you’d recommend to me?

Super good barbecue

Last night we went to Smokin’ Pete’s BBQ for the first time. It’s just a few blocks from our house.

If you live in or near Seattle, and you like meat, go there. Just go.

Here’s a review in the Stranger: Smoked Meat Vatican.

Birthday

Happy Birthday to me! Happy Birthday to Josh Lucas! Happy Birthday to Nicholas Riley! Happy Birthday to Leonard Nimoy!

Firefox Hacks

There’s a new Firefox Hacks book coming from O’Reilly, and Seth Dillingham wrote a bunch of articles for it—not surprisingly, knowing Seth, several of the pieces are about web services and XML.

The SOAP hack demonstrates “a web micro-application that sends and receives live data to the server without ever reloading the web page.” This makes me feel like Unfrozen Caveman.

Other than some basic HTML, PHP, and style sheets, I don’t do that much web development. (By web development I mean developing stuff that runs in your web browser.) I used to do a ton of it—it used to be my main thing.

So now I point you to Jeremy Zawodny’s Respect for Web Developers post. “Back when I was first paid to build web-based applications (around 1998 or so), the world of Web Development as we know it today did not exist...”

How to view SSL certificate?

If you’re at a secure site in Safari, how do you view information about the certificate?

In Firefox it’s easy—just click on the lock icon. But I can’t figure out how to do it in Safari (or IE either).

I found that Keychain Access stores certificates, but I was hoping there was an easier way to do this from the browser, or even from the command line. (Google doesn’t turn up anything for me, so it may be just that it’s not do-able, but I figured I’d ask anyway.)

Vim tips

Bram Moolenaar: Seven habits of effective text editing.

Here’s my deal: I get frustrated with Xcode rather often. (Xcode is wonderful except for the things that bug me.) So I was inspired by Mark Dalrymple’s post on using Emacs for Cocoa development to consider a command-line alternative.

I’ve been using Emacs and Vim both, trying to find out which I prefer. You know what? It’s a tough call. I actually don’t have a position in this particular holy war.

On the one hand, Emacs really is all it’s cracked up to be—that is, it’s practically an entire operating system on its own. Vim suits my philosophy and aesthetics better.

Except that Vim’s being modal continues to freak me out. It’s as if my brain refuses to deal with this, and I keep typing commands when I want to type text. Then I curse and wonder what the hell just happened to my document.

Which is better for C and Objective-C editing? The idea is to run Xcode only when I absolutely need to.

On the other hand, maybe I can use BBEdit instead. For all that I’ve used BBEdit over the years, I’ve never used it for C/Objective-C programming. (I use it for plain text, HTML, PHP, to-do lists, etc.)

I’ll have to investigate.

screen

Over the last few days I’ve been getting into using screen. To over-simplify, the idea is sort of like tabbed browsing for the command line (except that you don’t actually see the tabs).

It has a long man page and lots of options, but mostly I’ve just got the hang of ctrl-a c (for new command-line “tab”) and ctrl-a n (for switching between the various “tabs”).

I put “tab” in quotes because it’s not really tabs, but it’s enough like tabs so that it’s an easy way to describe it.

If you find yourself opening lots of Terminal windows, then it’s worth looking at screen.

Another option is iTerm, which is an actual tabbed terminal app for OS X. (My only wish for iTerm is tabs that are more like the tabs in Safari or Transmit or PathFinder, rather than just what appears to be a standard NSTabView. In other words, the tabs could take up less screen real estate.)

Tore my dooshen

You know the song, right?

“Bliiiinded by the liiight. Ripped up like a dooshen in the runner o’ the night.”

What’s a dooshen? What—or who—is the “runner o’ the night?”

- Frank, are you okay? You don’t look so good.

- I feel kind of squirrelly in my inner birdy whirly. I ran a 10K last night—and I think I tore my dooshen when I tripped the merry-go-round.

- Ouch! You should get that looked at.

- (Mockingly) You-should-get-that-looked-at, you-should-get-that-looked-at.

- Geez Frank, I was just trying to be...

- My dooshen is ripped up over here and you’re trying to boss me around with trite little...

- You can be a real turd in a birdbath sometimes.

- Eat my dooshen, dorkwad. Wad of dork.

- Whatever, mister runner-o-the-night.

All The Quickies

Borkware’s All The Quickies page has a ton of great tips for command line users and programmers. (I’m also a big fan of Mark’s Core Mac OS X and Unix Programming book.)

httpflow: how to view raw traffic

Since both MarsEdit and NetNewsWire make HTTP requests, I often have a need to see what the raw HTTP traffic looks like.

There are different ways to do this, but what I do is type httpflow on the command line, then type my password, and then watch the traffic.

httpflow on my machine is an alias—a command-line command alias, not a traditional Mac OS file alias—for the following command: sudo /usr/local/bin/tcpflow -c port 80

You’ll need tcpflow to make it work. Tcpflow isn’t a standard part of OS X—but you can get a copy from Marc Liyanage. (That’s the version I myself use.)

Sometimes I only need just a quick peek at the headers (for a feed, usually) to see if it’s redirecting or returning a 404-not-found or something. In that case I don’t need tcpflow—curl does the job. I type something like curl -I 'http://maccentral.macworld.com/mnn.cgi' to see what I get. (Curl comes with OS X, I believe.)

Human detectors

One of those human detector systems is where you have to type in the letters and numbers as seen in a distorted image.

Here’s one from earlier today. I knew I’d fail to get it right, so I took a screen shot before hitting the submit button.

Human detector screen shot

Gee-oh-five-dee? Six-zero-five-dee? Gee-zero-five-dee? Six-oh-five-dee?

Maybe I’m a Cylon? They look like us now, you know.

Battlepod

Battlestar Galactica has a podcast feed.

Survivor Week 4

I’ve become a big fan of Jeff Harrell’s Survivor commentary. Here’s the latest: Oh, give me a home: Survivor Week 4: “We don’t get to see all of what Ian chooses, but we do get to see two of the items: a rip saw and a pickaxe. These will come in handy for killing and dismembering his teammates...”

Free pizza, or at least the hope of free pizza

College kids these days have lots of things we didn’t have when I was in college—computers, the web, iPods, massive credit card debt—but we had one thing they don’t: if pizza wasn’t delivered in 30 minutes or less, it was free.

On any weekend night—okay, any night really since I attended a liberal arts college and I tended to hang out with people who weren’t exactly model students (I don’t think there were any, actually)—we’d have a small quantity of money to spend on beer and pizza. If the pizza was free, that meant more money for beer.

The amount of beer you could get for the price of a pizza was significant.

It was still the Cold War then, with the possibility of nuclear war and all that. But it was not a time without hope: there was always the hope of free pizza.

Of course, eventually they figured out that pizza delivery drivers were getting into accidents too often, so they got rid of the free pizza policy.

To this day I’m still a little let down whenever I order pizza and they tell me it will be there in “about 45 minutes” or whatever. Oh, man, where’s the fun in “about 45 minutes.” And what if it comes in 50 minutes? Nothing special.

On the other hand, these days I eat Pagliacci’s instead of Domino’s. Seattle-ites, you know what I’m saying.

But I can tell that it’s about the same thing

One of the common feature requests we get for NetNewsWire is to handle this situation:

Say you’re subscribed to several Mac news feeds. Then one day Microsoft updates Office for Macintosh, and each feed includes a news item about it, so you have several news items about it.

You only need to read that particular piece of news once. So why not make it so NetNewsWire detects that these are all about the same thing, and mark them as read automatically once you read the first one?

Here’s why:

Consider these two news items, ripped from today’s headlines...

MacMinute

Title: Microsoft Office 2004 update released
Description: Microsoft's Macintosh Business Unit (Mac BU) has posted Office 2004 for Mac Update 11.1.1, which includes improvements to Excel add-in calculation, increased PowerPoint and Word 2004 stability, additional support for device drivers and enhanced appearance of imported graphics...
Link: http://www.macminute.com/2005/03/07/office-2004/

MacCentral

Title: Microsoft Office 2004 for Mac updated to 11.1.1
Description: Microsoft Corp.'s Mac Business Unit (Mac BU) on Monday announced the release of Microsoft Office 2004 for Mac Update 11.1.1. The update includes improvements to Excel add-in calculation, improves stability for PowerPoint and Word, adds support for new device drivers and improves the appearance of imported graphics.
Link: http://www.macworld.com/news/2005/03/07/office/index.php?lsrc=mcrss-0305

They’re about the same thing

Both items are obviously about the same thing. You can tell by looking, instantly, no thought required.

But computers aren’t that smart. How does a piece of software know that these two are about the same thing?

The titles, descriptions, and links are different.

There are many of the same words—but you really don’t want your aggregator to start making guesses here. Imagine two completely different stories, but each one has “Apple iTunes” in the title. “Songs on Apple iTunes Music Store now free” and “Apple iTunes sold to SixApart” are not the same piece of news.

What’s the solution?

Artificial intelligence would be helpful here. But we don’t have that.

One possibility would be a new kind of link element—an external link element that is meant to identify the source of the story. For instance, if you go to the full version of the above example news items, both of the stories include a link to the same page on the Microsoft site, a page about this update to Office.

Were that link to be included in the feed, with that item, as a special link-to-the-source link, then an aggregator could know that the news items were really about the same thing.

One nice thing about this is that it’s likely that the folks at MacMinute and MacCentral would pick the same link. They wouldn’t have to coordinate, it would just work. (At least in this example. It wouldn’t always be so clear-cut.)

The bad thing about this idea is the potential for abuse—or just plain laziness. What if people make the link-to-the-source link just a link to http://apple.com/ for any story about Apple—you’d end up with stories that are not about the same thing being marked as read. Nuts.

Another problem is that you still might miss something interesting. Say MacX posted a basic news report, but MacY posted a lengthy piece with interviews and and all kinds of goodies. You wouldn’t want to miss MacY’s report—but you would, since it was marked as read when you read MacX’s news item.

In other words, I don’t know what the solution is, but it’s worth thinking about.

Archive