Archive for 2008

Ubiquity

Wednesday, August 27th, 2008

This afternoon I spent a little time playing with Aza Raskin’s new mega-meta-extension for Firefox, Ubiquity. (If you’re not up to speed on Ubiquity yet, imagine bookmarklets, extended with power similar to Greasemonkey (including the ability to control your entire browser window) and controlled with a lovely command line interface in the model of enso/Quicksilver). Unsurprisingly, I love it. Ubiquity makes the web more scriptable then ever before, and the current implementation combines several of my favorite interesting UI ideas (context sensitivity, command lines, and hidden UIs that spring into view when you need them).

As a learning exercise I wrote my first command, status-in-gmail, which you can subscribe to on this Ubiquity Commands page. The status-in-gmail command will update your Google Talk status message in any Gmail tabs you currently have open. You can supply an arbitrary string for your status message, or have it use the selected text on the current page.

I chose this for my first command because I’d written a similar command for Quicksilver and Adium a while ago using AppleScript, and I’ve missed it since I switched to using web-based chat in Gmail. The Ubiquity side of things was really easy to implement – they’ve done a great job providing simple APIs. The only hard part was figuring out how to script Gmail to do what I wanted.

The current code is alpha, of course, and still has some limitations – you can only change your status message, not your available/busy status, and it will throw an error if you try to use it without being signed into chat. But feel free to give it a try and let me know what you think.

Now, who’s going to write the first Quicksilver-to-Ubiquity bridge? :)

iPhone sync problem and solution

Monday, February 18th, 2008

A few days ago my iPhone stopped syncing correctly. When I tried to sync I would get a message that contact syncing had failed because “the sync server failed to sync the iphone”. If I disabled contact syncing, calendar synching would fail with the same error message, and if I disabled calendar syncing too, bookmarking synching would fail. I found a few people talking about the problem, but none of the suggested solutions (including restoring my iPhone) worked for me.

Finally I came across a weblog entry that mentioned looking at the console to see the sync log. I opened /Applications/Console and saw this message:


2008-02-18 22:57:38.111 AppleMobileSync[652] CFLog (0):
CFPropertyListCreateFromXMLData(): plist parse failed; the data is not proper UTF-8. The file name for this data could be:
/Users/abe/Library/Application Support/SyncServices/Local/clientdata/[really long numerical directory]/[really long numerical file name]

Apparently that file with the really long name was causing the problem. So I went ahead and moved it out of the way (I put it on my desktop so I could restore it if it turned out to be important). Then I tried to sync again… and it worked! I did get a couple of messages about resolving sync conflicts, but they were easily resolved and now everything appears to be working fine.

Take this for what it’s worth; I don’t know if this will work for you, or make matters worse. I have no idea what that file was supposed to do, and randomly removing application files from your computer is generally a bad idea. But if you’ve got a similar iPhone syncing problem, and nothing else works, you might want to check your Console log and see if there’s a similar file causing your problem.

Copies of Twisted book available

Thursday, February 14th, 2008

Update, 2/18/08: Thanks to those who have taken me up on this offer so far. I still have a few copies available. I’ll update this post when I run out of author copies, so if you’re reading this that means the offer is still good. Also, I’ve been asked if I would consider trading for other things besides the items on my Amazon wish list. Sure! Just send me an email describing what you’d like to trade.

I was thinking today about what to do with my remaining author’s copies of Twisted Network Programming Essensials. I’ve given most of them away, but I have a few left, and I’d like to see them get into the hands of people who will read them before they become obsolete. So I decided to try offering the following deal to anybody who’s interested:

  1. Buy me something from this Amazon wishlist. To make it a good deal for you, pick something less expensive than my book.
  2. Send me an email (abe at this domain) with your mailing address.
  3. I’ll mail you an autographed copy of Twisted Network Programming Essentials.

Sound good? Gift away. Or email me if you have questions. I currently have 10 extra copies, first come first serve.