Monday, November 28, 2011

ifttt, Google Reader Share, and Wordpress

ifttt has a WordPress channel, including a post action.

Google Reader's share RSS feed is still active, and can be exposed with the Keakon extension.

So using iftt could I blog to Wordpress by clicking the Keakon-Share link in Google Reader?

Be a fun experiment anyway.

Google Chrome sync does not work with 2-step verification

As best I can tell Google's two-factor ("2-step") verification is incompatible with Chrome sync. There are two ways it fails:

1. During initial authentication you are required to enter a full access password, the Authenticator token won't work. (Laughably, Google calls these 'application-specific' passwords. That's a lie. I wish they'd stop repeating it.) This defeats the value of the Authenticator's keystroke-logger protection.

2. You can't use your Google account authentication to encrypt your sync store. Maybe it uses the 'application specific password'. When I try this, Sync hangs - but tells me it has succeeded. Using a separate sync password works.

There are lots of similar bugs with use of two-factor. It's really not finished; I wonder if it's one of the projects that Page has terminated. I still use it, but I don't recommend it to anyone else. The illusion of security may be worse than no security.

Saturday, November 26, 2011

Microblogging and Google Reader: Tumblr Fails

I got pretty far along on the Tumblralternative to Reader Shares. I even created a kateva.org subdomain with a Tumblr IP A Record to give my Tumblr blog a kateva.org URL.

I tested with Google Reader Mobile and desktop, but the workflow for micro-sharing was too awkward. That looked promising, but all the posts were going to my original Tumblr blog, not the full powered one I'd setup for sharing.

What was up with that?

That's when I discovered the weird world of Tumblr primary blogs ...

Help Center | Tumblr

... What is my “primary” blog? Your primary blog is the one created when you sign up for Tumblr. It represents you (with its name, link, and avatar) when you follow or like other Tumblr blogs. You can read about blog management to understand the differences between your primary blog and additional blogs. Can I switch my primary blog? It’s not currently possible to switch or move your primary blog to another account. You can read about blog management to understand the differences between your primary blog and additional blogs....

Cue the ominous music. I could see where this was going ...

Blog Management | Tumblr

Each Tumblr account comes with a primary blog. A primary blog can fully use all of Tumblr’s social features including Follow, Like, Reply, Ask, and Submit. But, a primary blog cannot be password-protected and cannot be multi-user.You can also create additional blogs on your Tumblr account. An additional blog can be password protected for privacy and security and can be multi-user. But, an additional blog cannot fully use all of the Tumblr’s social features...

The primary blog that is made when you create your Tumblr account will always be the primary blog for the account. It is not possible to reassign which blog on your account is the primary blog. And, due the way in which Tumblr is architected, it is unlikely that we will be able to support reassignment of the primary blog in the foreseeable future. It is also unlikely that we will be able to support password protection on primary blogs....

Yes, it's all about that d*mn closed-world money-making social stuff.

The primary blog is the one that receives my shared items from Feedly. It won't do for what I want.

So now, like Posterous, Tumblr has failed.

Only Twitter and, perhaps, WordPress microblogging, remain.

Oh, and, of course, HiveMined.

No. Please. Not ... not ... Blogger!

See also:

Friday, November 25, 2011

Aperture 3.2.1 recurrent crash - EXC_BAD_ACCESS (SIGBUS)

This ends well - because I have backups. Other than the necessity of backups, the main lessons of this post are;

  1. Aperture 3.2.1 Libraries can become corrupted.
  2. Aperture 3.2.1 has some wicked bugs.
  3. A few debugging tips.
  4. It is unwise to edit in Aperture until all import processing is completed.
  5. How to manage when disaster strikes

This morning I did a routine import of 30 or so CR2 images from my Canon T2i using Aperture Import. Import completed normally. As images were post-processed I worked on some red-eye editing. I mis-clicked somewhere, and the spinning pizza of death appeared. About a minute later Aperture crashed, leaving this crash log ...

Process:         Aperture [75650]
Path:            /Applications/Aperture.app/Contents/MacOS/Aperture
Identifier:      com.apple.ApertureVersion:         3.2.1 (3.2.1)
Build Info:      Aperture-201094000000000~2
Code Type:       X86-64 (Native)
Parent Process:  launchd [41554]
Date/Time:       2011-11-25 09:15:19.689 -0600
OS Version:      Mac OS X 10.6.8 (10K549)
Report Version:  6
Exception Type:  EXC_BAD_ACCESS (SIGBUS)
Exception Codes: 0x000000000000000a, 0x0000000138d4d000
Crashed Thread:  23

