Monday, March 31, 2008

WD Hard drive - what's the warranty?

I go through hard drives ... like clockwork. Every six months the six work and home machines I maintain need a new hard drive.

None of the brands seem better than any other. I try to pay about $150 - $200 since that seems to the price of reasonably current drives with most of the bugs worked out.

The only other thing I look for is the warranty. Not that I ever bother to use them, but I figure a longer warranty means the manufacturer has a bit more confidence in the product.

Today I had to replace a drive quickly, so I didn't look for a warranty. When installed it, I couldn't find any reference to a warranty period.

I found something on Western Digital's web site when I entered the serial number:

Warranty Check for End User

By default, the warranty date is calculated from the manufacture date. However, if you have proof of purchase, we can update the warranty to calculate it from the purchase date. If you feel that the warranty date needs to be updated from the purchase date, please follow the instructions below.

  1. Send us an email from this link:
    http://wdc.custhelp.com/cgi-bin/wdc.cfg/php/enduser/ask.php
  2. Put in "Update warranty" in the subject line.
  3. Attach a picture or a scanned copy of your purchase receipt (jpg, jpeg, or gif formats only, max 500KB)
  4. Send the email.

The date I was given was 10/2008, or about seven months from now. So I'm guessing the US warranty is one year, but if you don't have a receipt you can still make a claim for a shortened period.

Odd development.

PS. I am getting tired of restoring from backup. I'm planning to at least put NAS storage at home, with a RAID array so I can just swap dead drives without having to do a restore.

Saturday, March 29, 2008

Aperture and Time Machine: a joint bug

Apple suggests disabling Time Machine when Aperture is running  :

Time Machine may back up the entire Aperture Library on each run

As a workaround, turn Time Machine off (in Time Machine preferences, in System Preferences). When you want to manually back up, quit Aperture, then choose Back Up Now from Time Machine's menu bar icon (Mac OS X 10.5.2 or later), or by Control-clicking or right-clicking Time Machine in the Dock and choosing Back Up Now.

Translation: We have a nasty bug.

Aperture 2.1 is out -- and the installer is broken ...

I got hit by this bug:

Apple - Support - Discussions - Aperture 2.0.1 doesn't recognize that ...

Aperture 2.0 or later is required to install this update.

The Aperture 2.1 48MB updater doesn't recognize that Aperture 2.01 is installed. I tried various hacks that have worked for others: removing pref files, removing receipts from all prior Aperture installs, removing the Aperture ID file from Pro Apps, deleting Aperture, emptying trash, reinstalling from DVD using an Admin account, etc.

No joy.

Not coincidentally, when I run Software Update I'm not notified of the 2.1 update. On my G5 iMac running 10.4.11 and all security updates there's something broken in the Aperture registration department.

I was able to install the 184MB Aperture 2.1 trial version. It recognized my registration key and it includes the "dodge and burn plugin"

Even after successfully installing 2.1 trial however, the updater still does not work.

Very annoying.

BTW, the sample projects that are installed from the DVD occupy 3GB of disk space. They're stored in Library\Application Support\Aperture.

What Time Machine can and can't do

via DF, I came across a great review of OS X Time Machine backup software. For example:
X.5 Time Machine (Quarter Life Crisis)

...A point that is rather sore as well for me is the fact that Caches folders are completely excluded from backups. By Spotlight’s poor design the Caches folder contains a Metadata folder which applications have to store their data in if they want it to be found in the index. Those metadata files will not be in a backup. As a consequence restoring your system from a backup will leave you with an incomplete Spotlight index until you run all the applications which stored data in the Caches/Metadata folder and make sure they re-create them. Ultimately this is a Spotlight issue, I think, but with Time Machine being made by the same company, they should have had an eye on it...
Quarter Life has an extensive list of critiques: the UI is truly awful, there's no encryption of the backup (!), there's very limited control of what's backed up, etc.

Friday, March 28, 2008

Firewire, USB and SATA performance on Macs

I have an old 3G Firewire iPod and a several USB iPods. The old Firewire iPod is a joy to sync. Extremely fast, instant dismount. The modern USB devices are a pain. My Mac Firewire connected drive feels as fast as an internal drive, my PC USB drives are sluggish.

Gigabit ethernet connected drives, in my experience with my CPUs in heavy use, are much faster than local USB drives and even comparable to local Firewire 400 connections.

This, of course, contradicts the theoretical performance figures for USB drives. It makes me mourn the lost beauty of Firewire 400.

So I really enjoyed this discussion of Firewire, USB and SATA on Macs, with Windows specific footnotes.

AppleInsider | Exploring Time Capsule: theoretical speed vs practical throughput

USB has a faster theoretical maximum than Firewire 400 (400 Mbits/sec; 50 MB/sec), but Firewire 400 is actually much faster than USB because it uses smarter peer to peer interface hardware rather than pushing low level work onto the PC host's CPU as the simpler master to slave architecture of USB does.

On a Mac, Firewire is typically around twice as fast in real world transfer rates, with USB hitting around 18 MB/sec and Firewire reaching 35 MB/sec throughput. Windows' implementation of USB has historically been faster than Mac OS X's, with Windows' USB reaching throughput closer to 33MB/sec..

Firewire on a Mac is far faster than USB on an XP box, I suspect Firewire on XP is comparable to Firewire in OS X and also much faster than USB in real world use (ie. when the CPU is loaded down with other tasks, and so unable to respond to USB demands).

Given my experience I'd expect a USB drive on an gigabit wired Airport base station to be significantly slower than a SATA drive inside a wired Time Machine.  I hope that will be tested in a future post.

Thursday, March 27, 2008

The case of the vanishing Outlook Navigation Pane Shortcuts - and how to backup and restore.

On Friday March 21st my customized Outlook 2003 Navigation Pane Shortcuts were fine. On Monday March 24th I they'd vanished.

This has happened before. It's bad, because I really depend on these things.

I don't know why they vanished, though I suspect an update of some sort triggered an old bug. These things are known to be fragile in Outlook 2003. I resolved to come up with a way to restore and back these up, and with a bit of Usenet help I did manage that.

