MarsEdit 1.2: Growl, Picasa and Vox!

June 5th, 2007

MarsEdit 1.2 is now available for download (or just “Check for Updates” from the app). This is a free update for all registered MarsEdit users.

Three relatively big changes in this release:

Growl support. MarsEdit now triggers Growl notifications after publishing, refreshing, and uploading an image or file.

Picasa image uploads for Blogger.com. This is pretty transparent. Just select your Blogger blog as the upload target from Images & Files, and MarsEdit will pop the images into a MarsEdit album in your Picasa Web Albums account. Note that Picasa only accepts JPG format images for upload.

Vox support. Currently a bit limited by the Vox implementation of Atom Publishing, but a welcome start for you Vox users who are tired of blogging through the web interface. Main limitations right now are you can’t edit or delete previous posts, and you can’t upload images.

On top of that we’ve got a few smaller enhancements and fixes:

  • Edit Date panel now defaults to existing post date if it has one
  • Context menu item for “Copy URL” when control-clicking a published blog post
  • Workaround for MovableType bug that could cause incorrect timezone offset
  • Fix memory leaks & improve performance of Images & Files window
  • Images & Files upload target now defaults to currently selected blog

Enjoy!

Dasher Alternative Input

June 4th, 2007

This blog post was written with out pressing the keyboard or clicking the mouse! Check it out!

Here’s a movie of me “typing” the above text with Dasher, an alternative text input interface.

Thanks to Jon Wight for tipping me off to Dasher.

FastScripts 2.3.2

June 4th, 2007

FastScripts 2.3.2 has been released, and contains a few very significant bug fixes:

  • Support for aliases to folders in script hierarchy!
  • Improve performance of syncing changes to script folders
  • Fix display of keyboard shortcuts on non-US keyboard layout
  • Avoid adding menu item separators for empty script folders

This was easily the most difficult bug-fix release I’ve shipped yet. See the first item in the list above? Wonder why there’s a an exclamation point at the end of that sentence? Partly it’s because the feature has been requested for many years, so it’s long overdue. But mainly it’s because finally delivering this functionality puts a cap on what have been some very frustrating and difficult design changes behind the scenes with FastScripts.

All of this work, and all I get is a double-dot bug fix release?

The reason is that although FastScripts is dramatically changed by this fix, I do consider the failure to support folder aliases as a bug. It was an oversight on my part when I first designed FastScripts, and the oversight cost me dearly in the ways I decided to implement it. The short story is that the automatic syncing that goes on between your scripts, the menu display, and your keyboard shortcuts is all sort of magical. It’s a design goal of FastScripts that you should be able to do just about anything you like with your scripts: move them, edit them, delete them, add shortcuts, remove shortcuts, etc., and that FastScripts should not only keep up but keep up correctly, without requiring you to quit and relaunch the application.

Allowing folder aliases just adds to the complexity. For instance, a particular script can now be pointed to by two separate keyboard shortcuts, which reach the script via different paths through the script tree. Sounds academic, but it’s important to distinguish between these two shortcuts, because one might be a global shortcut, and the other application-specific.

The magic comes at the cost of repeated developer forehead-slapping. Enjoy :)

Update: I was sort of holding my breath hoping nothing too terrible would be discovered in this release. Well, so far nothing too terrible, but Takaaki Kato found a little issue: aliases to applications bundles no longer show the application as a launchable icon in the menu. The problem here is aliases to .app bundles are technically aliases to folders. The new feature is working too well! I will get working on a fix for this.

Update 2: Fixed in 2.3.3.

Service Scrubber

June 2nd, 2007

Most of us face the problem of inertia in almost everything we do. We eat the same foods, watch the same television, take the same walks, go to the same parks, talk to the same people, day in and day out.

And in many ways this is good. But the sheer inertia of our habits can prevent us from realizing how much better things could be with just a little tweaking. Walk a slightly different route one day on the way home from work, and lo and behold, a secret urban garden (my gift to WWDC attendees and SF SoMa workers).

When it comes to computers, I consider myself especially sensitive to the frustrating ways that computers do what I don’t want them to, which is why it’s surprising that it’s taken me this long to install and embrace Service Scrubber, from Many Tricks. The software is free but donations are accepted. I donated, and you will too!

Service Scrubber does one thing well: it gives you power over the (quite likely) sprawling System Services menu on your Mac. Not only does it let you show or hide items, it also lets you remove or change keyboard shortcuts assigned to them. Nifty!

The problem with services is they’re installed passively when you install applications on your Mac. If you’re like me and tend to download and lazily keep around a bunch of applications, your menu will be booming with items you don’t really care about. When I first launched Service Scrubber, I got the unenjoyable spinning rainbow cursor, which was a symptom of it digging through my massive 125 long list of installed services. This was the only user-unfriendly experience I met, and it was quickly made up for. From then on I was in control of everything. And loving it. As I disabled services I would never use, I felt the usefulness of my Mac grow greater with each unchecked box.

Using Service Scrubber to clean up your menu is one thing, but even more significant is the ability to reclaim valuable keyboard shortcuts. As I browse the list of services that I am now disabling, I flash back to the dozens of times I’ve accidentally invoked them. “Grr! Why the heck is the JavaBrowser opening? I don’t even like Java!”

My only criticism of the application is a minor usability issue with the list of services. When an application has provided multiple services, they’re collected in a disclosure group named after the application. But when only one service is listed for a particular application, it shows up in the list by service name. It’s hard to tell at a glance which application these services belong to.

Few utilities scream “necessary” as loudly as Service Scrubber, which is why I’m ashamed it’s taken me this long to overcome my own inertia and to install it. Apple should buy Service Scrubber from Many Tricks and make this part of the standard user experience. Without it, Services are terribly broken.