Sunday, September 03, 2017

Photos.app is as stupid about JPEG Export as iPhoto and Aperture.

Try this experiment.

1. Import a camera produced JPEG into Photos.app. Check the size. Let’s say it’s 6.8MB.

2. Don’t edit the image. Export it as maximum quality JPEG. Check the size. It will be something like 17.2MB.

Even though the image was native JPEG, and it wasn’t edited, Photos.app decompressed and then recompressed it. Adding 11MB of non-value.

Unchanged from iPhoto and, for that matter, Aperture.

There should be a better way. (No, unmodified original is not a better way — because if editing were done, or the original were not JPEG, then you would want the transformation.)

Annals of iOS inconsistency: Contacts vs Notes vs Reminders - backup and sharing

https://www.icloud.com/#settings currently shows an “Advanced” subsection for restoring Contacts. It provides options to restore an iCloud data set “archive” from iCloud (not to be confused with restoring an entire iOS device backup):

Screen Shot 2017 09 03 at 11 38 36 AM

Notes aren’t on the list though. They have their own note-specific backup restore option, but it’s at the level of an individual note and there’s no version restore, only the ability to undo a delete for 30 days by restoring a Note from “recently deleted”. (BTW, if you Share a Note only the Owner can “delete” — but anyone with Edit privileges can remove all content — and since there’s no version undo that means anyone who can edit a Note can delete it without a recovery option.)

Screen Shot 2017 09 03 at 11 43 45 AM

Sharing is another area of odd inconsistency. Notes must be shared one at time, but multiple Reminders can belong to a set of People.

I’d like to see Notes add Google-style Note-specific version save/restore and share by container (folder) as well as Note, but there’s no rumor of that in iOS 11. I’d pay for a third party solution for iCloud, similar to what CloudPull does for Google App docs, but I fear the demand is too small (for example). An Apple iCloud Drive folder view of Notes [1] would be a big help; I’d then be able to restore an individual Note from a Time Machine or Carbon Copy Cloner backup …

Anyone have an AppleScript to create a local daily snapshot of Notes? (There is this, but in Sierra Apple omitted AppleScript dictionary support for PDF creation).

The world moves in unexpected ways. We seem to be converging on a form of backup that’s a regression for people like me, but a big improvement for most. There’s probably some kind of futurist principle there — the good-enough mass solution will drive out the elite ideal …

- fn -

[1] The main reason I’m still on Simplenote is that nvAlt on my Mac maintains a synchronized file store that works just like this. Perfect data freedom — but almost nobody appreciates this …

[2] As of Sierra at least some parts of Notes are in /Users/[username]/Library/Group Containers/group.com.apple.notes. This location has changed a few times. Note content is distributed between media files (PDF, etc) and text in a sqlite database, so recreating an individual Note document as, say, an RTF file, is a non-trivial task. For example (sqlite browser):

Screen Shot 2017 09 03 at 12 20 57 PM

I suppose Time Machine backups of this folder might be a kind of ‘restore all notes’ option, but restoring a version of an individual Note would be tricky…. (There’s something deep here about the ways in which we assemble bits to create something our brains perceive and our tools manipulate, but it’s beyond my ken. Once upon a time a BYTE article would have traced the roots of the Notes sqlite store back to database file systems of the 1980s…)

Wednesday, August 30, 2017

Facebook won't let you use the email '+' extension as a new email address

Gmail, and some other systems, support a very old email standard that needs a name. Gmail will treat myname+123@gmail.com as though it were myname@gmail.com. It’s handy for filtering email lists.

I wondered if it could use it with Facebook accounts.  As I discuss in my book there are many reasons to have Facebook related email for a vulnerable user go to their parent or “Guide”. Facebook doesn’t allow an email address to be associated with more than one account — maybe the + feature would work …

Except it doesn’t. I tried adding a + variant of my personal email to one of the kids accounts and Facebook told me it was in use.

Bummer. Now you know not to try.

Incidentally, iCloud support up to 3 aliases, so you can do this with an iCloud email alias. Alas, regular Gmail does not support true aliases — only the + suffix trick. Google Apps does support aliases, at least if you own a domain, but that’s strictly a geek or business thing.