Here's what worked for me.

  1. Find out where Outlook stores this data: Microsoft kb: Outlook file locations [1] mostly answered that question. It says these customization are stored in: "drive:\Documents and Settings\<user>\Application Data\Microsoft\Outlook\Outlook.xml". There's an error in the kb though, the file is not named "outlook.xml". When Exchange Server is in the picture the file is named by the Exchange/Outlook profile. In my case that's "Default Outlook Profile.xml".
  2. I used our corporate backup software to find the most recent backup prior to when the truncation occurred.
  3. I saved the last 19KB file to a local folder and used a text editor to extract the portion with the tags: <userdefined> from the backup. Then I exited Outlook and copied it into the current version of this file.
  4. I then launched Outlook and added ONE new Shortcut to a store in my PST File. If you don't do this you get a "messaging error" when you try to use the old Shortcuts that point into local PST files. My guess is adding a new one forces Outlook to update some binary cache file it won't otherwise update.

I still don't know why my Navigation Pane Shortcuts vanished. They may have been a casualty of something that damaged another part of the "Default Outlook Profile.xml" file. I'll see if it happens again, but from now on I have a backup and an easy way to restore them when they get wiped out.

-- footnotes --

[1] It's astounding how long and complex this list is. Outlook is a very old and rickety piece of software. Slipstick also has a good reference list.

[2] Example:

<userdefined>
        <linkgroup name="PIM">
            <wdLnk>
                <ltype>shortcut</ltype>
                <reckey>2B1967ED1BF9A2489BE8AFD510569E6E</reckey>
                <eid>0000000038......000000000</eid>
                <rootfold>1</rootfold>
                <name>Outlook Today</name>
                <storeid>1</storeid>
                <urlhint></urlhint>
                <clsid>0078060000000000C000000000000046</clsid>
                <icondata></icondata>
            </wdLnk>
            <wdLnk>
                <ltype>shortcut</ltype>
                <reckey>000....E750000</reckey>
                <eid>000000002B1967ED1BF9A2489BE8AFD510569E6E0100BB4E71E8D95434469F02C78FF25B3D85000000981E750000</eid>
                <name>Calendar</name>
                <storeid>1</storeid>
                <clsid>0278060000000000C000000000000046</clsid>
                <icondata></icondata>
            </wdLnk>
....
</userdefined>

Sunday, March 23, 2008

FLIP Video Ultra camcorder: iMovie HD works, iMovie '08 might

[Update - Over the course of using and testing this device I became very negative about it for all OS X users and even for XP users. I don't believe the video files will be readable in five years. On the other hand, as per my 7/08 update, on one machine iMovie '08 now edits this video.]

I bought a Flip Video Ultra Series Camcorder for the kids to use. I've jotted down some initial impressions below.
  1. It feels flimsier and cheaper than the original model a friend of mine has. I'm surprised by this. I'd recommend buying the older model, which is now sold at a discount.
  2. There's no CD in the box, the software is delivered in the camera's memory store. Cute, and it works.
  3. Videos are in "AVI" format -- that's a metadata wrapper around a codec. In this case coded is 3ivx MPEG-4. iMovie HD (old version) can import these files after the 3ivx codec is installed, but iMovie '08 (current version) cannot (more below).
  4. Amazon had Jan 2007 firmware update. I downloaded and installed it but my camera was up to date anyway.
  5. The bundled software for OS X video editing is universally derided. I did not install it.
I installed the 3ivx MPEG-4 decoder from FLIPVIDEO:System:INSTALL:Macintosh 3ivx from a non-admin account. It used a standard Apple installer, no restart required. Install is into a Applications:3ivx (shared applications) and it includes an uninstaller* and a link to 3ivx.com [1]

Videos are found in FLIPVIDEO:DCIM:100VIDEO.

Since iMovie '08 only imports DV, MPEG-4 and .mov files I used Mike Ash's QTAmateur to translate the AVI files to DV files and imported these into iMovie. QuickTime Pro would also work but costs $30 -- and Apple makes users repurchase a license with every significant update.

The need to translate prior to import into iMovie '08 is very irritating. I'm working on something better, or I could just use iMovie HD. I've left feedback for Apple requesting support in iMovie '08 for importing AVI files when codecs (such as 3ivx) are installed. I'll also contact some Mac gurus I know.

I'll have more on the camera later once I figure out a good import workflow. Apple definitely deserves multiple hard blows for the lack of file import support in Movie '08 vs. iMovie HD.
--
[1] 3ivx is hoping you'll buy the full version from them. The current version is a small fix ahead of what Flip Video is shipping:
3ivx Technologies Pty. Ltd., the MPEG-4 Video & Audio specialist, announces the immediate availability of version 5.0.2 of the 3ivx MPEG-4 compression suite for Windows, Mac OS X & Linux....Version 5.0.2 fortifies the 3ivx MPEG-4 Filter suite against software exploitation from maliciously crafted video files.... improved Vista compatibility and additional QuickTime 7.3 compatibility...
The 3ivx site has some interesting configuration information, but the decode page for OS X is blank. The 3ivx site references iMovie HD (they call it simply "iMovie"), but not the problematic iMovie '08.

[2] Apple's iMovie was probably cutting into Final Cut Express sales, so Apple tossed it out and gave us 'iClip' instead.

Update 3/23/2008: I started a thread on Apple's Discussion list . It's gotten at least one helpful response that suggested MPEG Streamclip.

Update 3/23/2008: If you don't have it, you can download iMovie HD from Apple. I don't know if it really checks for iMovie '08, most everyone with a Mac will have one or the other though.

Update 3/30/2008: I found an AppleScript that should do what I need. It tells QuickTime Player to open multiple AVI files, process them to DV stream, then delete the originals. Unfortunately, it's giving me cryptic error messages.

Update 3/31/2008: I'm beginning to think Apple quietly disabled AppleScript driven conversion in QT Player. Nobody seems to know anything about it.

