Sunday, May 20, 2012

Image Capture hangs at "Scanning", process pegs at 100% - ghost iPhone and dust removal

I've used my Epson V700 with Image Capture for years. Until today it's never had a problem.

Today it has a problem!

My scans are taking a very, very long time to complete. They seem to hang after the scan is completed, but after about five minutes they complete. It's as though something is timing out. In Activity Monitor the Epson Scanner Process is pegged at 100% CPU.

I switched to another account and the scan completed in seconds. So it's not hardware. It's something about my primary account.

A restart didn't fix it and deleting Image Capture preferences didn't help.

The problem started after several scans, so it's not related to a software install. The /private/tmp folder that Image Capture uses to cache its work seems fine.

Next up I'll try Onyx and clear out all my caches.

It's a weird one.

Update: I've identified one difference. On my primary account Image Capture thinks an iPhone is attached, even though it isn't. I found one other report of this in Snow Leopard and another here.

Update 2: I got rid of the "ghost" iPhone camera by removing all USB peripherals and restarting. That didn't help however. Scanning in my primary account is still far slower than scanning in my admin account. I even tried repairing permissions; as usual that made no difference. I started an Apple Discussion thread on this.

Update 6/9/2012: There were two issues. Removing the "ghost" iPhone did make a difference. The rest of the difference was dust removal. I was used to having it turned off. Turning it on really extends scan duration. Perhaps it's on by default and removing preferences enabled it?

Finding partly played podcasts: In Our Time

iTunes tracks how many times tracks have been completely played [2], but it doesn't provide any UI for tracks that have been partly played.

This isn't a big deal for music or videos, but it's a real bother for podcasts. I have 72 episodes of "In Our Time" in my "IOT unplayed" shortlist; and I know some of them are partly played. I just don't know which ones. 

It's been a longstanding frustration, but this week, Doug's AppleScript for iTunes gave me the answer:

Project: Gather Partially Played Tracks « Doug's AppleScripts for iTunes

... Smart Playlists don’t include any criteria for detecting how far along a track has been played, and Last Skipped may not necessarily have been set if a track was simply stopped rather than skipped.

... a track’s bookmark property will contain the number of seconds the track had been played before it was stopped. Thus, if any tracks have a bookmark value greater than zero then they’ve been partially played...

I'm lousy at AppleScript, but it wasn't hard to modify the example Doug provided. I have a smart Playlist called "IOT Unplayed" and I modified the AppleScript to find tracks in that Playlist that had a bookmark value greater than zero [3]:

property nameOfPlaylist : "Partially Played"

tell application "iTunes"
set opt to button returned of (display dialog ¬
"Find partially played tracks in:" buttons ¬
{"Cancel", "Podcasts", "IOT Unplayed"} default button 3)

if opt is "Podcast" then
set targetLibrary to (some playlist whose special kind is Podcasts)
else
if opt is "IOT Unplayed" then
set targetLibrary to some playlist whose name is "IOT Unplayed"
else
set targetLibrary to library playlist 1
end if
end if

try
set thePlaylist to some playlist whose name is nameOfPlaylist
on error
set thePlaylist to (make playlist with properties {name:nameOfPlaylist})
end try

try
delete every track of thePlaylist
end try

duplicate (every track of targetLibrary whose bookmark > 0) to thePlaylist
reveal thePlaylist
end tell 

Of course this isn't as elegant as a Smart Playlist -- I need to run this AppleScript manually. Even so, it solves 80% of my pain. Thanks Doug!

[1] I donated $5. It was a royal PITA to do so. It reminded me of how bad our donation system is. Among other things:

  • I distrust PayPal intensely based on past experience. So I had to use the awkward data entry UI.
  • It took me a while to figure out I had to 'update amount' - so that cost me two data entry episodes
  • I had to go back and add an email
  • If I could keep track of how much I'd previously donated to the site, I might make a larger (or smaller) donation.

Sucks.

[2] I have a feeling that years ago iTunes would consider a track "played" if one simply started listening to it. I'm probably wrong about that.

[3] In my hacked AppleScript the 'library playlist 1' statement will never be reached; I just kept it in as a reminder of how to scan all tracks. AppleScript only allows 3 buttons, otherwise I'd have made this an option.

Saturday, May 19, 2012

Navigating AT&T mobile's web site: a cheat sheet

I have a hard time navigating AT&T's mobile site. So I wrote this post to store some of the links I use. I'll update it periodically. Some links may embed one of our phone numbers, so they're not so useful for others.

In general I login first, then copy and paste these links to navigate.

Friday, May 18, 2012

Google results 100% ads?!

I did a search on "open source document management".

My result page was 100% advertising.

I've never seen this before. I'm hoping it's a bug of some kind. I tried opting out of Google personalized ads to see if that helped. Next up I'll just block every advertiser on the page using Ad personalization.