Monday, August 28, 2017

Getting around Koodo's (Canada) password reset bug - use incognito browser

Americans think Comcast customer service is bad.

It is true that Comcast is not great — though it is better than it was. Compared to Canada’s mobile carriers though, Comcast is bloody Apple.

My sister uses Koodo, a Telus subsidiary. She was unable to pay her bill for a couple of months, attempts to pay by credit card were met with a nonsensical error message. Customer support couldn’t help. Somehow I figured out their security system was balking on an address mismatch between her bank and her Koodo account — and producing a red herring error message. Of course changing her address on the web site didn’t suffice…

Eventually Koodo changed her address. Since her only computer is an iPhone, and since Koodo doesn’t have a mobile solution (but, you say, “they are a mobile service …”) I did the transaction online.

Or rather, I attempted the transaction online. Koodo wouldn’t recognize her password. They’re happy to do resets though, but the reset passwords wouldn’t work. Koodo wouldn’t let me reuse them though — it was storing the password hash correctly (or, knowing them, the password in plaintext).

I kept getting this message:

Something went wrong!

Sorry, the username and password you entered does not match our records. Please try again.
Warning: Five (5) unsuccessful attempts will cause your online access to be locked for one hour. If you can't remember your password, reset your password now before your account is locked.

The fix?

Well, I knew the username and passwords were correct, so I figured the real error was again unrelated to the error message. My bet was on some cookie state.

So I tried with a Chrome incognito window. That worked.

There’s no way Koodo tech support would have figured that out. What a hopeless company.

Take heart America. We may have the worst leader since Andrew Johnson, the greatest threat to civilization since Mao, but Canada has Koodo.

Ok, forget that. We’d rather have Koodo.

Sunday, August 06, 2017

After macOS 10.12.6 a lot of apps are doing the "quit unexpectedly"

Scrivener is the 3rd app today to “quit unexpectedly”. It’s been like this since 10.12.6 went in.

Restarts aren’t helping …

Sunday, June 25, 2017

How I plan to test my Aperture Library against Sierra

It’s almost time for me to move to macOS Sierra, now that the usual post-release beta testing is drawing to a close.

This is what I am doing to test my Aperture Library on Sierra:

  1. Export a small Project as a Library.
  2. Open the small Project and delete its contents. Now it’s an empty shell with my settings in it.
  3. Import my existing Library into it. So everything is written with the latest version of Aperture.
  4. Test with #3.

Apple Discussions have lots of fix and workaround suggestions for early Sierra, but I’m told they are no longer necessary. The things broken in El Capitan and broken in Sierra, but nothing new.

How to delete your iCloud account and Apple ID

First, invent a time machine.

Second, go back in time and force Apple to add account removal.

For now - you can’t.

You can remove your Google account. You can remove your Facebook account. You can’t remove your iCloud account and your Apple ID. They are eternal.

I’ve run into this little oddness before, but I was reminded of it when cleaning up my deceased father’s online presence.

A 2013 Apple forum post says: “Access can be stopped by Apple if they are provided with your Death Certificate.” I bet you have to fly the certificate to Cupertino. Even then it’s not clear if any data is deleted. I wonder if anyone has ever done this.

Apple gets away with a lot.

PS. I did set his email to forward to me.

Tuesday, June 13, 2017

OS X (macOS) installer sizes - Mountain Lion through Sierra

Sierra is almost ready for release now, so I’m preparing to install.

Interesting to compare installer sizes from the download era:

ReleaseSize (GB
Mountain Lion 4.46
Mavericks 5.33
Yosemite 5.68
El Capitan 6.21
Sierra 4.97

Sierra isn’t much bigger than Mountain Lion.

Curious.

Sunday, June 11, 2017

Apple drives me into Google's arms - using Google Photos with iPhone and Aperture

Apple has broken me. I’ve left iCloud Photo Stream shares for Google Photos.

First I lost the ability to share from Aperture to Facebook. I think that was probably a Facebook change, but of course Aperture isn’t getting updates any more.

That was annoying.

Losing Apple Photo Stream was much worse. Photo stream wasn’t great, but it was simple for my daughter, sister, and other users to subscribe to. For a time I could use iCloud Photo Library on Photos.app alongside iCloud Photo Streams on Aperture [1].

Then Aperture retched and I lost my shared photo streams (but not, happily, the originals). I played around with restoring iLifeAssetManagement from backup but, despite early promise, I couldn’t defeat Apple’s black box sync infrastructure [2].

That’s it. I’m toast. I surrender. Google’s inexplicable aversion to album creation on upload is the lesser evil now.

I’ve installed Google Photos on my iPhone and enabled backup and sync. I’ll use that to cull and play with photos before I transfer them to Aperture.

I’ve freed up 14GB from my Air’s SSD by deleting iLifeAssetManagement and I’ve installed Google Photos Uploader.app. I pointed that to a folder on an external drive, when I want to share from Aperture I export there for upload. I do my post-upload organization and sharing through the web UI.

Since Google nicely migrated images when it closed Picasa Web Albums my new shares are reunited with my old Picasa web albums. I’ve come home again. Though I’m still puzzled by Google’s weird album aversion.

It’s far from ideal, but Apple has burned me yet again. They seem to despise my data.

[1] Though I gave up on iCloud Photo Library when I realized it was more or less incompatible with importing images from iPhone photo roll to Aperture.

[2] Apple is famous for sync that disallows any kind of troubleshooting.

iLifeAssetManagement

Partial restoration of lost Apple iCloud photo stream shared albums (updated: didn't work)

Something went wrong. It always does.

I had thousands of images distributed across over 60 shared photo streams. One day I rebuilt Aperture’s database and all the iCloud images were in one recovery folder. I deleted them and then most of my iCloud shared albums vanished.

This is a quick summary of how I recovered most of them from backups. I don’t know how this truly works, but it seems that this folder in my user account was a source of truth for iCloud photo streams:

/Users/[my user name]/Library/Application Support/iLifeAssetManagement

I copied what was there to an external drive then deleted it, logged out (necessary to close open databases) then logged in. With Wifi on when I launched Aperture it showed no images at first then downloaded what was in iCloud. So there was some kind of sync.

Next I did the same thing (closed Aperture, deleted, etc) but this time copied a backup of iLifeAssetManagement from prior to the bad event. I then turned off wifi.

On relaunch Aperture showed about 6100 images in “Shared:iCloud”. It rebuilt thumbnails for them. Then I turned on Wifi. Next I saw the count rise briefly as albums I’d shared previously came down from iCloud. Alas, the count started falling again, stabilizing at 5600.

I had most of my streams back — though one stream was much smaller than it used to be. Still, about 80% recovery and I didn’t lose a few I’d done post-disaster.

Better than nothing.

Sync without controls is truly hell (and Apple never provides enough control).

Update: Aperture shows 56 single owner photo streams (one is empty) and 5 shared. iOS Photos.app shows 20. At least one of the iCloud albums not seen in iOS photos.app cannot be found at its public link. The iCloud library and the Aperture iCloud library are not in sync. So I’d call this a failure.

Sunday, June 04, 2017

MarsEdit tables: create in TextEdit and paste

MarsEdit is a great app — but I wish it were a rental product. Then I’d pay every year and Daniel Jalkut would be incented to add support for image resizing and table editing.

In the meantime I’ve discovered I can get good results by creating a table in TextEdit then pasting it into MarsEdit rich text editor.

Tuesday, May 30, 2017

iTunes purchased movies showing only a handful of my purchased movies

iTunes on my Mac shows 138 movies of which 135 have purchase dates. Those 135 were purchases from Apple starting in March 2009.

If I visit those 135 in iTunes some allow me to download, some invite me to purchase again. One old SD movie allowed me to download and that worked on my iPad and showed in the Purchased list after download.

My iPhone seems to show about the same number (though it doesn’t count for me).

My new iPad shows only 24 movies as purchased. Both devices have the same iTunes account. When I view my devices in iTunes (we’re at the 10 device limit) both my iPad and iPhone show up under the same Apple Store Apple ID.

One possibility is that the purchased list on my iPad is only showing HD movies. I can’t tell from iTunes which are HD and which are SD; we almost always buy SD when it is available. Some 3+ GB files are probably HD and they don’t show up.

Something is broken in Apple DRM land. I have a private message into Apple Twitter support and an Apple Discussion post

Update: The “something that is broken” thing is the user interface. Apple Twitter support pointed me in the right direction.

When I view Movies in TV.app on my iPad there’s a subtle top left drop down called “Library” that on tap shows a hidden filter that defaults to Recently Added.

When I change that to Movies I see them all.

I was fooled by the "See All" link to the right of "Purchased Movies" that displays when the hidden Recently Added filter is active. The “Purchased Movies” heading should really be “Recently Purchased Movies” when viewed in this mode. It shows 4 recently purchased movies, and “See All” shows all recently purchased movies.

Friday, May 26, 2017

How to upload images to a specific album in Google Photos

How to upload images to a specific album in Google Photos:

  1. Create the album. You have to choose an existing photo to create it.
  2. Drag and drop the photos you want to upload onto the album you’ve created.

Despite years of customer requests you still can’t select a folder and upload it into an album.

I’ve read that if you work with full res (not reduced) images in Google Drive you can organize them in folders and turn those folders into albums in Google Photos. These count against storage costs. I have not tested this.

Saturday, May 20, 2017

Aperture crash - sad day for my iCloud Photo Share streams (shared albums)

Aperture locked up when duplicating an image. I had to force quit, when I restarted I rebuilt the database. 5,300 images showed up as recovered.

Turns out they were all thumbnails for iCloud shares, but they’d lost connection to iCloud. When I deleted them I found most of my iCloud share streams were empty.

I believe I have my images, but it is sad to lose the relationship to the shares. Aperture is no longer supported by Apple of course. I’m running El Capitan, for what that’s worth.

Backups are no help of course. Even if I could recover the relationship to photos shared in iCloud I’d lose other work.

Update

/Users/jfaughnan/Library/Application Support/iLifeAssetManagement/assets/pub has 7.5GB of files holding 2,634 items including some photo stream temp files. It’s not clear if this can be deleted, but it may be Aperture doesn’t use it…

Sunday, May 14, 2017

There may be a fatal flaw in my backups. (actually, no)

I’m leaving this one up as a reminder of how scary the world of secure backups is, and how important it is to actually do a dry run of a disaster recovery scenario.

This is the original post. It’s wrong:

Don’t every tell me backup is a solved problem.

I have offsite backups of my data. Two offsite and two onsite Carbon Copy clones that I rotate. In addition to my onsite Time Machine backups.

All encrypted of course, because otherwise that would be terrible.

Great. All set. If the house burns down we’ll have our data (assuming we still need it).

Except those drives are whole drive encrypted with FileValue 2. So each has a unique recovery key. A recovery key that is different form each backup drive and can only be known at the time of encryption. A recovery key that is stored in a keychain on my MacBook. A device that can be lost.

I’d be better off if that recovery key were in iCloud, but I don’t think it is. Or I could follow Apple’s complex directions for managed recovery keys. Or I could have created encrypted sparse image folders for CCC, I’d know the image password then. Or maybe created bootable encrypted disk backups.

I have a bad feeling I don’t really have backups at all.

There’s a fine line between security that makes data inaccessible to bad actors and security that makes it inaccessible to everyone.

I hope I am wrong about this.

It’s wrong because FileValue 2 whole drive encryption actually behaves like the disk image encryption I’m familiar with. I was confused by the Recovery Key complexity. Doing a dry run of disaster recovery shows what happens.

I mounted one of my encrypted backups using my Voyager cradle and a USB 3 to UBS 2 cable with an old Air. I was asked for the password I’d used to encrypt the drive, not for the recovery key. I was able to mount my backups just as I would on any foreign Mac.

That password is the same for all my backup images and it’s stored in 1Password as well as printed. I’m going to add it to the Dead Man / post-mortem document I keep in Google Drive that’s shared with several trusted people.

False alarm. Need more coffee.

See also