Archive for March 24, 2016

Thursday, March 24, 2016 [Tweets] [Favorites]

Inside Liam

Samantha Murphy Kelly:

Liam is a large-scale robot, with 29 freestanding robotic arms at various skill stations. But while most assembly-line robots help put together products you’ll one day hold in your hands, Liam is hard at work disassembling your ruined, returned iPhones.


At some stations, robots worked in pairs; because some iPhones come back with corrosion, the first robot may try five times to remove a screw, while the second is free to move on to another task on the same device without slowing down the process. Apple claims that Liam yields a 97 percent success rate for removing each component.


Liam completes an iPhone disassembly process every 11 seconds, with dozens running through the system at all times. About 350 units are turned around each hour, equivalent to 1.2 million iPhones each year. Apple wouldn’t say when Liam started its work, but emphasized the project is still in the research and development stages.

XCTestExpectation Gotchas

Jeremy W. Sherman:

XCTestExpectation simplifies testing callback-style code, but some of its design choices make tests using it fragile unless they’re mitigated:

  • It explodes if everything works right but later than you expected.
  • It explodes if everything works right more than once.

This article presents two concrete mitigations:

  • Use weak references to ensure the expectation dies before it can cause you trouble.
  • Use a different promise API to do your waiting.

Mac OS X 10.11.4 and iOS 9.3

After updating my main Mac to 10.11.4, it wouldn’t boot. It got stuck with a full progress bar after logging in. I had a similar problem with an earlier release of El Capitan but, unlike then, this one didn’t resolve itself. I spent hours trying different possible remedies—lots of other people have encountered problems like this and posted what worked for them—but none of them worked for me. After restoring from a recent 10.11.3 clone, I tried the update a second time. This time, I didn’t use the combo updater, as multiple people had traced problems to it. Again, it hung after entering my password, but this time after I force restarted it worked.

This experience reminded me that, though it’s great to do a clone backup before updating your Mac, it’s not such a good idea to boot from that backup when you need to restore. I made that mistake, and it took probably half an hour before my clone was booted and usable. I’m not exactly sure what took so long, but Activity Monitor showed a huge amount of Spotlight activity. The backup had probably never been indexed, and it was wasted time because I don’t need it to be indexed. The other problem with booting from a clone is that some apps, like Dropbox and Little Snitch, don’t like to be run from a different disk. (Apparently they track the inode numbers of their files.) So they interrupt you with various windows. Then, after the restore, they see that you changed drives again. Lastly, there’s really no need to run my full array of apps that back up, sync, and otherwise talk to the cloud while I’m restoring from the backup. It’s simpler, faster, and less error-prone to use a minimal boot drive that just has your backup software on it, even though that means connecting two drives rather than one.

I’m happy to report that the Safari bug is fixed. That was an infuriating one that had been hitting me tens of times per day since the fall. (It, or a related bug that also seems to be fixed, also affected loading pages from other sites.)

I love the new feature where iBooks can store your own documents in iCloud and sync them between devices. I have been using this to read the new Advanced Swift ePub, and it even syncs the reading location and annotations.

I’m still seeing the bug where Command-Delete doesn’t work in the Finder.

My iPad mini also had problems logging in after updating to iOS 9.3, freezing with one of the keys depressed while I was typing my passcode. After rebooting, it seemed to work normally.

I have been enjoying Night Shift, although I don’t like its color choices as much as f.lux’s (perhaps just because I’m used to the latter).

The camera-pauses-audio bug is still not fixed.

iOS 9.3 includes some significant improvements to NSUserDefaults, which are not yet in Mac OS X.

Update (2016-03-25): Juli Clover:

Apple has temporarily stopped offering the iOS 9.3 update for older devices like the iPad Air and earlier and the iPhone 5s and earlier due to installation issues some users have experienced. On older devices, iOS 9.3 requires users to input the Apple ID and password originally used to set up the device, which can lead to the device becoming stuck at the Activation Lock screen if the original account information can’t be recalled.

“Older devices” notwithstanding, I ran into this with both my iPad mini and my iPhone 6s, though neither got stuck.

Update (2016-03-30): Glenn Fleishman:

In fact, this feature likely will have little or no effect on most people. Apple hasn’t misrepresented any of the science, but clinical work done to date doesn’t point a finger right at mobile devices or even larger displays. Night Shift also can’t remove enough blue to make a difference if that color is the culprit. And blue light may not be the trigger it’s been identified as. While researchers haven’t tested the new feature yet, several factors add up to at best a placebo effect and a reminder to power yourself down.

John Gruber:

I think the stuff about getting a better night’s sleep is bunk, though.

To me, it’s not about sleeping better but rather getting to sleep more easily (and, secondarily, reducing eye strain). Placebo or not, the color shifting really seems to help for me. Unfortunately, Night Shift doesn’t shift the colors as much as Flux, which may make it less effective.

Update (2016-04-02): Michael E. Cohen:

I regularly make EPUBs, and the ability to check layout, for example, on my various devices (a Mac, an iPad Air, an iPhone 6+, and an ancient iPad 2) without having to sync these devices via iTunes sounds wonderful. And it would be… if everything worked as Apple says it should. Reality, however, begs to differ. With its latest iterations of iBooks, Apple has cooked up a gallimaufry of inconsistencies and unreliabilities.