Wednesday, November 30, 2011

iMessage use on an AT&T iPhone without a SIM card (iPod Touch mode)

iMessage is a very intriguing product. It's available as part of iOS 5 for iPod Touch, iPad and iPhone 3Gs, 4 or 4S.

On non-phone iOS devices iMessage provides non-SMS (iMessage) texting services to other iMessage users over either WiFi or, if supported, 3G services. That's like WhatsApp.app, but WhatsApp only works on a iPhone with an active voice service!

On iPhones iMessage has two modes.

In standard mode it supports SMS/MMS messaging as well as iMessage texting. iMessaging is the default when it's supported by the receiving device; you can see what will be used before you compose a message.

In an optional mode you can disable SMS/MMS messaging and go purely iMessage. You may want to do this, for example, if you choose not to pay for AT&T's extortionary "unlimited" plans. You will still receive SMS messages (20 cents each, including spam text), but at least you won't send any. (You can tell AT&T to turn off all but 'administrative texting' if you want to avoid spam SMS and spam SMS fees.)

In a world where SMS fees exceed AT&T's mandatory minimal $15/month 200MB/mo data plans, iMessage is subversive [1]. For our family, discontinuing our $30 month texting plan and using a combination of iMessage, Facebook Messenger and Google Voice/Text more than pays for my son's data plan and old 3GS.