Thursday, May 17, 2012

iOS Restore problems: App Sync failure and missing Google Contacts

Fresh off discovering iOS Restore problems with In-App purchases and video podcasts I was called in to help a friend transition from two 3GS to two 4S iPhones.

He had a different set of problems, some familiar, some weird, some new to me:

  • When restoring Mail, Calendar and Contacts from Google Active Sync, the best option is to delete the Google account and restart. I've run into this several times, and reentering a password on a restored Google Active Sync (Exchange) data set works about half the time.
  • He ran into a real mess with AppleID vs. me.com ID. I think he'd started out with one Apple ID (Store Preferences) on his iPhone, then switched to another. As a result he had apps on his iPhone that no longer matched his iPhone Apple Store ID. They'd run, but they wouldn't sync to the desktop or the Cloud. When we did a restore they were gone. There's no way around this; he either has to switch to his old ID (but it's lost) or repurchase the apps that were owned by the lost ID. Yech.
  • He and his wife share one instance of iTunes, but their apps have different Apple Store IDs. This can be done, but it requires a mixture of Cloud and iTunes sync. Double Yech.
  • To enable email delete on Gmail with Mail.app delete, we had to rediscover the insanely obscure m.google.com/sync setting that makes Gmail behave like a rational piece of software.

Those are the familiar bugs. Yes, Apple Store IDs and App DRM are a mess. Apple isn't a genius every day of the week.

The weird bug was, I think, a Google bug. After we reentered his Google credentials and synchronized, we found several missing entries in his Phone shortcuts. That's because the Contacts were missing. After a few cycles of removing/restoring Contacts Sync I could see the missing entries varied.

Turns out that Google was giving us exactly 100 out of 216 contacts; but the 100 varied. It seems Google was throttling the phone update.

Maybe if we'd waited a while we'd have gotten the rest. Instead I changed Sync from Push to Manual. Tried a few manual updates to no effect, then switched back to Push and we had all 216. A real pain, and I found zero hits on this problem. (Now there is one.)

The iOS user experience could use some work. In particular, the Backup story is pretty feeble.

Monday, May 14, 2012

Start Chrome using a specified "user profile".

I love Chrome's Multiple User feature - aka Identity Management in the G+/Facebook era.

 It's why I switched from Safari to Chrome on OS X. I have a profile for
  • My TrueSelf that only a few shall know.
  • John (Kateva) Gordon
  • My corporate self
I also have profiles I use when I'm assuming my children's identity (ex: Facebook monitoring). All the Profiles sync through Google Cloud including bookmarks, passwords, extensions and so on. So I use the same Profile everywhere.

Even in Darkness, Google does some things well.

I switch my three primary profiles all the time. That's how I know the great weakness of the current implementation. The Profile Google gives me is never the one I want. I frequently have to switch identities, which opens a new window, then hunt that window down ... Meanwhile, the original Window hangs on.

I want some shortcuts that will take me directly to the Profile I want. In both Windows (easily) and Mac (comand line), there are ways to do that as described in SuperUser and Quora:
This is top-secret stuff, these parameters don't show up on the most popular listing of Chrome command line options

The command line parameters are of the form:
  • chrome --profile-directory="Profile 1" -> Kateva
  • chrome --profile-directory="Profile 2" -> Corporate
  • chrome --profile-directory="Default" -> Personal
They match the directory names shown in (Win) C:\Users\[userid]\AppData\Local\Google\Chrome\User Data.

I've created a Windows shortcut for each Profile, now I have to give them unique icons.

Sunday, May 13, 2012

iOS Backup and the Cloud: Problems with Restore

After the 5.1.1 update my son's iPhone developed a crash habit. One photo in particular triggered an immediate restart on editing. Perhaps an iOS bug, maybe another problem. I did a full Restore, which means a backup then wipe then reinstall then restore. That didn't fix the bug, so we deleted the problem image.

That's not what I'm writing about though. During the Restore cycle we ran into some newer limitations with iOS backup. These included:

  • His Pocket God Comics, which are in-app purchases, were not backed up - contrary to Apple's iOS backup document. We were able to re-download them from within the Pocket God app; but that process appeared to rely on Pocket God and its Cloud servers.
  • His video podcasts vanished. We sync through iTunes though, not the Cloud, and they were still in iTunes and could be restored. Some of them aren't available from the Cloud any more.

I don't think there are any workarounds for these problems. Apple could fix this; in the Jobs era it's the kind of thing that tended to get his peripatetic attention. I doubt they will, but I'd be happy to be wrong.

My only recommendation is to distrust the Cloud, and avoid in-app purchases whenever possible. If you are using something that's Cloud dependent you don't own it -- and you don't even rent it. At best you have a fuzzy claim to occasional use that might be revoked at any time.