I tried five more times. Each time Aperture opened normally, and about 30 seconds later, presumably as it resumed image processing, it crashed with the same error.

I knew I had backups, so I didn't have to panic. In fact, I have three backups:

  • Encrypted image with Carbon Copy Cloner to local drive nightly. This is a drive clone of course, but CCC also saves changed and deleted files in a 'just-in-case' folder. So it's a Clone+.
  • Encrypted image with Carbon Copy Cloner in my office that's 3 weeks old (offsite).
  • Time Capsule backup to a 2TB drive upstairs.

It was easy to demonstrate that the problem was in the Library. I option-launched Aperture and created a new Library. It was fine. I also removed my Aperture Preference files and Aperture still crashed on Library launch.

As an experiment I used EasyFind to locate the images I'd imported. I'd renamed them on import ("_Thanksgiving_") so it was "easy to find" them using EasyFind's package search option. I moved them out of the Aperture Library. This time it launched normally.

Whatever was wrong with Aperture, it was something related to processing the images I'd imported that morning -- or a problem with the images themselves.

I then used ImageCapture [1] to bring in the suspect images from my SD card. There were no problems. I added these to an empty Aperture Library. No problems.

By then my 45GB restore had completed so I put the images into the restored Aperture Library. No problems. Just to finish the cycle off, I again performed the red eye correction associated with the big crash. No problems.

One experiment I didn't do was use Aperture First Aid to repair or rebuild the Aperture database. Speaking of that kb article, I suspect this paragraph is relevant to my problem ...

...If Aperture does not open, it may help to defer creation of previews. Press the Shift key immediately after you start Aperture to prevent preview generation for that session. If a damaged image in your library is preventing normal opening, this may allow you to start Aperture...

i don't think the original images in my Library were damaged, but I do think something went wrong with Aperture's preview creation. Actually, I have a hunch that the problem is related to Aperture's face processing -- the EasyFInd recovery process I experimented with returned a number of face "thumbnails' -- but only a number. As though face thumbnail processing was not completed.

I hope the fixes I've outlined here will help others. The bottom line - be sure you have a full backup of your Aperture Library. I prefer two fully automated backup methods that have almost nothing in common. Backups are too unreliable to trust a single backup method.

[1] This app has its own really annoying bug. When used it stores the path it last saved images to. If you change drives it keeps asking for the old drive -- and tries to mount it. Dumb. Easy to delete preferences to fix.

Update: Terence Devlin - an Apple guru, also suspects the Faces process.

Update 12/20/2011: I suspect it was due to bit rot (bad sectors) on my drive.

Thursday, November 24, 2011

WordPress.com - Blogger Import

I'm continuing to examine exit strategies from Google 2.0 as I prepare to delete my TrueName G+ Profile [1].

Other than Gmail and Google Apps, my strongest Google Connection post Reader Social is Blogger. It hosts this post, for example.

I've considered Posterous and Tumblr, but both have fallen short. I think I'm going to have to learn the WordPress world, starting with hosted at WordPress.com and migrating to self-hosted.

I suspect that will take a while, but I'm starting to experiment, starting with an experimental import of tech.kateva. org to WordPress.com. It's not a complete import, draft posts are not included. For example, import dialog shows 3738 Gordon's Tech posts, but that omits 467 draft posts. For Gordon's Notes it shows 5754, so 1277 draft posts are omitted.

Wordpress also supports import of a Blogger Atom export file. I don't know if that will include Drafts, but I may experiment with it.

I can live without the draft posts, especially since I'll still have access to those drafts post-migration. I can plumb those that look interesting and abandon the others.

I don't expect any quick changes. In any case I own the domain kateva.org, so the changeover ought to be relatively invisible to my visitors (though I bet feeds will need to be revised).

If you'd like to inspect the results of the import, here's Gordon's Tech at WordPress.com - http://gordonstech.wordpress.com/. It's pubic but not-indexed with a temporary URL. The import went more smoothly than I'd expected, but it uncovered two surprises, both of which make me keen to move sooner than later ...

  • The "New" Blogger has no UI control to move to the earliest post. The "Old" Blogger UI has this.
  • Old Blogger doesn't show my 2003 Blog posts, it starts with 2004. WordPress imported them.