MPEG Streamclip is a free video converter and editor that will work with the 3ivx encoded AVI files FLIP Video produces. QuickTime Pro ($30) won't do batch conversion, but it will directly edit the AVI files -- and it may be much simpler to use than iMovie. Perian doesn't help with conversion, but some feel it's a better solution than the 3ivx supplied codecs. VisualHub does batch conversion and is well regarded, but it costs $23 and the "trial version" is very limited. Mike Ash's QTAmateur also does batch conversion and it's free.

I considered the possibility of a script solution that would automate the flow into iMovie, but neither iMovie '08 or iMovie HD are scriptable [1]. So the best one could do would be to flow into iPhoto and collect from there.

I like the idea of a simple editing solution the kids can use on their video clips, without a translation step. iMovie HD doesn't require the translation step, but it's too much for now. I think I'll try MPEG Streamclip first, then, if that doesn't work, I'll spring for QuickTime Pro. If that fails then I'll fall back to iMovie HD. I'm going to leave iMovie '08 out of the picture for now, it just aggravates me.

Update 3/31/2008b: MPEG Streamclip

I'm back from my MPEG Streamclip. It's very impressive as a free app, but it's pretty rough. I came across a lot of odd behaviors, and it's a very industrial interface. There was no budget for eye candy! I came up with some interesting numbers in testing a small video:
  • initial size (AVI file, 3ivx coded): 12 MB
  • convert to DV using QT Amateur or iMovie HD import: 84MB file, exquisitely slow.
  • MPEG Streamclip: painless quick trimming, but can't save as AVI (no encoder). Oddly enough, none of the 'Save As' options worked. Export worked though ...
After I trimmed the small video to a 10 second clip I tried exporting from MPEG Streamclip to various formats:
  • Conversion to mp4 H.264: small clip took minutes (2.5MB)
  • Conversion to QuickTime Motion JPEG A: very fast but 17MB file
  • Conversion to Apple MPEG 4: very fast and the file is only 2.2 MB (quality probably less than H264)
iMovie '08 was able to import the H.264, Motion JPEG and Apple MPEG 4 files.

If it was just me I'd go with MPEG Streamclip, do initial trimming with it, export as Apple MPEG4 then drop the clip in iMovie. I think Streamclip is too rough for the kids though. So on to QuickTime Pro.

Update 3/31/08c: QuickTime Pro

Well, we have a winner. QuickTime Pro is a very nice tool for trimming video then saving it.

Just as with Streamclip, I experimented with various video formats. QT Pro will open the original AVI file and save it as an MOV file, but that doesn't help. It's simply changed the wrappers.

I tried exporting a QuickTime movie using H.264 compression, but it was unbearably slow on my G5 iMac. MPEG-4 Improved had very tolerable speed and image size and quality, but it was not compatible with iMovie '08. Until I turned "streaming" off, then it worked.

So I think I'll teach the kids to use this workflow:
  1. Copy videos to a shared folder.
  2. Trim and save using QuickTime Pro.
  3. If they want to assemble the clips into a movie we can use iMovie '08 or iMovie HD.
Update 4/30/2008: My Amazon review - not for OS X customers.

Update 6/5/08: Flip's owners, rebranded as Pure Digital, have finally acknowledged there's a problem with iMovie. In the meantime, Apple's QuickTime 7.4.5 broke the 3ivx codec used by the Flip camera on OS X 10.4 (but not 10.5). My costly version of QuickTime Pro is now of no use. Neither Apple nor PureDigital has acknowledged the problem, but the Apple and 3ivx support forums have lots of complaints.

Update 7/3/08: The FLIP 3ivx videos are now directly importable and editable in iMovie '08 7.1.2 with the default FLIP provided 3ivx codec, OS 10.5.4, Intel processor, and QuickTime 7.5.

I've been using Perian on my PPC iMac since QT 7.4.5 broke 3ivx audio

With that codec and QT 7.5 & iMovie 7.1.2 & 10.4.11 FLIP video import attempts don't produce any error message, but they don't work. I need to reinstall the 3ivx codec and try again.

Update 12/12/08: Apple has even provided official documentation on import from new FLIP camcorders.

--

[1] Scriptability is a great way to test when Apple software is polished and ready for use. Apple commonly releases poor quality products then tunes them up over many iterations (ex: iPhoto). Applescript support seems to require a mature product with a healthy code base and good design, so the lack of Applescript support in iMovie HD, iMovie '08 and (really) Aperture 2.1 are all bad signs.

Selling a RAZR on Craigslist vs. SecondRotation - the winner is ...

Craigslist beats SecondRotation - handily.

I started our with SecondRotation; I don't like eBay so I didn't bother with them.

This is how the SecondRotation sale went:
  1. Go to web site.
  2. Create account.
  3. Get quote ($50).
  4. Clean out phone.
  5. Find packaging, find drop-off spot, send package.
  6. Wait a week.
  7. SecondRotation says the phone is "locked" and offers to "dispose of it for free".
  8. Request return of the phone.
  9. Wait.
  10. Again request return of the phone.
  11. Wait.
  12. Phone is returned, without much packaging. The box is a bit beat up, but otherwise it looks like what I sent them.
  13. Sprint support says the phone isn't locked.
