2009 (old posts, page 1)


From the HN thread on this post from Garry at posterous, about product minimalism:

Teams at apple are TINY. Mail is like 3 guys. …

Two things: The thread was about how high quality software is easier without politics you get in large teams, which I agree with, and I bet that a lot of the software we love was made by smaller teams than you'd think.

And, just 3 engineers on Mail explains a lot.

Visible bindings

Just noticed this: Two-Way Data Binding in Flex 4.

Flex is an SDK for building Flash apps that I know nothing about, but this article presents what looks like a rough equivalent of Cocoa Bindings, and it has one really nice property that Cocoa has always been missing - say what you want about specifying a UI with XML, but the Flex XML looked like it'd be relatively easy to scan, search and diff. I've always thought that a human-readable text format for Cocoa NIBs would be a big improvement.

New Release of EagleFiler

From C-Command Blog - EagleFiler 1.4.7: a bunch of nice refinements.

I use EagleFiler to keep track of reference documents that I get in emails. Presentations, reports, etc - the kind of thing that would usually just get stored in the mail archive. Because I want a complete mail archive and a fast way to get to the important stuff, I keep the important stuff in EagleFiler so I can add tags and searches don't get a lot of false hits.

With all the news about web fonts lately...

With all the news about web fonts lately, I've been thinking about typography as a difference between web apps and desktop apps. No one expects web apps to conform to any standard UI, so designers can experiment and give us distinctive interfaces, using different fonts and color schemes.

It seems like there's less room to play in desktop apps - you'll see unique interfaces with new button styles, new controls, different color schemes, but as far as I can tell, not much variation in typography.

The only example off the top of my head is Panic Sans, used in Coda.

Why so little variation?

Is it the presence of a standard system font, UI guidelines, or just habit?

Is there a licensing issue for redistributing fonts with software? I tried to look for licensing terms, but this doesn't seem to be a common question.

I wouldn't mind some more tasteful variation in my desktop apps - I think the best web apps have shown us that different isn't always bad.

SVN in emacs vs. TextMate

Some responses I got to my post about SVN workflow pointed out TextMate's SVN integration. It looks like I could do what I want in TextMate, but it didn't look as smooth as the dedicated clients, and I might be wrong but it gave the impression that I couldn't set it all up without a lot of mousing around. Since I'm an emacs addict, I'm probably not going to give TextMate a real try, but in this case I think there'd be no reason to. I'll explain why.

It's not hard to get the layout I want in emacs with VC-mode. I put a screenshot below. On the left is a window (the whole OS window is an emacs "frame") with dired under VC - the directory edit mode showing what's modified. I've marked two of them so I can commit them together. In the middle I'm viewing the diff for one of the files, and on the right I'm editing the log entry for the entire commit. I can change things around without losing my log message - view other diffs, make edits, etc.

SVN in Emacs: Dired under VC / VC-Diff / Log-Edit

The only real problem I have with this is that it takes a bit of manual window setup every time to get to this arrangement and clean up the diff buffers, and that the display could be nicer. Cornerstone fixes the display issue, and if it (or another SVN client) got the workflow right, it'd fix the first.

I wrote an emacs function once to do that setup automatically. I called it vc-checkin-mike, and it got about 80% of the way there. Enough to feel like I'd spent too much time on it, but not enough that I wanted to use it.

As far as I can tell from screenshots, TextMate is roughly in the same spot as emacs - I can do what I want but it takes a bit of manual setup, and it's not as pretty as the dedicated clients like Cornerstone.

I was listening to the [Core Intuition](...

I was listening to the Core Intuition podcast on dog walks for a while, and I sent in a question they covered in Episode 17 (hi guys - better late than never).

Since I'm in research, I think about future trends and what things are going to be like 5, or 10 years out. It's fun, but it made me wonder when I listen to these indie dev guys - do they have a plan? What if web apps and Chrome OS take over everything (they won't) or everything has to be seamlessly synced with some "cloud" (it will)? How will their apps and businesses react?

In answering, Daniel and Manton made a great point that's a real positive for small, low-investment indie development - if the ground moves, they can pretty easily just stop what they're doing and retool. Changing feature plans is fast, starting a new app project is fast. Projects can be dropped without laying off a bunch of people.

It was a real lesson in the agility of indie development. Now if only they'd post another podcast, and Austin would cool off enough for me to walk the dog for longer than a few minutes…

I wouldn't normally post something abou...

I wouldn't normally post something about my weblog software, but I was apparently stumbling along with a really old wordpress that didn't accept new comments anymore, so I've upgraded.

As a result my custom theme bit it, and I am fresh out of PHP edits. So I'm trying this twitter-inspired thing out, the new "P2" theme for wordpress. It might make a good place for things that won't fit in twitter.

So say hi, leave a comment and let's do this thing.

Subversion Client Issues

I use subversion, and won't switch to something newer for a while, so it's worth looking at how to polish that old hammer. I'm used to using the command line svn, or emacs. But recently I decided to try out a few of the nice GUI clients that are around, including Versions, ZigVersion and Cornerstone.

Of these, the only one that's polished enough to lure me away from emacs and seems to support my favorite mode of working is Cornerstone, and it still gets it a little wrong.

I like to write log comments while looking at (and scrolling through) the diffs for the files I'm committing. This means I want a text field for writing log comments on the same screen as the diffs, that isn't modal, and doesn't stop me from moving around between multiple diffs.

As far as I could tell, I couldn't get the comment field and the diff display shown together in Versions, and while I could in ZigVersion, that app had a subpar diff display and lacked polish overall, missing key shortcuts where I'd expect them, for instance. Cornerstone almost lets me do what I want, but it displays the comment field in a modal sheet, so I have to cancel to change which diff I'm looking at.

This is easy in emacs, but I like a nicer diff GUI. Am I just missing something? This feels like a natural workflow, so it seems strange that no clients support it well.

Something Buckets

Alex Payne's recent post The case against everything buckets makes a strong point in favor of using the filesystem for filing. To paraphrase: If your problem is that you have a bunch of files you need to search through, and possibly tag, then the filesystem and Spotlight are probably closer to solving your problem than you expect.

I enjoyed reading his post, because I like rules of thumb for simple design, and one of my favorites is "why not just use files?" - there are often reasons to do something else, but the filesystem is faster, more reliable, and more open than anything you're likely to come up with on the first try. So you'd better be sure you're not just poorly reimplementing it.

Buzz Andersen has a thorough response, centering on the fact that VoodooPad is a very useful app. Certainly I agree - I use it all the time, and its hyperlinking sets it apart from other notes apps (and the filesystem). So yes, VoodooPad is a Good Idea.

But is VoodooPad really an "Everything Bucket"? I'm not sold - you can use it to store PDFs and images and other files, but it really focuses on pages, and those files are just attachments to your pages. I see it as a notes app. I think if your problem is keeping notes - with images if necessary, linking between them, and searching those notes, then VoodooPad is clearly better than the filesystem. But you don't have to put everything else in there too.

I agree with Alex that I don't want one program to keep everything in a proprietary database. I like apps that keep my files as files. (like EagleFiler.) But I do want layers on top of the filesystem - you wouldn't want to use just files for email, for example.

The only solution that's always bad is the solution to someone else's problem.