[1] I'll keep my John Gordon profile -- until Google deletes it as a TrueName violation.

Tuesday, November 22, 2011

Google's Omnibox and implementing Google search alternatives

Since I'm distancing myself from Google 2.0, I was receptive to Phil Bradley's alternative engine advice. I'm testing blekko (spam free) and Duck Duck Go (no tracking). I believe both are wrappers that enhance Google search.

Naturally, this experimentation works best with Chrome's Omnibox. It's very easy to add search engines; Chrome 'detects' an engine during a search site visit and adds them to it's collection. You can make any a default, and define a text shortcut. Type the shortcut in the Omnibox, hit spacebar, and your custom search is ready.

I made Blekko my default, and assigned it the letter 'b'. Google gets 'g', etc.

While I was at it, I defined a search string for one a Google custom search engine that searches my own content (web pages, blog posts): <http://www.google.com/cse?cx=009911250981951822495%3Aphjhjp-tdfa&ie=UTF-8&q=%s>. I already had one for searching my dev team's Rally project.

I can distrust Google and still appreciate Chrome ... right?

Update 11/24/2011: I ran a search on moving from blogger to wordpress on both Blekko and Google. Blekko wasn't just a bit better. It was immensely better.

    Monday, November 21, 2011

    Porting a mobile number to Google Voice

    We had two kids on our AT&T family plan when AT&T hit us with their smartphone tax. The cost of each kid phone went from @$16/month to $32/month (estimated real costs) and that includes a data plan we don't want.

    I think we know why AT&T is making these desperate price hikes, but we're not playing along. After reviewing several options we expect to save about $600 over the next two years with these 3 steps [1]:

    1. Cancel the phone account for our youngest. Turns out he's not interested in either phoning or texting. He'd prefer we put a fraction of his phone bill into games and movies. In retrospect he could have waited another year. So we've canceled his account -- with a twist. We're porting his AT&T number to Google Voice.
    2. Replace our $30/month family texting plan with a combination of Google Voice, WhatsApp and Facebook Messenger (yeah, it's still messy).
    3. Canceled a now useless SmartLimits account.
    4. Use DataMan Pro to help keep my son under his 200MB/month data limits. We disable Safari and YouTube on his phone, so iTunes is the main data drain. So far he's doing well.

    When we canceled #2's phone I decided to salvage the phone number. It's a memorable local number and when I recently added a GV line to my business number there were no local numbers available. I ended up choosing an area code from my former home town - Escanaba Michigan. Since I was going to cancel his phone with a memorable local number, I decided to make it mine.

    I followed Google's minimalist number porting directions. Unfortunately you can only do this with a mobile number [2] - at least for now. Here's how it went:

    1. In Voice Settings:Phones I clicked the Change/Port link.
    2. Checked lots of warning checkboxes.
    3. I tried following the phone confirmation directions on the old Nokia that currently holds my son's SIM card. (We pulled it from his iPhone when we got hit with the rate increase.) It didn't work -- Google couldn't recognize the touch tones!
    4. I put his SIM into his 3GS -- Google recognized those tones.
    5. I filled out my AT&T account information.
    6. I paid $20 into a new Google Wallet account (on my work account)

    In theory the transfer will be done in 2-3 days and my old GV business number will work for about 2 months before dying.

    In theory my son's AT&T number will disappear and that account will close. I'll check in 2-3 days. Of course since this is a family account things will probably be messier. He's not under any contract (no subsidized phone, he "brought his own phone"), but we'll see what happens. I'll update this post.

    john

    [1] Since we're paying for a data plan (200MB/month). [2] It's convoluted, but I assume you can move a landline number to a mobile number, then from there to Google Voice. I'm thinking about that ...
    [2] Presumably we could move it to a family mobile account, then from there to Google Voice. Bit expensive and a hassle.

    See also:

    Update 11/22/2011: The next day my AT&T account showed #2 was gone. I tested the number and it called Google Voice. I called AT&T and was told the account had been cancelled. Since AT&T bills monthly service in advance (who new?) I've already paid for the billing cycle that ends in 6 days. There's no rebate on that $12 fee. Any expenses incurred this month (overage fees, long distance) will show up on next month's bill. So this went smoothly.