Now I try Craigslist. For the sake of comparison I sell it for what SecondRotation offered: $50.
  1. Take a picture.
  2. Post picture and description. I include a link to a Google Apps page. That page has my contact info and my LinkedIn profile.
  3. Get six responses within 3 days. I guess $50 was a bit on the low side, but I'm fine with that. I accept the first one and remove the advertisement.
  4. [I'd already cleaned out the phone, if I] hadn't I'd have done it at this point.
  5. Arrange to meet at my office so buyer can switch phone to his number before handing me any money.
  6. Phone switched, I get $50.
The Craigslist experience was much better than the SecondRotation experience -- even if I assume SecondRotation really did think the phone was locked. Maybe it was ... transiently.

Recently I used Craigslist to move a child's play structure and a wooden futon frame from our attic. I'd tried to give them away for years without success, a Craigslist ad got rid of them in days. I didn't ask for money, these were high quality goods I'd been unable to find a good home for. Both items ended up with young families who will get years of use from them.

I'm a Craisglist fan.

The future of the Nintendo Wii - DRM and resale implications

Millions of people buy a Wii, and it works. I buy one (list price) and our 2nd remote won't stay "synchronized" (connected) to the console.

I try not to think about this sort of thing too much. I'm sure it's not personal.

My balky remote means I've had to spend time with the manual. There's a suspicious volume of discussion on troubleshooting the remotes, and on the complexities of using older Nintendo games (example: Classic, meaning modern, controller vs. GameCube controller). Mixed among this is a very brief discussion of how Nintendo's digital rights management works for the "Virtual Console Games".

Briefly, there are three classes of Nintendo games for the Wii system:

  1. Nintendo Wii games shipped on optical (CD/DVD like) discs. Game data is stored either in the console or in optional 2GB SD card.
  2. Nintendo GameCube games - also optical disc based. Game data is stored in 1-2 optional GameCube memory card(s).
  3. Virtual Console: games for NES, Super NES, Nintendo 64, Sega Genesis, TurboGrafx 15, NEOGEO and "more". Game data is stored in the Wii console or in optional 2GB SD card.

The Virtual Console games shipped in various cartridge formats, they now are downloadable and run in emulation environments on the the powerful Wii processor.

It's the Virtual Console games that have the most interesting Digital Rights Management implications. I suspect that a future version of the Will will use this infrastructure for modern games; the current console doesn't have enough storage to allow this.

So let's assume that the Virtual Console infrastructure is the future. What happens to those games when you try to sell a Nintendo Wii?

Page 61 of the Wii operations manual tells us what to do:

  1. Format Wii system memory. This removes downloaded content, but it can still be recovered for free from the Wii Shop Channel Account.
  2. Remove the Wii Shop Channel Account. This removes "records of your transactions and rights to downloaded software".

In other words, to sell a Nintendo Wii, you must first destroy your Virtual Console games.

Ouch.

Maybe Nintendo will figure out a way to move games to a new machine, but there's nothing about that in the documentation. The excellent Wikipedia article on the Wii says:

The SD card can be used for uploading photos as well as backing up saved game data and downloaded Virtual Console games. To use the SD slot for transferring game saves, an update must be installed. An installation can be initiated from the Wii options menu through an Internet connection, or by inserting a game disc containing the updated firmware. As a presently uncircumvented system of digital rights management, Virtual Console data cannot be restored to any system except the unit of origin.

It's certainly interesting to watch how the evolution of DRM.

Update 3/23/2008: See the comments. There may be a way to access the accounts and restore access to the virtual games after selling a Wii -- but it's not well documented. I assume Nintendo will need to figure this out eventually. They'll probably copy whatever Apple does with the iPhone.

* Good luck figuring out which of three classes of controller will work with the Virtual Console Games and the storage relationships to the Wii SD card and the optional Wii GameCube Memory Card. This Wikipedia article tells us that the "classic controller" works with all of the emulation games, but the GameCube controller is almost as good. On the other hand, there are Game Cube games that don't work with the "classic" controller. I think if you don't mind the long cables and you have the Wii console well secured, the GameCube controllers are preferred.

PS. Even when I log out of my personalized Google search, today a brief post of mine is the 2nd hit on a search of "Nintendo Wii digital rights management". Weird.

Update 3/31/2008

An interesting corollary of the Wii DRM -- you really don't want to return a console.
Please do not return your system to the retail store. All of your Wii Shop data, including games and points will be lost. They are non-refundable and non-transferrable. If you don't have a Wii Shop Account and you elect to return your product to the store, you must first follow the Delete Usage procedure described in your manual to remove any personal pictures, email addresses or other information that may be on your system.

Saturday, March 22, 2008

Updaters: From Diff to Whole (and Sparkle)

This TidBITS article brings back memories for old geeks:

TidBITS Problem Solving: Tales from the Sausage Factory: Why Those Big Downloads for Simple Updates?

...And then at the end you have whole-app updaters such as Sparkle, which is what we use (see "Sparkle Improves Application Update Experience," 2007-08-20). The Mac developer community seems to have more or less standardized around Sparkle these days. I'm amazed at how often I open and app and find that it's using Sparkle to keep itself up to date. Aside from the programs where I implemented it myself, I don't recall the last time I saw an application using a more granular updater. Even Apple seems to publish monster updates for their apps. They use more granular packages for updates to the OS itself, but on the other hand there seem to be a lot of problems caused by these which are fixed by re-applying the big combo updaters they put out...

In the old days updaters were pretty small, typically diffs. Those days are gone -- the cost of bandwidth is less than the cost of the problems that arise with anything less than a whole-app update.

In my real job we still use an old data update solution that's basically a diff-type update. Nowadays whole-data is the only way to go.

Aperture 2.01 bug: retouch broken for grayscale images

This is a verified bug -- but it may be limited to grayscale images.
Apple - Support - Discussions - Retouch/Clone problem ...: "I can't get Retouch (or clone) to do anything at all. They act like they're working but nothing in the image is changed. However the Spot and Patch tool will work on these images/files."
I'm using 10.4, but it sounds like this is a bug everywhere.

Update 3/22
: I exported as PNG and reimported and the tool works, so it's not broken for every file format. Then I found the "limit to 1024" PNG export is broken -- it ignores crops. Apple must punish the QA group for finding bugs.

SharePoint 2007 and non-Office documents: didn't Microsoft lose a court case for this sort of thing?

SharePoint 2007 is ubiquitous now. It's eliminated most other document management and "collaboration" solutions in corporate settings.

Office 2007 Word, Excel and Powerpoint documents work pretty well in a managed Sharepoint document repository (library).

Oddly enough, other documents don't work nearly as well. They're very much second class citizens, with an unnecessarily clumsy and error-prone workflow for check-out, check-in, versioning and editing.

Funny how that works.

I thought Microsoft got in a wee bit of trouble for these sorts of games -- once upon a time. Too long ago, perhaps. Certainly nobody in the current US justice department is paying attention now.

Thursday, March 20, 2008

Google's GData OS X cocoa library now iPhone compatible: photos to Picasa, etc.

The "one more thing" reference in this Google Mac blog posting seems appropriate ...

Official Google Mac Blog: New frontiers with Google Data APIs and Objective-C

And one more thing...

The source code for the GData Objective-C Client Library is now compatible with the iPhone SDK as well. Perhaps you want your iPhone software to send photos to a Picasa Web Albums account, or keep a journal of phone calls automatically in Blogger. Maybe your iPhone application accesses a database of information from a Google Spreadsheet or from Google Base. With the Google Data APIs Objective-C Client Library, creating software for these tasks is straightforward.

If you are writing iPhone software, just drag the "GData Sources" group folder from the GData project file into your iPhone project, and use the GData APIs as you would when writing a Mac application. The Objective-C Client Library is an open-source project, so you can find links to the sources and documentation on the project page.

So those 100,000 SDK developer wannabes can now easily leverage Google's entire suite of services with very little extra effort.

Wow.

Wednesday, March 19, 2008

The iPhone SDK-OS is like the Palm OS -- and that's a good thing

When the SDK came out I was bemused to find similarities to the Palm OS world: No multitasking, data access limited to the application's data.

Since then we've learned that Apple's applications do multitask (if I actually owned an iPhone [2] I'd have noted that obvious fact, but I write these posts very quickly) and some iPhone partners (AOL, ?Adobe) will be allowed access to multitasking. For most developers though, developing for the iPhone OS X is rather like developing for Palm OS [1].

Fubo.org has made a persuasive case over the past few days that these are justified and measured constraints given the current state of iPhone development. The articles are well worth reading, but I particularly liked the fine way he concluded his last post:

furbo.org · More brain surgery…

...If you’re still unconvinced, let me ask you one final question: do you want to get IM notifications while you’re making a 911 call?

[1] One developer I read noted that the original Palm OS SDK had a more sophisticated 'wake me when an event matches my entry on the event registration queue' function than he found in the current iPhone SDK.

[2] Gordon's laws of acquisition mean I don't buy until my demands are met ...

iPhoto can't merge Libraries -- but neither can Aperture

What can I say?

Aperture: Merging Libraries confirms you ... can't merge Libraries.

You need to export project-by-project-by-project then import project-by-project-by ...

It's awe inspiring, really.

And now I own this sucker ...

Tuesday, March 18, 2008

Safari 3.1 STILL doesn't work properly - pasting into rich text fields

Safari 3.1 is out, and it's no better with rich text fields than Safari 3.0 was.

When I copy rich text to the clipboard, and paste into a Blogger rich text edit area, it frequently appears outside of the bounds of the text area. If I repeat the operation, it appears repeatedly "out of bounds".

There's no fix but to switch to HTML mode and paste into that text box.

Firefox/Camino don't have this problem.

Very annoying. I think Apple is going for force me to fire up my free developers account and file a bug report. Next time it happens I'll attack a screenshot to this post ...

Monday, March 17, 2008

Vote for the Google Calendar features you want ...

You can "vote" for the Google Calendar features you most want.

Go to Calendar Help Center and click on the "send suggestions" radio button.

On the next screen you can click "Suggest it" for the features you most want.

The one I want, a no-alarm default for appts and a kb shortcut to add/remove alerts, isn't on the list today. Lots of other good things are.

Vote once. Vote often.

Sunday, March 16, 2008

Aperture is still slow

I've ordered Aperture 2.0, but my time with the trial version tells me Aperture is still slow.

It's not the old GPU/rendering story. That's not the problem.

The problem is that Aperture brings up the SBOD (spinning wheel) on very routine operations -- such as deleting images when in "P" (preview) mode. Thirty second timeouts are not uncommon.

These aren't operations that should push any machine. I assume they're related to threading issues with the underlying data storage mechanism.

There's still a lot of rework to be done on Aperture. The 1.0 code base must have been extremely problematic.

Saturday, March 15, 2008

Visible Body - Internet Explorer Only

The Visible Body | 3D Human Anatomy sounded interesting -- but it's XP and IE only.

What a shame.

That's quite odd these days. Once upon a time insisting on IE and XP worked quite well, but I'm not sure that's true now.

Friday, March 14, 2008

Google Apps Calendar fix? Integrating identities.

Only last week I'd hit another snag in our family calendaring project:
Gordon's Tech: Calendar sharing bugs and limitations in Google Apps vs Google Standard

.... I'm running into design limitations and bugs with Google Calendar and Google Apps Calendars. At the moment they include:
  • A Google Calendar has both a "Private Address" and a "Calendar Address". The Private Address enables sharing with a single individual. A Google Apps Calendar has a "Google App Domain Address" and a "Calendar Address". It's likely that Google re-purposed the "Private Address" function to enable "Domain sharing", but that means you can't privately share a Google Apps Calendar outside of a Google App domain.
  • There's an bug in Google Apps Calendar. Under certain operations it gets stuck in a mode where it will only share busy/free information -- even if you enable public sharing at both the domain and calendar level....
Today the problems have resolved, and my Google Apps Calendar now shows the both a standard and a Public calendar address.

I hope Google's fixed the bug(s), but I suspect the unexpected resolution is due to slow propagation and completion of certain changes to Calendar settings. For now, anyway, I seem to have a fix.

Now that I'm moving forward again, I'll recap. This might be useful to someone.

I've described our family calendaring project previously. Using Google Apps to create our eNom administered family domain was easy. That gave each of us email and calendars.

Emily's email has lived on the Google Apps account for months, with IMAP sync from two our Macs and access via Google's Java client for the Blackberry. Her Google Apps Calendar also synchronizes with her Blackberry using an other Google Java app.

That left me as a problem. I'm waiting for the iPhone to meet my minimal demands, so I'm on my second Palm Tungsten E2. That devices syncs with Outlook at home (work is more complex, I'll omit it). Now that Outlook can sync with a Google Apps Calendar my home Outlook is synchronizing with my Google Apps Calendar every hour or so.

Only one problem remained.

I have two primary (and several secondary) Google/Google App identities. One is in the family domain, the other is much older and has a plain gmail.com address. The older one is bound to years of email, Google search results, blogger*, etc. Google now lets me keep a single Google App identity and a single Gmail identity running simultaneously so I can work with both, but it's a pain to have two calendars. Two emails are fine, but two calendars is no good.

Now that's fixed. Here's what I did:
  1. Google Apps: In Domain Management set the limit on extra-domain sharing with authenticated users to maximally permissive.
  2. In my Google Apps Calendar added my Gmail account with maximal control (this didn't used to work).
  3. Set my Google Apps email to forward to my Gmail account -- so I get email reminders.
  4. In my Gmail account cleaned out my Gmail Calendar and renamed it "Don't Use!"
Now I can sync my Google Apps Calendar to my Palm via Outlook, I can quickly add items to that Calendar from my regular Gmail account, and my wife can see my personal calendar and add items to it.

The only minor glitch is that my Gmail defaults to using my legacy Gmail Calendar for event creation, but it's not hard to switch target calendars in the drop down box. The name for my old calendar, "Don't Use", reminds me to switch.

So far, not too bad.

* Google Apps accounts can't join a Blogger blog btw.

Wednesday, March 12, 2008

Travel tool: Mini Surge Protector with USB Charger

I carry one USB charger and a simple extension cord in my bag. This Belkin product is a sure thing for my carry-on bag:

Belkin Mini Surge Protector with USB Charger - The Unofficial Apple Weblog (TUAW)

....stylish surge protector power strip looks like it would be right at home in any mobile Mac user's bag. It includes two powered USB ports for charging iPhones, iPods, and the like, as well as three AC outlets...

...The Belkin Mini Surge Protector is "coming soon" for $24.99.

The Belkin site mentions a "360-degree rotating plug with 4 locking positions". I assume the plug fully retracts.

This is a great boon when fighting for an airport outlet; most travelers will gladly relinquish an outlet in favor of the protector. My only change is that I'd like to see it ship with a 6 inch extension cord, I'll look for one that would fit.

Saturday, March 08, 2008

Calendar sharing bugs and limitations in Google Apps vs Google Standard

In honor of Google's Outlook synchronization I've been synchronizing my personal Outlook/Palm calendar to my calendar on our family site. (Corporate Outlook sync to Google Calendar is, regrettably, an unfair bending of corporate rules.)

So far, not too bad. I've done multiple personal Outlook/gCal syncs and one Palm/Outlook sync without duplicate events. So far.

Unfortunately, I have multiple Google identities. So I need to be able share a calendar between my primary (older) Gmail identity, which binds all my personal email and my primary blogs, and my family domain identity.

That's where I'm running into design limitations and bugs with Google Calendar and Google Apps Calendars. At the moment they include:

  • A Google Calendar has both a "Private Address" and a "Calendar Address". The Private Address enables sharing with a single individual. A Google Apps Calendar has a "Google App Domain Address" and a "Calendar Address". It's likely that Google re-purposed the "Private Address" function to enable "Domain sharing", but that means you can't privately share a Google Apps Calendar outside of a Google App domain.
  • There's an bug in Google Apps Calendar. Under certain operations it gets stuck in a mode where it will only share busy/free information -- even if you enable public sharing at both the domain and calendar level.

So I can't meet my primary goal -- of keeping my sync'd Family Domain Calendar private while enabling read-write access to it from my personal Gmail account (outside the family domain).

Even the private address functionality of the standard Gmail Calendar has a pretty limited set of functionality:

Note: the private address was designed for your use only, so be sure not to share this address with others. If you want to let others view your calendar, we recommend that you share your calendar's public address (or "Calendar Address") with them. If you accidentally share your calendar's private address, click on the "Reset Private URLs" link to regenerate your calendar's private address.

Google does have certain cultural limitations -- there's such an institutional bias to openness that they can't seem to get their heads around access controls.

I may experiment with flipping things around. Maybe I can sync my personal Outlook account to my Google Standard Calendar, and then share that Calendar within the family domain.

3/15/2008: I tried again today and from my Google Apps account I can now share the calendar with full privileges to my Gmail identity. From my Gmail identity I can now edit the calendar. Is someone from Google reading this blog?! (I presume the fix is coincidental, but ...)

4/24/2009: I've just run into the same od bug again. My Google Apps account was set to allow sharing only in the domain. I created a calendar in my owner/admin account. I then changed sharing to allow non-domain shares. I couldn't then make the calendar accessible. I tried various tricks as described in comments such as trying to make the calendar universally editable, etc. After a half hour or so of playing around I found I could create another calendar in the same account and that one was shareable. I then returned to the primary calendar and ... that one was shareable too.

I don't know if anything I did made a difference. Maybe it just takes an hour or so for sharing changes to really take effect. Clearly Google hasn't fixed this problem in the past year.

Friday, March 07, 2008

I'm back to Camino

I used Camino years ago -- it still runs on an ancient 10.3.9 iBook of ours and it's highlighted from days of old on my legacy web pages.

Eventually I switched to Firefox for OS X. I use it on XP, and for a while it was the best choice for working with Google's products and the general web alike.

Lately, however, Firefox has been pretty lousy on OS X. So I tried Safari, it seemed at first to work with Google stuff.

Alas, no way Safari. I got tired of pasting text into a rich-text field and having it appear in outside of the field borders. It's a mess. Safari (beta) is doing things that it shouldn't ever do - no matter how buggy the JavaScript.

OmniWeb is based on WebKit, so I didn't bother trying it (that was my original OS X browser, before Safari came out). That left Camino; it's been very recently updated (Feb 2008).

I've been using Camino again for a week. It feels much faster than Firefox or even Safari, it seems to work better than Firefox with Google stuff, and, merciful Minerva, the damned keyboard shortcuts mostly work (cmd-I brings up "page info" rather than italicizing in the rich text editor, but cmd-c and cmd-v work).

So far Camino has been extremely well behaved. I've used it with Google Blogger, Documents, Spreadsheets, Calendar and Sites and it's worked with all of them.

Definitely worth a look.

Thanks Camino team. If you supported Amazon donations or Google checkout I'd send you some money! (Sorry, I don't do PayPal.)

Update 3/17/2008: Camino is giving me a few problems. It seems to miss clicks on occasion -- so I have to click twice for some items. Google expects Ctrl commands so the Cmd shortcuts aren't as useful as expected. Most of all I've been getting odd hangs using Google Calendar. Of course I can't say any other browser is better!

The iPhone is more like Palm OS than OS X?

Two interesting points from recent Daring Fireball posts about TouchOS (formerly known as iPhone OS X):
  1. No multitasking. iPhone OS switches apps, exiting on switch.
  2. Apps only have access to their own data (sandbox). (I think they may have access to some common pooled data though.)

Both of these limitations were part of the original US Robotics PalmPilot OS (PalmOS), and years ago conventional wisdom said Palm desperately needed a multitasking OS. (I would have had a different set of priorities myself; I thought the memory management issues were much more important than the multitasking problems.)

Jobs, during yesterday's presentation, said something like iPhone OS "draws heavily from OS X". DF has hinted the same thing over the past six months -- "inspired by OS X, but not OS X".

We need a name for this OS, maybe TouchOS. There's obviously a lot in common with Tiger 10.4, but the iPhone team did some radical surgery to build the TouchOS. Only they know the basis for these decisions -- hardware limitations, memory limits, security issues, stability, desperation ...

The lack of multitasking suggests TouchOS can't do Spotlight, or any indexing tool -- that requires multitasking. I wonder how many odd functional omissions are related to underlying OS issues. (The lack of task management, I'm convinced, must come from Jobs himself. I suspect he simply hates To Do lists.)

I'm not worried about the multitasking limitations. There's obviously enough available to enable enough functionality to succeed, the similarities to PalmOS 1.0 are really more curious than important.

Thursday, March 06, 2008

Limitations of iPhone iCal synchronization

From a Tidbits discussion post (emphasis mine): 

TidBITS - Why would Apple not fully enable iCal on the iPhone?

My wife and I wrote a few weeks ago about our frustration with Apple's iCal features on the iTouch and iPhone. We have 6 calendars that work fantastically on our home and work iMacs, but we are confused looking at the amazing limited version of iCal for iPhone. Can anyone explain to us the limitations Apple was facing that forced them to opt for a version of iCal where you can't make appointments on your different iCal calendars (or view them, for that matter) on the go? Why would anyone using Mac syncing of their iCal calendars even consider the iPhone and iTouch??? We won't be able to get either until this is fixed...

A man after my own heart. I know I'll feel the same pain. This why we need the SDK, so small vendors can provide solutions for power users. Apple can't justify the cost of supporting folks like us.

In a related note I've a post pending on Google's gCal sharing and notification services, and the issues (design and bugs) related to multiple Google Apps and Google Standard identities.

Wednesday, March 05, 2008

Google's official Outlook calendar sync has arrived

I've been waiting for this almost exactly one year.
Official Google Blog: Google Calendar Sync:

...This was my life for a whole year before we started working on Google Calendar Sync, a 2-way synching application between Google Calendar and the calendar in Microsoft Outlook. I was probably the most excited person on the team when we started developing it, because now I can access my calendar at home or on my laptop, on Google Calendar or in Outlook. When I add an event to the Outlook calendar on my laptop, Google Calendar Sync syncs it to my Google Calendar -- and since I also have Google Calendar Sync running on my desktop, the event then syncs from Google Calendar to Outlook calendar on my desktop. All of my calendar views are always up to date, and I can choose whichever one I want to use....
Hallelujah. Bad news for gSyncIt and SyncMyCal but this was really something only Google can make work.

I'll have a report on my experience soon -- I sync my aging Palm to Outlook at home. In particular I'll be curious to see if it works with Google Apps.

Update: I had events on my Google Apps calendar from prior experiments, so I cleaned them out prior to my first sync (reset calendar to new state). I also backed up my Outlook Calendar by copying it to a PST file, so if it gets messed up I'll just delete and restore. (Takes only a few seconds. This doesn't work on an Exchange account btw, but I don't use Exchange at home.)

Update: It does work with Google Apps. As of today it will only sync with the primary calendar for the account. So if you want to sync work and home and view them together, you need to sync work to one Google account and home to another. You could, for example, set up a Team Edition calendar for work, and a Gmail calendar for home. You can then share the two to provide an integrated view -- something I've wanted for years. Then you can see how well this maps to the iPhone calendar! Exchange/Outlook Calendar work is much trickier than at home, so I won't be messing with Exchange any time soon.

I ended up syncing over 1100 events in Outlook to the newly emptied Google Calendar.

Update 3/8/2008: There's a bit of trickiness in the configuration.

Update 5/8/2008: It mostly works, but there's some problem with all day events between Google Calendar, Outlook and my Palm. They end up turning from an "all day event" into a "24 hour event" then time-shifting an hour. The fix is probably to get rid of my all day events -- until my iPhone arrives.

Another problem is that the default install launches Google Calendar Sync for every user. The fix is simple. Find Google Calendar Sync in something like: 'C:\Documents and Settings\All Users\Start Menu\Programs\Startup'. Move it to something like 'C:\Documents and Settings\jfaughnan\Start Menu\Programs\Startup'.

Gmail address features: + and .

Wow. So if your email address is fredflintstone@bedrock.info you can start using fred.flintstone@bedrock.info any time you want. Gmail will treat the two identically:

Official Gmail Blog: 2 hidden ways to get more from your Gmail address:

...Append a plus (' ') sign and any combination of words or numbers after your email address. For example, if your name was hikingfan@gmail.com, you could send mail to hikingfan friends@gmail.com or hikingfan mailinglists@gmail.com.

Insert one or several dots ('.') anywhere in your email address. Gmail doesn't recognize periods as characters in addresses -- we just ignore them. For example, you could tell people your address was hikingfan@gmail.com, hiking.fan@gmail.com or hi.kin.g.fan@gmail.com. (We understand that there has been some confusion about this in the past, but to settle it once and for all, you can indeed receive mail at all the variations with dots.)...
The trick with the + suffix is very old, I think it might be a unix thing. It's neat to see it work in Gmail.

Personally, I prefer to use disposable Bloglines email addresses for the sorts of things the + suffixes are used for.

Google Apps Team Edition: extending an older domain with new services

Google has a version of Google Apps aimed at "teams" inside corporations who want to be able to collaborate beyond the limits of their IT department.

Welcome to Google Apps

Collaborate at work with Google Apps Team Edition.

  • Work on the same document together, instead of sorting out changes in attachments
  • Share documents and calendars securely with your co-workers with a click
  • Access it all from any computer, and even from mobile phones
  • Invite other team members to join and share with you

The trick is that Google Apps Team Edition can be setup without anyone demonstrating control over the corporate domain, though if you do demonstrate domain control then you can have more admin controls.

Using Google Apps would, of course, be cause for termination at many companies.

It has a safer potential use, however, as a way to extend an existing domain service.

An existing domain, like, for example, faughnan.com. I've long owned that domain; it's registered with Network Solutions and the DNS functions are managed by lunarpages. Through lunarpages I get the usual web/email/ftp services. The web pages are mostly legacy documents now, in part because they're published from a FrontPage 98 repository living on an old XP box.

In the past 10 years, I haven't come up with anything better. Google Sites, though, is interesting. It doesn't have many of the capabilities of FrontPage 98, but it has some other advantages. Most of all, though, a Sites collection is accessible from anything that can run Firefox/Camino/Safari/IE

It took only a few minutes to create a Google Apps Team Edition add-on for faughnan.com. The login name is my old faughnan.com email address and I've created a "Site" with a temporary address: http://sites.google.com/a/faughnan.com/faughnan-com-extension/Home

The next step will be to to ask Lunarpages (alas, they don't give us direct access) to add a CNAME pointing to whatever I end up calling this Site. After that point any web extensions on my Google Apps Team Edition site will appear to have an address like abc.faughnan.com

I'll post on how well this works - or doesn't work!

Tuesday, March 04, 2008

Yahoo! Pipes: what they're good for

I've posted a couple of times about Yahoo! Pipes, but I thought I didn't have a personal use case. Pipes do things like:

combine many feeds into one, then sort, filter and translate it

Now that I've lived in the Feed world a bit longer I can see LOTS of uses -- especially in a corporate settings. One example is when feed categories (streams, tags, labels etc) have their own feeds. Then one can combine well tagged posts from multiple sources into a single feed.

For example, in a few minutes, without reading any documentation, I merged two of my blogs into a single Pipe feed [1].

Now that's cool.

It would be much cooler if Google's Blogger supported category-specific feeds, but they don't. Other blog tools do better, I hope Blogger eventually joins the 21st century.[2]

[1] Pipes couldn't auto-discover the Blogger Atom feeds, I had to enter them directly.

Update 3/4/08: Oops. Blogger can do "label feeds" , but the capability isn't exposed in the templates I use -- not sure it's in any template. I'll have to explore a bit more.

Monday, March 03, 2008

OmniFocus for the iPhone - under development

The famed Omni Group evidently believes the iPhone SDK will allow apps to sync with the desktop:
Macworld: 25 native iPhone apps we hope to see

...We're working on a mobile version of OmniFocus for the iPhone which will synchronize with the desktop version. (We don't have the SDK yet, so we've been working on things that don't require the SDK: designing the mobile interface, adding synchronization support to the desktop app, and so on.)...
Sign me up for the beta program.

Update 3/8/2008: post-sdk release notice on the Omni blog. I'm now tracking that blog.

Sunday, March 02, 2008

Aperture's peculiar selection behavior - primary only

Aperture can't manage iPhoto metadata that I care about, such as comments associated with albums. So I can't use it as my media management solution, but I'm still seeing if I can use it as an image editor.

It's not doing so well.

One of the peculiarities is 'select primary'.

It's easy to set this mode by accident -- an errant touch of the S key will do it. In this mode even if you select multiple images in the UI, one is "primary" (the first selected). Operations apply only to the Primary.

To disable this mode either unselect it in the Edit menu or type S again.

I'm sure it's a useful mode for a serious Aperture user, but it's awfully easy to set it by accident. Of course Aperture is a pro tool, while what I really want is iPhoto Plus (with !$%@ Library Import capabilities).

BTW, there's an obvious bug in Aperture. Switching to Quick Preview mode should place a checkmark in front of that item in the View menu. It doesn't.

Update 3/2/2008: Well, I'm still at a loss. Even when I disable Select Primary mode an adjustment operation is only applied to the Primary image. This could be a bug, or just odd design -- equally probable I'd guess. Aperture has always had quality issues for me. Aperture doesn't have integrated Help functions (another budget cutting move), and the old PDFs aren't even on the Help menu (a last minute delivery bug), so it's a pain to investigate. Despite delivery version 2.0 the product still feels like it's on life support.

Update 3/2/2008: From the awkward PDF only documentation:
You can apply an adjustment or group of adjustments to a range of images by first applying the adjustments to one image and then lifting the adjustments from the first image and stamping them on the other images. You do this by using the Lift and Stamp tools and the Lift & Stamp HUD.
So if you want to get started by applying an auto-adjust function you can't do it in two clicks, you have to use extra clicks. Why?

Update 3/2/2008b: From Apple Discussion.
...If I just copy an adjustment of the auto level from an image to others, i think the copied auto level is only based on the first image...

...That's correct. There's no way to auto-level multiple images at once in Aperture...
In other words, even using the awkward Lift and Stamp operation, you only apply the results of the image-specific auto-level setting to multiple images, you don't auto-level each in turn.

Bizarre.