Siri is nice (more on that in Gordon's Notes, soon), but iMessage is the biggest thing in iOS 5. I would love to know what AT&T thinks of it, and whether those thoughts are printable in a family blog.

Alas, not everything is quite perfect in iMessage and iOS 5.01. Apple's Discussion groups have many complaints about "waiting for activation". For example:

iMessage waiting for activation: Apple Support Communities

... To update on my iPhone-off contract, even though it says iMessage is waiting for activation, I can still iMessage my friend in Australia (and I am in the USA) So I don't know how it's working, but it's working great!   Also, another one of my USA friends has an iPod touch with iMessage. It is working flawlessly..

We had no trouble at all with 3 iPhones with functional SIMs. In an SIM-free iPhone 4 in use as an iPod Touch, however, we got stuck at "waiting for activation".

The first time I used the device I think it sent messages, despite the notice. The next day, however, it could not send. I tried various tricks to no avail, including:

  • reboot phone
  • remove and restore my son's iCloud credentials and account.
  • play with location and time zone settings
  • create a contact card in iCloud with his migrated iCloud ID (@me.com) and specify that in iMessage

Nothing worked. A day later, however, his phone could again send and receive messages -- despite showing "waiting for activation".

I don't know how long it will keep working. Apple doesn't truly support use of a SIM-less iPhone as an iPod Touch, which further reduces the (suprisingly) low value of a used iPhone. I'm somewhat optimistic, however, that the current flaky behavior is a bug or a reflection of overloaded systems. I'll update this post as I learn more.

[1] If Apple integrates it with iChat on OS X, and provides a Windows 7 client ... hmm.

See also:

Martin's WordPress plugins

I think my microblogging experiments will likely end with WordPress. It's a complex world to learn however. For one thing, there are hundreds of "plugins" available for WordPress, and no obvious way to tell the useful from the disastrous.

So I'm grateful to Martin Steiger for sharing the ones he uses on different sites ...

Essential:

- Chunk Urls for WordPress
- Germanix URL (probably not necessary for you)
- WordPress Database Backup
- WP Super Cache

Essential for sites with comments on:

- Akismet (default WordPress plugin)
- Antispam Bee (in addition to Akismet)
- Subscribe To 'Double-Opt-In' Comments (if you provide comment subscriptions)

Useful / additional features:

- Better Delete Revision
- Better WordPress Recent Comments
- Comment Form Quicktags
- Comment Whitelist
- Contact Form 7
- Country Filter
- Exclude Pages from Navigation
- Get Recent Comments (depreciated)
- Google XML Sitemaps
- Intypo
- Limit Login Attempts
- No Self Pings (maybe no longer necessary)
- Optimize DB
- Posts By Tag
- WP Minify
- WordPress Popular Posts
- Yet Another Related Post Plugin

On the way out:

- AbsoluteRSS (no longer necessary)
- AntiVirus (too many false positives)
- Flattr
- Google Analyticator
- Google News Sitemap
- PubSubHubbub
- Really simple Facebook Twitter share buttons (sharing buttons slow down any site)
- Save Post. Check Links.
- RSS Cloud
- WP SUP

On my latest WordPress-based site, steigerlegal.ch, I use as few plugins as possible. Some are essential and some are needed if you wish certain features. In any case, I carefully read the reviews on WordPress.org and I try to use only plugins in active development. I have trust in some reputable developers such as Sergej Müller. I cannot review each plugin from A to Z but I never get plugins from dubious sources. Up to now, I have never had a security problem with any of my WordPress-based sites (although being careful cannot rule such problems out but it's a start).

Tuesday, November 29, 2011

iPhone cables and like things - Monoprice

I advertised AT&T's $6.50 iPhone cables on a corporate social site, and a colleague responded with an even better deal from Monoprice: only $3.55 each when QTY 50 purchased. They're a big $4 for less than 10. Monoprice sells a $7 wall charger too.

These aren't no-name or counterfeit cables, Monoprice specializes in this sort of product:

Monoprice, (DBA. MonoPrice.com) Inc. is an eCommerce leader specializing in high quality cables, components and accessories for computer and consumer electronics. Established in 2002, we have built our reputation by the word of mouth of our customers. The Monoprice brand's greatest claim to fame is our consistent ability to deliver premium quality products on par with the best known national brands at prices far below the retail average along with unmatched speed and service...

I'd be willing to try them. I'm told Monoprice's thunderbolt cables are less reliable, but those seem hard for everyone to make. I'll be looking at them for future purchases.

iOS 5 updates and lost game data: wait for iOS 5.1

I don't know how widespread this is, but it happened to us despite having a robust backup ...

Lost game data: Apple Support Communities
I just migrated my son from a 3GS to an iPhone 4 running iOS 5.01. I wiped the iPhone 4, reactivated it, then restored from a complete backup of his 3GS. His Harry Potter Lego saved game setttings were not preserved. He was, understandably, disappointed. I haven't evaluated his other games. In general iOS 5 migrations have been difficult, with more than expected work to reinstall apps, delete crashing apps and resume them, and restore accounts.

I suspect the problem is some combination of ...

  • a bug (of course), perhaps related to Apple's confused identity management infrastructure (Cloud ID, AppleID, StoreID)
  • a change in how applications are allowed to store data. If an app is not updated prior to updating, and the app stored data in a fashion that's no longer supported, then data will be lost.

I've moved three users from iOS 3 or iOS 4 to iOS 5, and it's been painful each time. Most credentials have to be recreated. ActiveSync account migration doesn't work at all; accounts have to deleted and recreated. Migrating Google Authenticator was particularly difficult (that's Google's fault though). Worst of all, for my son, is this data loss.

I don't know if Apple will fix this, but I recommend waiting for iOS 5.1 if there's no driving necessity to upgrade to iOS 5.

iOS 5 -- What Apple didn't fix

My personal list of things that are still broken in iOS 5 (to be expanded):
  • Migration problems: 
    • ActiveSync accounts must be removed completely, then restored when updating from iOS 4 to iOS 5 (this may be a new bug)
    • My son's Harry Potter Lego game data was not saved when I migrated him a 3GS to iOS 5
  • Alerts: Now there is a birthday alert, but it's a 1 week alarm. We need 2 week alarms for all events.
  • Colors on Calendars: Still can't control color assignment, still get colliding colors with ActiveSync calendars, color assignment algorithm still doesn't look across multiple calendars

Migrating MobileMe family accounts to iCloud

I've started migrating family accounts to iCloud. This explanation from Apple Discussions is helpful ...

With a Family Pack, the master account holder and the sub-account holders can each migrate to an individual iCloud account by going to http://me.com/move and entering their email address and password (not www.icloud.com). The order they do this in is immaterial; if the master account moves first it can no longer administrate the sub-accounts. If a sub-account moves first the master account cannot create a new sub-account to replace it. Once migrated each account becomes a full iCloud account entirely separate from the others. The master account holder will get the 20GB storage upgrade free until June 30th 2012; the sub account holders will not, and will have only the basic 5GB.

I began with #2, currently using a SIM-less iPhone 4. He's got almost no data to lose.

I want him to continue to use my Apple ID however ...

... iPhone, iPad, and iPod touch must have iOS 5 or later. Note: When you are asked to provide your Apple ID during iOS setup, use your MobileMe email address and password. To use a different Apple ID for iTunes and iCloud, just go to Settings > Store on your iOS device after you've finished the iOS setup assistant...

... Inactive and expired MobileMe accounts do not need to move to iCloud. Simply use your inactive or expired account to sign up for an iCloud account and follow the onscreen instructions. See this article for more information...

and

When you first set up your iOS 5 device, enter the Apple ID you want to use with iCloud. If you skipped the setup assistant, sign in to Settings > iCloud and enter the Apple ID you’d like to use with iCloud.In Settings > Store, sign in with the Apple ID you want to use for store purchases (including iTunes in the Cloud and iTunes Match). You may need to sign out first to change the Apple ID.

Following this path I learned that #2 will still have MobileMe Gallery, iDisk and iWeb Publishing through 6/30/2012 -- even after moving to iCloud. Better than I'd expected. No keychain sync though. I hope that comes back in some form.

I had to enter his iCloud (same as MobileMe) credentials to setup Facetime and iMessage on his SIM-less device. Although the phone doesn't need a SIM for this, it can't be in Airplane mode.

So far, it has gone better than expected.

Update: Thinking this over, I realize I need to update my machines to Lion before I move Emily and I. So this will take a while ...

Monday, November 28, 2011

Turning an iPhone into an iPod touch - keep the original SIM!

The kids had used old iPhones as IPod touches without trouble, but apparently I'd never done a factory reset.

If you do that, the phone can't be used -- until it's activated.

You need a SIM card that was either originally used to activate the phone, or that works with a currently active phone:

Using an iPhone without a wireless service plan

Follow these steps to use your iPhone without a wireless service plan:

Insert the SIM card from your new, activated iPhone or one that was previously used to activate the original iPhone.

Connect the iPhone to iTunes on a computer connected to the Internet.Once iTunes activates the device, you're free to use the iPhone as if it were an iPod touch.

... It may be necessary to repeat this process after updating or restoring the device.

Yikes. If I'd known that then, when I got my 4S, I'd have asked to keep the old SIM card and had them give me a new SIM. Instead we just swapped the old SIM. (Not sure if AT&T will do this, it's an advantage of ordering you iPhone from Apple for home delivery.)

Lesson: When you upgrade your iPhone, keep the SIM card that was previously used to activate the device.

Update: On the brighter side, iOS 5 allows use of FaceTime and iMessage without a SIM card. You can't use them in airplane mode however.

Update 11/30/2011: iMessage behavior is flaky in a SIM-Less iPhone. More on that later. In a separate experiment on another phone I found a SIM card that had previously been used in a different iPhone worked to get pasts the iTunes check even though the number no longer existed and the SIM card was no longer valid.

Update 3/5/2012: iMessage was much better by mid-December and has worked well since.

Google's 2-step verification is (almost) the spawn of Satan - iPhone upgrade edition

Two months ago I decided Google's 2-step verification was an incomplete mess unsuitable for use by non-geeks.

Today I decided it's the spawn of Satan.

This is what happens if you refresh an iPhone running Authenticator - either a new phone or restore from backup

  1. Restore iPhone from backup
  2. Authenticator settings gone
  3. Per directions to account page for 2-step verification settings.
  4. Discover, despite 30 day authorization, my computer wants authenticator token today.
  5. Fortunately, I have my old phone. That works.
  6. Realize that there's no support for authenticating a new phone. Ok, I'll just turn off the iPhone ...
  7. Get the QR code. That works ... but
  8. All the friggin' application specific passwords are gone -- all revoked.

Do you know how friggin' long it takes to enter all those application specific passwords across multiple machines and operating systems?! Can I scream now?!

Friends don't let friends use 2-step verification.

Update: A few minutes later and, for now. I see my (not) application-specific passwords and they still seem to work. So only almost the spawn of Satan. Google needs a workflow to support migrating from one iPhone to another.

See also:

 

Good habit: review sites with access to google services

Through your Google Accounts page you can edit "connected sites" and "application-specific" passwords (they aren't btw).

I did this tonight. I was surprised at how long my list was. How did Facebook ever get access to my Google Contacts? They are diabolical.

I deleted most of  the items on the list. This is one practice I want to make a habit.

AT&T sells iPhone cables for $10 with 3 for 2


I've never come across an AT&T store bargain - until today.

Turns out AT&T sells their own iPhone/iPod/iPad charge/sync cable - for $10. As of today they also have a "buy two get one free promotion", so I bought 3 for $20.

Excluding obviously counterfeit $2-$3 cables (caveat emptor), I've not seen these cables on Amazon for less than $20. Griffin's powerblock/cable combo for $23 or so has been the best deal.

Since Apple's last two years of cables have been absolute garbage (separation at iPod end), my family needs some extra cables. Now we're flush.

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.