Friday, September 22, 2017 [Tweets] [Favorites]

Swift Proposal: Non-Exhaustive Enums

Jordan Rose:

Currently, adding a new case to an enum is a source-breaking change, which is very inconvenient for library authors. This proposal aims to distinguish between enums that are exhaustive (meaning they will never get any new cases) and those that are non-exhaustive, and to ensure that clients handle any future cases when dealing with the latter. This change only affects clients from outside the original module.

[…]

Public enums can be declared as exhaustive or as nonexhaustive. In Swift 4 mode, the default behavior will be exhaustive for source compatibility; in Swift 5 it will be nonexhaustive.

When a client tries to switch over a nonexhaustive enum, they must include a default case unless the enum is declared in the same module as the switch. In Swift 4 mode, omitting this case will result in a warning; in Swift 5, it will be an error.

Enums imported from C will be nonexhaustive by default, with a new C-side annotation to make them exhaustive. These enums conservatively always have the “cross-module” behavior.

iPhone 8 Camera

DxOMark (via Phil Schiller, Hacker News):

The Apple iPhone 8 Plus is the best-performing mobile device camera we have ever tested. Its overall DxOMark Mobile score of 94 sets a new record, beating out the 90 points for both the Google Pixel and the HTC U11, as well as the 92 that its sibling iPhone 8 just scored. Its Photo score of 96 is also a new record, blowing past the Pixel’s 90. For Video, its score of 89 is among our highest, but tied with the HTC U11 and slightly below the Pixel’s 91. Of course, the Pixel is nearly a year old now, so it makes sense that Apple’s new flagship is breaking new ground.

mtw:

In this case, DXOMark magically added a metric (bokeh and zoom) just one week after the iPhone 8 review. Of course this is a good plus for Apple. Before iPhones were behind Google Pixel, behind HTC U11, Samsung S8+. They were not in the top 10. Now magically, they get to be on top. I wouldn’t be surprised if there wasn’t a discussion or collaboration between doxmark and apple to review their metrics to have iPhone 8 and X under the best light possible.

dep_b:

On the other hand the iPhone 7 Plus was never reviewed while the Plus models always tended to be about 3-4 points better than the regular sized iPhones. But this was around the launch of the Google Pixel where they quoted (so I assume they paid) the DXO score to show how much better it was than the iPhone.

guelo:

Comparing their subscores it’s obvious that without the new zoom and bokeh categories the Pixel would have stayed on top.

Regardless, the photos are impressive.

John Paczkowski:

This year’s leap, however, feels particularly meaningful. A number of early reviews of the iPhone 8 obsess over the camera — TechCrunch, for example, chose to review the phone exclusively as a camera. And there’s a decent argument to be made that the enhancements to the camera systems in the 8 Plus and the X are some of the biggest upgrades in the new line. The camera’s effects don’t rely on filters. They’re the result of Apple’s new dual camera system working in concert with machine learning to sense a scene, map it for depth, and then change lighting contours over the subject. It’s all done in real time, and you can even preview the results thanks to the company’s enormously powerful new A11 Bionic chip. The result, when applied to Apple scale, has the power to be transformative for modern photography, with millions of amateur shots suddenly professionalized. In many ways it’s the fullest realization of the democratization of high-quality imagery that the company has been working toward since the iPhone 4.

[…]

It’s worth noting that Apple has been working towards this in ways that are far less flashy than Portrait Lighting. The cameras on the 8 Plus and the X, for example, detect snow as a situation and automatically make adjustments to white balance, exposure, and whatnot so you don’t need to worry about it. “It’s all seamless; the camera just does what it needs to,” says Schiller. “The software knows how to take care of it for you. There are no settings.”

Austin Mann:

Almost no one is talking about it, but this year we got Slow Sync for the flash, and it’s actually pretty cool. Traditional photographers are already familiar with this, but for those of you who aren’t, basically Slow Sync is keeping the shutter open a bit longer to allow more natural light in when shooting with a flash. As a result, the image isn’t only lit by the light provided by the flash, but instead is balanced with the ambient light of the environment which creates a more balanced, natural shot.

See also: Stephen Su’s discussion of the original iPhone’s camera (via Bob Burrough).

Previously: iPhone 8 Reviews.

iTunes Rentals Increase From 24 to 48 Hours

Apple (via Jon Maddox):

You have 30 days to start watching a movie after you rent it. After you start watching the movie, you have 48 hours to finish it. You can watch the movie as often as you like until it expires.

This makes a lot of sense, as we often have trouble watching a movie in one sitting.

3D Touch App Switcher to Return

Craig Federighi (via Quinn Nelson):

We regretfully had to temporarily drop support for this gesture due to a technical constraint. We will be bringing it back in an upcoming iOS 11.x update.

I wonder what that constraint was and why it’s taking so long to fix given that people have been complaining about the gesture’s removal since the early iOS 11 betas.

Thursday, September 21, 2017 [Tweets] [Favorites]

A11 Bionic

Lance Ulanoff (via Joe Rossignol):

Srouji told me that when Apple architects silicon, they start by looking three years out, which means the A11 Bionic was under development when Apple was shipping the iPhone 6 and its A8 chip. Back then we weren’t even talking about AI and machine learning at a mobile level and, yet, Srouji said, “The neural engine embed, it’s a bet we made three years ahead.”

[…]

The high-performance cores and efficiency cores introduced with the A10 Fusion CPU got an iterative update, including the addition of two more cores and the ability to handle asymmetric multi-processing, which means the chip can run 1, 2, 3, 4, 5, or 6 cores at once. Managing the core use on the now 10-nanometer CPU is one of the reasons the A11 Bionic, according to Apple, is 70 percent more energy efficient (even while being 25 percent faster than the A10). How the system decides which cores to use (high performance or high efficiency) and how many is a little non-obvious.

[…]

The secret sauce of a Neural Engine, what makes it different from other parts of the A11 Bionic, is its ability to handle matrix multiplications and floating-point processing.

Apple is not, however, opening this neural brain to everyone.

[…]

There are other things the A11 Bionic controls that Apple doesn’t often talk about, including the storage controller that includes custom error-correcting code (ECC) algorithms.

This last bit relates to APFS not checksumming its data blocks.

John Gruber:

I asked Apple last week what exactly was “bionic” about the A11 chip system. The answer, translated from Apple marketing-speak to plain English, is that The Bionic Man and Woman were cool, and the A11 chip is very cool. I think they’ve started giving these chips names in addition to numbers (last year’s was the A10 Fusion) because the numbers alone belie the true nature of how significant the improvements in these chips are. Going from A10 to A11 is like going from 10 to 11 mathematically, which implies a 10 percent improvement. That’s not the case at all here — the A11 is way more than a 10 percent improvement over the A10. So they’ve given it a name like “Bionic” to emphasize just how powerful it is.

Update (2017-09-22): Mark Spoonauer (via Phil Schiller):

The “Bionic” part in the name of Apple’s A11 Bionic chip isn’t just marketing speak. It’s the most powerful processor ever put in a mobile phone. We’ve put this chip to the test in both synthetic benchmarks and some real-world speed trials, and it obliterates every Android phone we tested.

[…]

The iPhone 8 even edged out the score from the 13-inch Apple MacBook Pro with a 7th-generation Core i5 processor. That notebook notched 9,213. Is Geekbench 4 really comparable from phone to desktop? According to the founder of Geekbench, John Poole, “the short is answer is yes that the scores are comparable across platforms, so if an iPhone 8 scores higher than an i5, then the iPhone 8 is faster than the i5.”

Apple Maps in iOS 11

Jason Snell:

At long last, Apple Maps provides lane guidance, so you can see at a glance which lane you need to be in so that you can make your turn (or not make a turn you don’t want to make). In my testing, this feature was a bit spotty—at one point, a trip up the freeway didn’t show proper lane guidance, but the return trip down the freeway did. Still, when it’s there, it’s great, because it’s awfully nerve-wracking to not know whether you need to get over another lane.

Similarly, Apple Maps now displays the current Speed Limit for the road you’re driving on, a feature I’ve been using in other navigation apps for years. Again, better late than never.

Google Maps for iOS has had good lane guidance for a long time but doesn’t show the speed limit.

Update (2017-09-21): Ed Marczak:

Google Maps does show the speed limit…sometimes. It does in California, but not in NY, so 🤷

Corbin Davenport:

According to a post on the Android Auto support forum, the speed limit indicator is only live in the San Francisco Bay Area and Rio de Janeiro, Brazil.

HHVM Chooses Hack Over PHP 7

Max Wang (via Hacker News):

PHP7 is charting a new course away from PHP5, and we want to do the same, via a renewed focus on Hack. Consequently, HHVM will not aim to target PHP7. The HHVM team believes that we have a clear path toward making Hack a fantastic language for web development, untethered from its PHP origins. We’d do ourselves and our users a disservice by positioning HHVM as an uncommon, less well-documented, less compatible PHP7 runtime.

iPhone X Design and the Notch

Riccardo Mori:

From a hardware perspective, the cameras and sensors in that part of the iPhone couldn’t have realistically been placed anywhere else, so what do you do if you want an edge-to-edge display? You either have the display reach them, surround them; or you maintain a minimum of bezel on the ‘front’ and ‘chin’ of the phone, and leave them out of the display area.

[…]

Well, I can’t believe I’m writing this, but I actually prefer these two design choices over what Apple has done with the iPhone X. Like with the notch on the iPhone X, my eye is immediately attracted by the Essential Phone’s front camera, ‘breaking’ the display’s continuity there in the middle. Yet I think that it’s small enough to get enough out of the way aesthetically, and not be a hindrance to the phone’s user interface. More information can be displayed both to the left and right of the camera. To be fair, Apple had too much technology to cram there to achieve a similar, less visually annoying result. Then why not opt for a Samsung-inspired approach?

John Gruber:

I’m not on board with Apple’s “embrace the notch” user interface, but I do find it commendable that they showed the notch everywhere during the keynote Tuesday.

[…]

Ben Bajarin did get an answer from Apple on this at the event, and I was correct: the default is for video not to zoom to fill every pixel, so you won’t see the notch in video playback unless you double-tap.

Bryan Irace:

Remember when we first saw all of this wasted space and thought “Surely this will make sense on the new phone”? 🙄

Marco Arment:

I was hoping that the long-rumored edge-to-edge iPhone screen would still be a rectangle, possibly even with room for a Home button on a narrower bezel, so I wouldn’t have to change my habits (or my app’s layout).

[…]

Apple would’ve lost what the iPhone has had since its introduction: a unique, recognizable shape that distinguishes itself from all of the other boring rectangles out there.

John Gruber:

My objection (again, after admittedly only spending 10-15 minutes with an iPhone X in hand) remains that Apple could embrace the notch on the lock and home screens, allowing for this new iconic silhouette, without embracing it all the time.

Keith Harrison:

If you are not using safe area layout guides or layout margins there is a good chance your controls will end up too close to the device edges. The rounded edges, top central housing or bottom home indicator can clip, hide or overlay controls that would be fine on other iPhone models.

[…]

There is a new property (insetsContentViewsToSafeArea) on table views in iOS 11 that controls whether the content view of a table view cell is inset for the safe area. This is true by default which causes a subtle change with table views in landscape on an iPhone X.

Paul Haddad:

Feels like so much wasted space, landscape has less “safe” area than the 8.

Marco Arment:

The X’s biggest UI-design problem for me isn’t the notch — it’s the home indicator and the rounded screen corners.

iPhone UIs basically can’t use the four corners anymore. That’s not a small deal.

We’re going to have to add a lot of margins everywhere.

Will be challenging to have the same UI scale between the iPhone SE, 6/7/8, Plus, and X.

SE owners will get the worst UIs forced on them.

Joe Cieplinski:

I do have to wonder as well, why so many people seem obsessed with this edge-to-edge screen concept. It’s important enough for Apple to make a major design tradeoff with the notch, so it’s clearly a big deal to people. But as I’m reworking my apps to behave correctly on the X's screen, what I’m learning quickly is that all four far corners of the screen (the areas that used to be blank “chin” areas) are too inconvenient for thumbs to reach easily. Which means they are lousy for UI interactive elements. Thanks to the notch, and the fact that the phone is no longer 16 x 9, watching video full screen is a poor experience as well. So most of what’s important is going to end up in the “safe” areas—in other words, the exact dimensions of your iPhone 8 screen. Basically, we’re lighting up the edges of the X screen with background color and calling it a revolution.

NIELS:

Don’t place interactive controls at the bottom of the screen. The spacing around the home indicator is purely created for gestures, swipe up to go home. Placing buttons near this indicator or in the bottom round corners of the display might not be great. Users might accidentally use the home gesture and your UI will be difficult to reach. You can however still use tab bars and function bars, but keep in mind that they should not interfere with the home indicator.

Previously: iPhone X, iPhone and iPad Resolutions.

Update (2017-09-22): Max Rudberg:

These are explorations on how certain design patterns can be adapted to the new screen.

iPhone and iPad Resolutions

PixelCut (via John Gruber):

We have added the new iPhone X, iPhone 8 and iPhone 8 Plus to the guide below. To learn more about the unique screen of iPhone X, check out our new iPhone X Screen Demystified article.

David Barnard:

The entire home screen of the original iPhone (320x480 pixels) is about the size of 2 icons on the iPhone X home screen (1125x2436 pixels).

Marko Karppinen:

The 10.5-inch iPad Pro launched 3 months ago but apps like Facebook, Netflix and Kindle still don’t natively support the new screen size.

Wednesday, September 20, 2017 [Tweets] [Favorites]

Swift 4.0 Released

Ted Kremenek:

Swift 4 is now officially released! Swift 4 builds on the strengths of Swift 3, delivering greater robustness and stability, providing source code compatibility with Swift 3, making improvements to the standard library, and adding features like archival and serialization.

[…]

One advantage of these language modes is that you can start using the new Swift 4 compiler and migrate fully to Swift 4 at your own pace, taking advantage of new Swift 4 features, one module at a time.

I ended up updating all of my code at once, and it took less than an hour. This is by far the smoothest major Swift update so far.

Unfortunately, the tooling is still rough. Some of the new standard library methods don’t appear in the documentation (even searching with Dash), and Xcode’s “Jump to Definition” feature is inoperable much of the time, so the only way to actually see some of the new methods is via code completion. At least with Objective-C there is an actual header file I can open or search.

Mike Ash:

We’re not getting a radical rework of the syntax like we did last year, nor are we getting a breathtaking pile of new features like we did for Swift 2, but there are some nice additions you can use to improve your code. Let’s take a look!

Ole Begemann:

An Xcode playground showcasing the new features in Swift 4.0.

Chris Eidhof:

Swift 4 really helps to clean up many examples in Advanced Swift[…]

Previously: Swift.Codable, Swift 4: Key-Value Observation, Swift’s Error Handling Implementation, Swift 4: Bridging Peephole for “as” Casts, Swift 4: Synthesizing Equatable and Hashable Conformance, Swift 4: JSON With Encoder and Encodable, Swift 4 String Manifesto, Provide Custom Collections for Dictionary Keys and Values.

Safari 11

Ricky Mondello:

Safari 11 on macOS blocks videos across the web from auto-playing. It gives you control over what sites are allowed to auto-play.

You can automatically use Safari Reader on some or all websites in Safari 11. Hold-tap or right click on the Reader button to turn this on.

Beyond auto-play and Reader, Safari 11 lets you customize other settings on a per-site basis, like use of content blockers and zoom level.

You can pick and choose which Reading List items are saved for offline reading in Safari 11 by swiping sideways on a Reading List item.

Safari on iOS 11 rationalizes the scrolling behavior between Safari, subframes in Safari, and apps. It feels really great.

iOS 11 revamps Safari View Controller with an appearance that looks more like an in-app browser. It feels more like an extension of an app.

Safari View Controller on iOS 11 also won’t surprise you by opening in Private Browsing while Safari is in Private Browsing. (Yay!)

Safari on iOS 11 will share the canonical link for a page, which can improve the experience of sharing a “mobile” website.

Safari 11 fixes an extensions memory handling issue that will make some websites (e.g. Google Docs) use much less memory.

iOS 11’s Password AutoFill for Apps makes it easier to log into apps using passwords saved in your iCloud Keychain.

If you need to look up a saved password on iOS 11, you can in the new Accounts & Passwords section of Settings. Or just search Settings.

Lots of good stuff here. I didn’t think Apple would ever embrace site-specific preferences, which I enjoyed many years ago in OmniWeb.

Unfortunately, since updating to Safari 11 I’m seeing a bug where opening links from other apps always switches to the Safari window in the leftmost space even if there’s one that’s open in the current space.

Previously: Safari’s Intelligent Tracking Prevention.

Update (2017-09-21): Jim Dalrymple:

Apple introduced a new technology to intelligently block browser cookies in Safari, which brought criticism from a number of advertising organizations. Apple believes in privacy with every product it makes, and the advertising groups want to track everything we do so they can sell ads.

Apple responded to that criticism this afternoon by fully explaining what they are doing for the consumer and standing up for themselves.

Ben Lovejoy:

What ITP means for consumers is that Safari will effectively forget which sites you’ve visited after a day. Net result: you’ll see fewer targeted ads, and more generic ones.

[…]

So personally, I want to allow third-party cookies to persist for the normal 30 days. But High Sierra won’t allow it. So despite strongly supporting the vast majority of Apple’s privacy initiatives, in this particular case, I think Apple has got it wrong.

See also: Hacker News.

Update (2017-09-22): Ricky Mondello:

Don’t know how I forgot this one! iOS 11: if a link opens in a new tab, you can swipe back to close it.

iOS 11: Control Center No Longer Turns Off Bluetooth and Wi-Fi

Joe Rossignol:

When you deep press on the system toggles pane, for example, a larger pane pops open with previously hidden AirDrop and Personal Hotspot controls.

On iOS 11, users can add, remove, and organize controls in Control Center through the Settings app.

Apple (via Joe Rossignol):

In iOS 11 and later, when you toggle the Wi-Fi or Bluetooth buttons in Control Center, your device will immediately disconnect from Wi-Fi and Bluetooth accessories. Both Wi-Fi and Bluetooth will continue to be available, so you can use these important features[…]

[…]

If you want to completely disable Wi-Fi and Bluetooth for all networks and devices, follow these steps:

  • To turn off Wi-Fi, go to Settings > Wi-Fi and turn off Wi-Fi.
  • To turn off Bluetooth, go to Settings > Bluetooth and turn off Bluetooth.

On the other hand, if you don’t turn them fully off they will eventually turn fully back on according to some non-obvious rules.

Nick Heer:

I kind of get why this change was made: a frequent barrier in my use of AirDrop “just working” is that a friend’s Bluetooth connection has been toggled off. I don’t think that most people would be fully aware that both networking services must be switched on for many of Apple’s “continuity” features to keep working.

The new behavior kind of makes sense, but it’s not very intuitive.

Update (2017-09-21): In some circumstances, you can use Airplane Mode as a substitute.

John Gruber:

Off the top of my head, I would suggest making them three-way switches: on and connected, on but disconnected, and off. I don’t have an idea for how to present that visually though. Or make on/off buttons available in the expanded menu you get when you 3D touch on these controls. UPDATE: DF reader Matthew Smith emailed to point out that these buttons already have three states: “In Control Center, when you tap the Wi-Fi or Bluetooth icon, it goes from blue to grey. If you tap the Airplane mode icon, both icons go grey, but also gain another indicator: A diagonal line through their icons. This is a good way to tell the difference between disconnected and off. So with the currently available indicators, these could easily become a 3-way switch.”

3-way switches were my first thought as well, but I presume Apple rejected this idea because most people would then actually turn Wi-Fi and Bluetooth off, thus undermining the point of the change.

See also: Hacker News.

Mike Ash:

I think the functionality makes a lot of sense. But it sure would have been nice to indicate what’s going on in the UI somehow. Maybe not reuse the familiar icons to indicate a new thing?

Update (2017-09-22): Rod Christiansen:

I really like the new behaviour. Most of the time I’m just am trying to get out of a shitty WiFi but I still want it turned on.

Another Control Center oddity: the Remote widget doesn’t work with the Apple TV 3, even though the AirPlay widget (and the full Remote app) do.

iPhone 8 Charging Speed

John Gruber:

I’ll go so far as to call the rinky-dink 5-watt charger the new 16 GB storage tier — a nickel-and-dime move whose time was up a few years ago. Oh, and one more nickel-and-dime move: Apple only includes a USB-A-to-Lightning cable in the box. The Google Pixel I bought last year included two cables, USB-A and USB-C. And Apple is the company selling laptops that only include USB-C ports.

[…]

The bottom line: it’s faster, yes, but not that much faster. I ran the iPhone 8 battery down until it powered off. I plugged it into the 29-watt charger, and got the following results: after 15 minutes it was back to 27 percent, at 30 minutes it was at 54 percent, and at 45 minutes it was at 72 percent. But then I did the same thing with my year-old iPhone 7. After 30 minutes it was at 43 percent, and at 45 minutes it was at 65 percent. (I didn’t pay attention to where it was at after 15 minutes.) The iPhone 8 does charge faster than an iPhone 7, but not by much.

Nilay Patel (via John Gruber):

Apple gave me one of the Mophie charging pads it’ll be selling in stores, and we tried it out on Qi pads from Samsung as well, and it all just worked.

Qi is pretty slow, though — Apple’s goal is to match the charging speed of its own 5W pack-in charger, but I only saw about 15 percent more charge on the 8 Plus every 30 minutes with the Mophie, which is especially pokey when you consider that you can’t pick up and use your phone during that time. A future iOS update will let the iPhone 8 draw more power out of the Mophie and Belkin pads Apple sells in stores, so hopefully things speed up when that happens.

Face ID

Matthew Panzarino:

If there are 5 failed attempts to Face ID, it will default back to passcode. (Federighi has confirmed that this is what happened in the demo onstage when he was asked for a passcode — it tried to read the people setting the phones up on the podium.)

Developers do not have access to raw sensor data from the Face ID array. Instead, they’re given a depth map they can use for applications like the Snap face filters shown onstage. This can also be used in ARKit applications.

[…]

Face ID requires that it be able to see your eyes, nose and mouth. This means there are scenarios where it just won’t work.

“If you’re a surgeon or someone who wears a garment that covers your face, it’s not going to work,” says Federighi. “But if you’re wearing a helmet or scarf, it works quite well.”

David Sparks:

I think my favorite part was the disclosure that if you pick up your iPhone X and swipe from the bottom to the home screen, the iPhone will start the animation while it is simultaneously verifying your face and unlocking the device. There shouldn’t be any delay, which is exactly the behavior I would expect.

Before this, I was concerned that you would have to unlock before swiping into your home screen, which would drive me nuts every time I turn the phone on.

Bruce Schneier:

I am confident that Apple is not collecting a photo database, but not optimistic that it can’t be hacked with fake faces.

Troy Hunt:

There’s literally a saying that’s "one in a million" which symbolises the extremely remote likelihood of something happening! The 20x figure over Touch ID is significant but it doesn’t seem like the right number to be focusing on. The right number would be the one that illustrates not the likelihood of random people gaining access, but rather the likelihood of an adversary tricking the biometrics via artificial means such as the gummi bears and PCBs. But that’s not the sort of thing we’re going to know until people start attempting just that.

See also: The Talk Show.

Previously: iPhone X.

Update (2017-09-20): Jeff Nouwen:

Federighi: “But if you’re wearing a … scarf, it works quite well.” Might be my Great White North bias, but wearing a scarf means this[…]

Tuesday, September 19, 2017 [Tweets] [Favorites]

iPhone 8 Reviews

John Gruber:

I’ve never owned a Plus-sized iPhone, and last year my review unit did not have the jet black finish, so I found the 8 Plus with glass back to be a revelation. I prefer it so much to any previous Plus-sized iPhone I’ve tested that it almost feels like a different form factor, not just a different material. I’ve always found the Plus unwieldy, and part of that is that aluminum is slippery enough that, combined with the size of the device, it just felt like something I had to consciously think about to avoid dropping. However, just like the jet black aluminum finish, the polished glass back of these new phones is grippier. That grippiness is a nice feature for the 4.7-inch size, but for the Plus, I think it’s a necessity — it makes it far more pleasant to hold and use.

[…]

Apple is confident in their improvements to HDR that with the iPhone 8, by default HDR is simply engaged automatically, and iOS no longer stores separate HDR and non-HDR images. HDR just turns on when iOS thinks you need it, and it simply leaves one image in your camera roll. The Settings app has options to enable manual HDR mode and to save HDR and non-HDR versions of images, but until I run into a problem, I’m sticking with the defaults. HDR is no longer something I need to think about.

[…]

Two or three hours into the flight, I needed to check something on my personal iPhone 7 — I don’t remember what it was exactly, but it was something from an app I didn’t have installed on the review unit. When I took my iPhone 7 out of my pocket, my first thought was “What’s wrong with the display, why is everything gross and blue?” Then I remembered: True Tone.

The glass back sounds great. I’m still curious to see how the edges feel.

Matthew Panzarino:

The camera is the best reason to buy a new iPhone this year just as it has been several years running.

[…]

There are other smartphones that take excellent pictures, Samsung’s Galaxy S8+, the most direct competitor in terms of hardware that Apple has, among them. However, once you move beyond the basics of increasing resolution, basic optimization and adding catch-up computational features like faux blur, you begin to realize that there’s not a smartphone company on earth that takes it as far as Apple does. It’s just not comparable once you get into the nitty gritty. Here are a few examples you’ll find in the iPhone 8.

[…]

This is the first year that I’m not saying ‘if you like bigger screens get the bigger one, otherwise get the smaller one’ about iPhones. I flat out recommend the iPhone 8 Plus if you’re in the market for an upgrade and can possibly stand using the larger phone. Why? Portrait Lighting.

Rene Ritchie has links to lots more reviews.

iOS 11 Reviews

Nick Heer:

The differences in iOS 11, then, continue to balance new functionality with further complications. But this should be no surprise to those who have used Apple’s ecosystem of devices for several years; it is merely accelerating a trend of growing the features of iOS without forgetting its roots. iOS was, in many ways, a fresh start for the future of computing and each iteration of the OS has built upon that. Sometimes, as above, it feels as though these additions are moving a little too fast. I notice this most when additions or updates feel perhaps incomplete, or, at least, not wholly considered.

[…]

The new Dock, which allows for more efficient app switching, also seems to have played a role. But regardless of why it took so many years for such a natural interaction to debut on Apple’s touch devices, we should focus on the what of it. Is it good?

Oh, yes. Very.

[…]

In practice, though, this treatment means that the top quarter of the screen is used rather inefficiently in an app’s initial view. You launch Settings, for example, and the screen is dominated by a gigantic bold “Settings” label. You know you’re in Settings — you just launched it.

[…]

Fans of clarity and affordances in user interfaces will be delighted to know that buttons are back. Kind of.

The gigantic titles and generous spacing are especially annoying on the iPhone SE, as they take up a larger proportion of its already small display.

Federico Viticci:

With iOS 11, Apple’s iPad vision feels resolute again. Multitasking is blending with multitouch, giving drag and drop a new purpose; the Mac’s best features – from file management to the dock – have been rethought, simplified, and extended specifically for iOS.

[…]

iOS 11’s most notable redesigns, including the App Store and Control Center, lay new foundations and fix what didn’t work before. Refinements – in some cases, reversals of ideas that didn’t pan out – are one of iOS 11’s overarching themes.

[…]

But perhaps more importantly, unlike iOS 10, iOS 11 presents a cohesive narrative for both the iPad and iPhone. A story where, for the first time in years, the iPad is informing some of the design principles and features of the iPhone’s software.

Lukas Petr:

Perhaps my biggest complaint [about the new App Store] is the drastically reduced information density. You now see fewer apps in the viewport. Plus, at the Today tab, you see just one featured app at a time.

[…]

Contrary to what was said at WWDC, the new App Store actually has smaller amount of curated content at any given time. Why? Because all the carefully crafted lists inside individual categories are now gone.

Pierre Lebeaupin:

Why obsolete perfectly good 32-bit code and apps? I do not have all the answers, but I have a few. Let us first see why 64-bit is the better choice if we have to choose between the two, and why Apple chose not to maintain both.

[…]

iOS devices have traditionally been quite RAM-constrained, and even if that eased a bit in recent years, any RAM savings are worth taking: they allow more tabs to remain active without having to be reloaded, more apps to remain frozen and only have to be (quickly) thawed instead of having to be relaunched, etc., improving the overall experience. And so to keep having the 32-bit library stack loaded in RAM in most iOS devices just next to the 64-bit library stack was starting to look like a waste of precious resources.

Previously: iOS to Drop Support for 32-bit Apps, Apple and Design Details.

Update (2017-09-19): Wade Cosgrove:

Increased font weights across the board in iOS 11 are A+. So much easier on the eyes, even if not dramatically different.

It’s a shame this took so long since iOS 7 made everything thin, but it’s definitely appreciated.

Update (2017-09-21): Dan Masters:

“Big text is legibile, until it’s not. A lot of artist & page titles around Music just can’t be easily read because the font cuts them off.”

See also: Josh Centers.

Apple and Design Details

Ryan Lau:

With my 4.7 inch iPhone 7 and iOS 11 GM at hand, there still exist quite a lot of unfinished feeling of Beta software. As a designer, I can’t help writing about my feelings.

I’m writing this to help people with realizing many details requiring further polishes, who hopefully includes folks at Apple and can push forward with changes to improve those details.

The unfinished feeling in iOS 11 mostly comes from UI and animation. UI elements in iOS are quite inconsistent, mixing a variety of UI elements, which might look quite similar but introduce a disconnected feeling for UX. The inconsistency of those elements majorly stems from those UI element updated in iOS 11, such as Large Title and new Search Bar. In my opinion, those newly introduced elements, which might be unfamiliar and new even to Apple engineers, have caused many inconsistent UI experience in iOS 11.

Michael Love:

This is justifiably damning - also suggests Apple is using a lot of custom UI controls they don’t share with devs.

Or, apparently, other Apple teams.

John Gruber:

On the stairs leading down from the lobby to the theater itself, the handrails are carved out of the stone walls. I’ve never seen anything like it. It’s like descending into a large bright atrium that was entirely carved out of stone. It feels built to last, to say the least.

[…]

The hands-on area looked beautiful, and the retractable wall is a nifty architectural trick. It looks like the wall is supposed to be there when the area is closed, and looks like there couldn’t be a wall there when the area is open. Several Apple employees I spoke with were particularly proud of the hands-on area. “Isn’t the hands-on area beautiful?” was an ice-breaking question I was asked in several conversations. Indisputably, the answer is yes. It’s beautiful. But from a practical standpoint it was the worst hands-on area I’ve seen at an Apple event. It was incredibly crowded, and nearly impossible to get your hands on any of the new iPhones, especially the iPhone X. There were way, way too few units available for the number of guests. An hour after the show had ended, the crowds were still three-deep around the sample tables. As a hands-on area after a major product introduction, this room fails the “design is how it works” test.

Brad Ellis:

Dudes, the white pads and watch stand bases match the curve of the table that matches the curve of the building.

John Gruber:

This is one of the two elevators on level P1 of the Apple Park Visitors Center parking garage.

I’m pretty sure Jony Ive has never visited level P1 of the Apple Park Visitors Center garage.

Cabel Sasser:

But this is how it is with construction — you can’t just use Interface Builder!

See also: The Talk Show.

Update (2017-09-21): See also: Mike Rundle.

No 4K iTunes Videos on iPad Pro or Mac

Sam Byford:

Apple didn’t make any mention at this week’s event of whether these 4K HDR movies would see any benefit on the iPad Pro, however. The short answer is yes, HDR works. But there are a few caveats.

[…]

Unfortunately, there’s no way to download the movies in 4K resolution — you just get 1080p files with HDR color and contrast. The iPad Pro doesn’t have a 4K screen, no, but the panels in both models have resolutions greater than 1080p to the point where you’d notice a significant difference in quality from a 4K file.

There’s also seemingly no way to download these 4K files on a Mac running the latest version of iTunes, even one connected to the Apple-approved LG UltraFine 4K monitor. It’s not clear whether the 4K or 5K iMacs will be able to play 4K movies from iTunes, either.

Previously: Apple TV 4K, Still a Hobby.

Friday, September 15, 2017 [Tweets] [Favorites]

SuperDuper and APFS

Dave Nanian:

The bad news is I’m not confident enough to say we’re going to release our APFS support day-and-date.

I know this kind of hedging is disappointing. But it’s important to note that Apple still hasn’t released any documentation on the “proper” way to create a bootable APFS volume. An example of what they have in mind was released for the very first time when the High Sierra developer release came out a few months ago, but that’s it. We basically have to make an educated guess about what they want.

We’ve designed and implemented that, and it’s significantly different than HFS+’s boot setup, with various special partitions dedicated to specific purposes (even a separate VM volume!), and entire new volume management system, etc.

[…]

For example, what happens if you do an “Erase, then copy” from an HFS+ volume to an APFS volume? In our current version, we match the format of the source when we erase. But, HFS+ can’t be in an APFS container. So, we’d have to convert the container to a regular GUID partition. And since there might be other APFS volumes in that container, you’d end up destroying them.

[…]

In particular, Apple has further tightened its System Integrity Protection process, and is completely denying access to some files on the startup volume, even when copying to a non-startup volume.

[…]

APFS doesn’t seem to be faster than HFS+ (which is not to say it won’t ever be, or that it won’t be more stable...a low bar, I know).

Mike Bombich:

Apple offers a couple helpful APFS-related knowledgebase articles here:

Apple Kbase HT208018: Prepare for APFS in macOS High Sierra
Apple Kbase HT208020: Upgrade macOS on a Mac at your institution

In regard to how CCC will work with your APFS-formatted volumes, this CCC knowledgebase article aims to answer all of the questions you might have on the subject:

Everything you need to know about Carbon Copy Cloner and APFS

Previously: macOS 10.13 High Sierra Shipping Soon, Pondering the Conversion From HFS+ to APFS.

Update (2017-09-20): Alastair Houghton:

Now, in the case of macOS 10.13, there is a bigger problem. Apple is changing filesystem. In order for a low-level disk utility like iDefrag or iPartition to function, we need to know exactly how the filesystem organises data on disk; indeed, inside our products we have pretty comprehensive implementations of HFS+, FAT and NTFS. Apple’s new filesystem APFS, is a completely new design, and you’d have thought that Apple would give us disk utility vendors a fighting chance of getting up to speed before the release of 10.13 by releasing design documentation well in advance, but no, that hasn’t been the case this time around. The only documentation we have about the APFS volume format is this table. Yes, that document includes other information about what APFS can do, but it doesn’t include any detail of the on-disk data format other than a table comparing it to HFS+.

While it’s impossible to be certain, it’s highly likely that adding APFS support to our products, if/when Apple ever releases technical details of its volume format, will involve months of work, and since APFS is going to be the default format for many devices (specifically, anything that uses only Flash storage), as well as being an option for other situations, we simply can’t promise macOS 10.13 support right now.

Kernel Extensions in High Sierra

Felix Schwarz:

Apple has softened its tone regarding #Kext blocking in #HighSierra:

  • No more stop signs
  • “User-Approved” instead of “Secure”. Progress!

Felix Schwarz:

Fun fact: if the Security & Privacy prefs pane is already open while installing a new #kext, no “Allow” text or button is shown.

Felix Schwarz:

Fun fact 2: other than what the TN suggests, #kexts installed together, but in different locations, are approved together. Sometimes. 🙃

Felix Schwarz:

Fun fact 3: This is what happens when you try to “Allow” a #Kext using Screen Sharing: nothing. Remote admins will “love” this.

He’s filed a bug that goes into detail about some of the user experience issues and how it would be better if Apple provided an API for apps to request approval or had a review process for Apple-signed extensions to install without approval:

The “System Extension Blocked” alert gives the average user the impression that an app tried to do something fishy or dangerous and was stopped by the operating system. Or - even worse - that this is a trick alert brought up by the app that tries to trick users into opening System Preferences and removing safeguards there.

[…]

In its current state Secure Kernel Extension Loading in macOS 10.13 does not provide a good experience for either users or developers. In fact, if this feature ships as it is now, shipping a kext becomes a risk for the reputation of legitimate developers due to the optics of this feature's implementation.

Previously: Little Snitch 4 Public Beta.

New App Store Review Guidelines: Gifts, Face ID, Ark

Paul Hudson:

No app may market itself as “including content or services that it does not actually offer” – specifically iOS-based virus and malware scanners, which have always been nonsense.

[…]

Apps may now allow users to send money to others as a gift on two conditions. First, the gift must be a completely optional choice by the giver, and second 100% of the funds must go to the receiver of the gift.

Previously: Apple Wants 30% of Tips From Chinese Chat Apps.

Update (2017-09-19): See also: App Store Review Guidelines History.

The Incredible Growth of Python

David Robinson (Hacker News):

In this post, we’ll explore the extraordinary growth of the Python programming language in the last five years, as seen by Stack Overflow traffic within high-income countries. The term “fastest-growing” can be hard to define precisely, but we make the case that Python has a solid claim to being the fastest-growing major programming language.

[…]

June 2017 was the first month that Python was the most visited tag on Stack Overflow within high-income nations. This included being the most visited tag within the US and the UK, and in the top 2 in almost all other high income nations (next to either Java or JavaScript). This is especially impressive because in 2012, it was less visited than any of the other 5 languages, and has grown by 2.5-fold in that time.

[…]

With a 27% year-over year-growth rate, Python stands alone as a tag that is both large and growing rapidly; the next-largest tag that shows similar growth is R.

[…]

Outside of high-income countries Python is still the fastest growing major programming language; it simply started at a lower level and the growth began two years later (in 2014 rather than 2012). In fact, the year-over-year growth rate of Python in non-high-income countries is slightly higher than it is in high-income countries.

David Robinson (Hacker News):

These analyses suggest two conclusions. First, the fastest-growing use of Python is for data science, machine learning and academic research. This is particularly visible in the growth of the pandas package, which is the fastest-growing Python-related tag on the site. As for which industries are using Python, we found that it is more visited in a few industries, such as electronics, manufacturing, software, government, and especially universities. However, Python’s growth is spread pretty evenly across industries. In combination this tells a story of data science and machine learning becoming more common in many types of companies, and Python becoming a common choice for that purpose.

Equifax Breach

Bruce Schneier:

Last Thursday, Equifax reported a data breach that affects 143 million US customers, about 44% of the population. It’s an extremely serious breach; hackers got access to full names, Social Security numbers, birth dates, addresses, driver’s license numbers -- exactly the sort of information criminals can use to impersonate victims to banks, credit card companies, insurance companies, and other businesses vulnerable to fraud.

Many sites posted guides to protecting yourself now that it’s happened. But if you want to prevent this kind of thing from happening again, your only solution is government regulation (as unlikely as that may be at the moment).

The market can’t fix this. Markets work because buyers choose between sellers, and sellers compete for buyers. In case you didn’t notice, you’re not Equifax’s customer. You’re its product.

Rich Mogull:

Ignoring all that, the real issue is that one of the companies “trusted” with determining our financial future based on deep records of personal information was breached… and due to the current nature of our financial system, we can’t effectively protect ourselves. Our best options offer only limited protection and come at a hefty cost, due in large part to lobbying by the credit rating agencies themselves.

[…]

In each of these cases, I was offered some amount of free credit monitoring, just as Equifax has done in this latest breach. However, the free credit monitoring lasts only for a year, yet the bad guys can use my SSN for the rest of my life.

[…]

The first step is to make things harder for a criminal to create new accounts in your name. There are two tools to do this, fraud alerts and credit freezes, but only one actually works. You can find information, phone numbers, and links on the U.S. Federal Trade Commission’s Identity Theft Web site:

A fraud alert places a flag on your account for 90 days. During that time a business needs to verify your identity before it can create a new account in your name. There used to be companies that could automatically renew your 90-day alerts for you, but the credit agencies sued them out of existence, which was a travesty. So, if you want an indefinite fraud alert, you need to repeat the process yourself every time it expires.

Update (2017-09-19): Jeffrey Goldberg:

There are many important things to ask about this incident, but what I am focusing on today is why has non-secret information become sensitive? None of those numbers were designed to be used as secrets (including social security numbers and credit card numbers), yet we live in a world in which we have to keep these secret. What is going on here?

Matthew Green:

While many people have criticized Equifax for its failure, I’ve noticed a number of tweets from information security professionals making the opposite case. Specifically, these folks point out that patching is hard. The gist of these points is that you can’t expect a major corporation to rapidly deploy something as complex as a major framework patch across their production systems. The stronger version of this point is that the people who expect fast patch turnaround have obviously never patched a production server.

I don’t dispute this point. It’s absolutely valid. My very simple point in this post is that it doesn’t matter. Excusing Equifax for their slow patching is both irrelevant and wrong. Worse: whatever the context, statements like this will almost certainly be used by Equifax to excuse their actions. This actively makes the world a worse place.

Bloomberg (via Hacker News):

Equifax Inc. learned about a major breach of its computer systems in March -- almost five months before the date it has publicly disclosed, according to three people familiar with the situation.

Wednesday, September 13, 2017 [Tweets] [Favorites]

iTunes 12.7 Drops Apps and Ringtones

Apple:

The new iTunes focuses on music, movies, TV shows, podcasts, and audiobooks. Apps for iPhone, iPad, and iPod touch are now exclusively available in the new App Store for iOS.

[…]

If you have an iOS app, ringtone, or book that’s no longer available for redownload, you can move that content to your iOS device while plugged in to a computer with a USB cable.

Apple:

With iOS 11, you can redownload purchased tones that you bought using your Apple ID.

I suppose this has been a long time coming, but I will miss the lost functionality. I preferred to browse the App Store from my Mac, and I liked the automatic app backups. Now I’ve lost the ability to revert an app if a new version introduces a problem or limitation. And, presumably, restoring a device from backup will be slower and impossible offline because it will have to redownload all the apps.

See also: Nick Heer, MacRumors, Kirk McElhearn, Jeff Johnson, Rob Griffiths.

Jason Sims:

New feature in iTunes 12.7: the column browser no longer remembers its height; it resets to 3 rows tall every time you view a playlist.

I see this bug as well.

Update (2017-09-15): Alexandre Colucci:

If your “iTunes Media” is an alias to an external unplugged disk, iTunes 12.7 will crash at launch.

Paul Kafasis:

Today, we’re releasing Fission 2.4 with revamped ringtone saving. Using Fission, you can once again save custom tones for use on your iOS device. While the new iTunes makes it much less obvious, it is indeed still possible to load custom tones onto your iOS device, right from your Mac.

See also: Hacker News.

Update (2017-09-19): See also: Kirk McElhearn.

Craig Grannell:

Apple should steal an idea from Google. It should be possible to buy apps directly from iTunes Preview, and choose where to send them. Better: iTunes Preview should grow to become the entire iOS App Store online, giving greater visibility to apps, and freeing browsing and buying them from the confines of iOS.

Pierre Lebeaupin:

Yes, some of us still don’t buy into the idea that the handheld device is necessarily self-sufficient; I mean I’d very much like to see you add freely distributed music (which as a result is not in the iTunes store) to your iPhone music library, or back up your iPhone to a non-Internet backup location, using solely the iPhone itself. As long as I can’t do that and have to sync, might as well use sync for everything (and honestly, I don’t mind sync per se).

And of course, speaking as a developer-adjacent person, I have to wonder what the impact is when potential customers who come across a link to an iOS app while browsing the web on their desktop… can no longer buy it there. There will be lost sales until Apple improves the situation (QR codes would be a start, for instance).

Update (2017-09-20): Ted Landau:

Not a surprise, but its appears the new (app-less) Mac version of iTunes is required to recognize connected iOS devices running iOS 11.

Kirk McElhearn:

I have four iOS devices, and if I had to download these updates individually to each device, that would saturate my bandwidth for about an hour (15 minutes or so for each device). Not long ago, I had a 4 Mbps connection; the same updates would have taken four hours for all my devices. And this doesn’t count the many other apps that I have to update.

[…]

If Apple won’t restore app management and syncing to iTunes, they should add it to the Mac App Store app, or create a new app for syncing all content. Punishing those users with sub-standard internet connections is wrong.

Update (2017-09-21): See also: John Voorhees.

Apple TV 4K, Still a Hobby

Josh Centers:

Outside of improved video, don’t expect much in the way of improvements. The new A10X Fusion chip, Gigabit Ethernet port, simultaneous dual band Wi-Fi, and Bluetooth 5.0 support are nice additions, but they’re not game-changing.

[…]

Frankly, this hardware is an enormous disappointment. The fourth-generation Apple TV was already behind the curve when Apple launched it without 4K in 2015, and now that it has caught up with the competition, it’s still about $100 more expensive than comparable devices.

Josh Centers:

Apple: “Here’s the new Apple TV. $150.”

Users: “No thanks. Fire Stick is good for $40.”

Apple: “What if we raised the price to $180?”

Juli Clover:

Alongside the new 4K Apple TV, Apple today quietly released a new, slightly redesigned Siri Remote to go along with it. Priced at $59, the updated remote features a new more prominent Menu button with a white circle around it.

This is better, but I think the remote needs a complete redesign. And I don’t think they have the on-screen interface right yet, either. Overall, it’s really surprising how little has fundamentally improved in the last two years, and how the strategy remains confused. In retrospect, I wish I had not invested in video content from Apple.

See also: Hacker News, Ryan Johnson.

Update (2017-09-15): Ken Segall:

Common sense says the current Siri Remote would be replaced at the first opportunity. And the unveiling of the Apple TV 4K was an excellent opportunity.

Instead, Apple “let it ride” in the Remote department. Not exactly the behavior of a company that puts the highest priority on the customer experience.

See also: Accidental Tech Podcast.

Update (2017-09-21): Mike Rundle:

The new Apple TV can’t play 4K content from YouTube, the place with the largest selection of 4K content.

Nilay Patel:

But the new Apple TV doesn’t support Atmos. And it doesn’t support YouTube in 4K HDR. And it doesn’t have Disney or Marvel movies in 4K HDR. And it makes some 1080p content look less than great.

[…]

The Apple TV also automatically preferences refresh rate over any other setting: if your TV supports 60Hz HDR10 but only 30Hz Dolby Vision (like 2016 LG OLEDs), the Apple TV will pick HDR10, even though HDR10 looks worse than Dolby Vision. Apple told me that’s because it wants the interface and games to run as smoothly as possible; it’s found that the interface judders at 30Hz. So you’ll get worse HDR but a smoother interface, all because the Apple TV won’t switch modes.

The lack of mode switching also means that Apple’s picking its own video upscaling and processing system over whatever’s in your TV. Your TV just thinks it’s getting 4K HDR video all the time. It won’t know that it’s actually displaying an HD source, and won’t do any of the tricks 4K TVs do to make those sources look better.

Update (2017-09-22): John Gruber:

It is baffling to me that Apple didn’t redesign the remote control to make it obvious at a touch which way it’s oriented. The raised white ring around the Menu button is an improvement, but it’s truly the least Apple could have done. I really wish they’d either made it asymmetric (wedge-shaped, perhaps) or used texture to denote orientation along the back and sides. Nobody loves this remote. Most people I know outright dislike it. And Apple left it almost unchanged.

[…]

Apple may well have good technical or legal reasons for not supporting VP9. Apple TV users don’t care. They just want YouTube videos to look great on their TVs.

Felix Schwarz:

Ok, so the white ring on the new #SiriRemote is on the Menu button, which is now also sharply recessed.

#SiriRemote packaging: 2015 vs.2017. Skeumorphism vs. flatness with wrong button colors.

macOS 10.13 High Sierra Shipping Soon

Juli Clover:

macOS High Sierra, the new version of the macOS operating systems for Macs, will be released to the public on Monday, September 25, according to Apple’s macOS High Sierra website.

That’s nearly a week after the iOS 11 and watchOS 4 release date, with those software updates coming on Tuesday, September 19.

David Pogue:

Still, there’s a lot of useful stuff. Here’s what you can look forward to.

Howard Oakley:

I cannot understand why Apple wants to make High Sierra so unattractive at this late stage. Failure to offer APFS on Fusion Drives and hard disks indicates that High Sierra is being released before it is ready for much of the desktop Mac market. During the summer Apple recognised that APFS was not yet ready for use on hard disks, but has pressed ahead with its release regardless.

Lloyd Chambers:

Accordingly, MPG hereby raises that 3 month ‘wait’ recommendation to a full six months from here on in. That’s because (a) a change in file system is a major change with repercussions and (b) Apple cannot be trusted to respect users or their data or their workflow, with poor judgment seem repeatedly many times over in recent years. The name for this macOS release is apt.

Remember, Apple ships on a calendar basis. Not when requisite software quality is achieved—if the bar is too high, the bar is lowered and the software ships on schedule. This has been going on for years and now with iOS and macOS tied together with APFS and iCloud, it won’t stop—the iPhone drives all.

Update (2017-09-19): John Gruber:

I have all-flash drives in both my MacBook Pro and iMac, but I’m not in any hurry to switch to APFS. And since drives that can be updated are automatically updated to APFS when you update to High Sierra, I’m in no rush to update to High Sierra.

iPhone X

This seems like a device that you’d really have to try in person to evaluate. The screen is presumably great (OLED, P3, True Tone), but I can’t tell how much better from photos or videos. Does the larger screen provide much benefit given the odd shape? How hard is it to reach different parts of the screen, e.g. the top right corner for Control Center? How does it feel to gesture instead of pressing the home button? Is it uncomfortable to hold without a case like the iPhone 6s? How useful is Portrait Lighting? Switching apps by swiping the bottom of the display does look incredibly useful.

The main appeal of Face ID to me is that Touch ID sometimes has trouble with wet or dirty fingers, and it doesn’t work at all with gloves. However, if it’s true that Face ID doesn’t work with sunglasses or winter clothing that would be worse. And will having to look at it feel burdensome or slow? With Touch ID you can unlock the phone before it’s even facing you.

The notch seems to be the new camera bump, only worse. It doesn’t look good, it cuts into the content, and it seems to bring a lot of software complications and compromises. I can’t tell whether this is something everyone will get used to and forget about or whether it will be relentlessly mocked until Apple eventually changes the design.

Given the price and availability of the iPhone X, I think Apple succeeded in that the iPhone 8 looks perfectly fine in comparison. I will be really interested to see how well the iPhone 8 Plus sells. It does not seem to be obsoleted by the X.

If I were getting a new iPhone today, I would get another iPhone SE. I just love that size and how comfortable it is in the hand and pocket. I hope it gets an update soon, though. The design is fine, but I’d like to see a faster processor, wireless charging, water resistance, barometer, 3D Touch, and better cameras, display, and speakers. It’s a good deal at the current price, but I wish Apple didn’t couple the size and price.

Update (2017-09-15): Ken Segall:

Months ago, I suggested that this would be Apple’s big chance to right the naming ship after all the S silliness of the past. It would have been an extraordinary act of common sense to unite the entire 2017 iPhone family under a single umbrella.

[…]

Face ID looked amazing, and it’s not hard to imagine this technology being key to a more secure future.

But there was one little “huh?” moment. I’m talking about the two-step process of getting into the iPhone X. You show it your face, then you swipe up to see the home screen.

That’s one more step more than it takes with Touch ID.

John Gruber:

There were, of course, early attempts to embed a Touch ID sensor under the display as a Plan B. But Apple became convinced that Face ID was the way to go over a year ago. I heard this yesterday from multiple people at Apple, including engineers who’ve been working on the iPhone X project for a very long time. They stopped pursuing Touch ID under the display not because they couldn’t do it, but because they decided they didn’t need it.

[…]

I was wrong about what Apple would call it, but I still say every single point I made arguing that they would and should pronounce it “ex” was correct.

[…]

But what I dislike more than the notch isn’t the notch itself but that Apple is fully embracing the notch in software. I really wish their software design rendered the “ears” with black backgrounds while using apps. […] In landscape, the notch looks like a joke. I think Jony Ive either lost a bet or lost his mind. It looks silly, and to pretend otherwise is nonsense. I’m OK with this because I never use my phone in landscape other than when using the camera, watching videos, looking at photos, or playing games — and iOS 11 hides the notch with black bars by default in those use cases. But this looks just awful — and that screenshot was taken from Apple’s own video advising developers on how to handle the notch in their UIs.

Dean Jackson:

Apple has made a proposal to CSS about how to design for iPhone X's round corners and notch.

Craig Federighi:

Most sunglasses let through enough IR light that Face ID can see your eyes even when the glasses appear to be opaque.

Nick Heer:

With the iPhone X, though, both of the new charging features feel like a bit of a tease: neither a faster charger nor an inductive charging mat are included with the most premium, tomorrow’s-world-today iPhone model. I’m not complaining about the price of the iPhone X, for what it’s worth, nor am I necessarily making a value-for-money argument. But, given the premise of the iPhone X, I feel like bundling at least one of the two new charging features would have been welcomed.

See also: Everything You Need to Know About the iPhone X’s Controversial Notch, 50 New Features in iPhone X.

Monday, September 11, 2017 [Tweets] [Favorites]

Oral History of Avie Tevanian

Computer History Museum (via Michael Nordmeyer):

Avie begins by discussing how the acquisition of NeXT occurred from the perspective of NeXT, including the OS bakeoff against Be. Avie also goes into his personal relationship with Steve Jobs over the years, what it was like to work with him, and how one might convince him one was right. He then moves on to discussing the early years of the turnaround, working initially under Gil Amelio and then under Jobs, and Jobs’ return as CEO of Apple. During this period, Avie’s main priority was to turn Apple’s software group into a world class development organization and to direct key technical decisions in the development of Mac OS X, sometimes over the objections of entrenched interest groups at Apple, such as the decision to embrace TCP/IP and other open standards over continuing to use Apple proprietary technologies. Avie also discusses collaborating with Jon Rubinstein’s hardware division, Apple’s ups and downs in the early 2000s, the transition of the Mac platform to Intel processors, the sunset of Newton, Mac OS 9, and WebObjects, the balance between use of open source and proprietary technologies, the development of iTunes and the digital hub strategy, and his testimony in the Microsoft anti-trust trial.

In 2003, Avie moved into a new role as Chief Software Technology Officer, out of day-to-day product responsibility, and into a strategic advisory role with Steve Jobs, during which he helped set in place the software strategy for the iPhone. After three years in that role Avie retired from Apple in 2006.

Highly recommended. There is also a Part 1, covering the period before Apple acquired NeXT, which I have not listened to yet.

Previously: Interviews with Scott Forstall and Mike Slade.

Animoji Rejected From the App Store

Benjamin Mayo:

We are continuing to dig through the leaked iOS 11 GM firmware. We’ve found a brand new feature for the iPhone 8 called ‘Animoji’, which uses the 3D face sensors to create custom 3D animated emoji based on the expressions you make into the camera.

Users will be able to make Animoji of unicorns, robots, pigs, pile of poo and many more.

Ryan Jones:

For the last year I’ve been battling App Store rejections - we made an app called Animoji with animated emojis...now I know why.

Apple (incorrectly) repeatedly rejected it for IP violation. The emojis look nothing like Apple’s and the name wasn’t taken.

We drew them all, not a copied pixel. At the start they looked similar...because 1,000+ apps did! So we changed to flat style...Nope 🤷

I even suspected it and changed the name to “Animatimoji”...Nope.

Ultimately I think rejections were because we actually made a good app! Clear UI, pro animations, great name... Too close to home. 😔

Apple Legal said “Apple owns all derivatives to our Emoji set”.

How that applies to only us and not 100,000 other Emoji apps...🤷

Colin Plamondon:

That Apple is still doing that 8 years after the App Store launched is insane. 6 month review cycle “soft vetoes” since the beginning.

I wish I could say this behavior from Apple is in any way surprising.

Update (2017-09-13): Ryan Jones:

Animoji © Sept 2016

PDFXKit

PDFXKit (tweet):

Today, we are open sourcing PDFXKit, a drop-in replacement for Apple’s PDFKit that uses our industry-proven PSPDFKit SDK under the hood.

Peter Steinberger:

Current impact per arch is ~25MB. Of that around 11MB are language translation tables because PDF.

Previously: PSPDFKit for macOS, More macOS Preview PDF Trouble.

An Apple Support Experience

John Risby:

Ultimately the fault lies with them, their generally terrible customer service policies and a design/manufacturing fault with the late 2016 15" Macbook Pro touch bar model. A fault that I’ve yet to see them publicly accept despite the fact it is accepted internally, has a fault code, and internet forums and youtube are full of people reporting the same problems.

Many of these people are being forced to pay out of their own pockets for expensive repairs even though there is, what seems to be a secret, repair programme in place.

[…]

The short version of this story is if you have a late 2016 15" touch bar model and you have problems with noises or the screen, go to Apple and, unless you know you’ve done something stupid like dropped it or put a hammer through the screen, demand they fix it or replace it.

[…]

Sadly Apple seem to have stopped trying to be the Porsche or Ferrari of computers, while keeping the same prices — or, in the case of this Macbook range, actually putting the prices up — but decided to adopt the customer services policies of a dodgy used car lot.

I’m not sure how much can be generalized from one experience. My own have been mixed and not frequent enough to infer a trend. Many interactions have been really great, exactly what you would expect from a reputable company that cares about its customers. Some were positive in the sense that multiple levels of advisors were caring and motivated to help, but the problems were left unresolved due to software bugs out of their control. With a few, the advisors seemed to want to help but didn’t have much knowledge of the product or seemingly any way of looking it up.

On the whole, the support from Apple seems to be worse than nearly all the small companies I deal with but better than nearly all the big companies (except Amazon).

Two paragraphs that resonated with me:

They immediately told me it was my fault. They claimed it had to be. They said once a screen leaves the factory, if it breaks, it is always the users fault.

When my father tried to return an iPhone 4 that had no cell signal at his home or work (with or without a bumper), despite an iPhone 3GS working great in both locations, Apple Store employees kept saying that it was somehow his fault, the phone was perfect, and he was an idiot for not wanting to keep it.

They only had to look at Mac forums or Youtube to see it being reported but that’s one thing I learned through this experience. Even senior advisors at Apple have very limited access to the internet at work, which doesn’t just show a shocking level of trust in their staff, but is a genuine hinderance to their ability to do their job. It’s less surprising they haven’t heard about problems from customers if they can’t read the forums their customers post on.

Almost every hardware issue I’ve encountered has a thread in Apple’s own forum with hundreds or thousands of posts. Advisors are always surprised to hear this and never seem to have a way of looking up other instances of the same issue.

One constant is that, despite every case having a number, it’s rare for someone to look up notes from previous interactions on that case, and I’ve been told it’s impossible when the case is transferred between different departments.

Via Wojtek Pietrusiewicz:

I had two 13″ MacBook Pro Touch Bar devices and returned them both, but not because there was something wrong with them — I just didn’t like the Touch Bar and short battery life.

Update (2017-09-11): See also: Nick Heer. Previously: Apple’s Support Gap.

Update (2017-09-13): See also: Seattle Rex (via Nathan).

Update (2017-09-20): Peter Steinberger:

It took >3 months, but Apple finally replaced the logic board on both MacBooks and also refunded the money for the failed repairs.

Wednesday, September 6, 2017 [Tweets] [Favorites]

Is This My Interface or Yours?

John Saito (via Ole Begemann):

In later versions of Windows, Microsoft changed the label of this [My Computer] icon to Computer, then changed it again to This PC. Did they change it because “my” was misleading? Inconsistent? Unnecessary?

[…]

Unfortunately, cutting out “my” or “your” doesn’t work 100% of the time. Sometimes you really do need to differentiate the user’s stuff from someone else’s stuff. For example, in YouTube, you can’t just say “Channel,” because it’s not clear whether that’s referring to your channel, channels that you’ve subscribed to, or channels that YouTube is recommending to you.

[…]

When to use me: Use I, me, my, or mine when the user is interacting with the product, like clicking a button or selecting a checkbox. But only add these words if you absolutely need to for clarity.

When to use you: Use you or your when your product is asking questions, giving instructions, or describing things to the user. Just imagine what a personal assistant might say.

1980s Apple Ads

Jeff Jackson has a collection of old Apple ads for AppleCare and HyperCard.

Via Janne Aukia:

The focus on business customers is interesting. Many of the selling points would be valid still today.

Data Locality and STL vs. Swift

David Owens II (tweet):

What if I told you that even in an array of 10,000 items and a linked list of 10,000 items, insertion into the middle is still going to be faster in the array? Would you believe me?

[…]

The problem is that the -> operator (de-referrencing) is a relatively expensive operation.

He also found that for the simple case of an array of integers, Swift’s Array was about half the speed of std::vector. This is pretty good, and it looks like there’s room for it to be improved.

Joe Groff:

The optimizer is also not great at telling that insert/append-type operations maintain uniqueness so it can leave out checks.

If you’re seeing protocol overhead it’s probably also failing to specialize something.

Update (2017-09-06): David Owens II:

Actually, they are even perf now. I was using Int instead of Int32, so the size was 64bits instead of 32bits like the C++ version. 🙄

Joe Groff:

Another linked list variant is a contiguous array of (value, next index) pairs, so you get locality and can efficiently insert by appending

and you can easily sort in-place into an ordered vector as a pre-pass to benefit from sequential memory access

Swift and KVO Context Variables

Michael Brown:

I found the solution to the problem in this Apple Swift Blog post about interacting with C pointers from July 2014! So this has been a problem right since the start of Swift, but only now, perhaps with improved runtime checks in Swift 4, is it causing crashes.

The relevant part is here (emphasis mine):

These conversions cannot safely be used if the callee saves the pointer value for use after it returns. The pointer that results from these conversions is only guaranteed to be valid for the duration of a call. Even if you pass the same variable, array, or string as multiple pointer arguments, you could receive a different pointer each time. An exception to this is global or static stored variables. You can safely use the address of a global variable as a persistent unique pointer value, e.g.: as a KVO context parameter.

The best fix is probably to use the new KVO API, but this issue is worth keeping in mind for other APIs that use C pointers.

Update (2017-09-06): Joe Groff:

That use case should work with the latest Xcode 9 betas.

I forget details, but exclusivity enforcement for passing pointers to ivars was relaxed to accommodate this kind of use.

1Password Command-line Tool Public Beta

Connor Hicks (via Rick Fillion):

The 1Password command-line tool makes your 1Password account accessible entirely from the command line. A simple op signin will securely authenticate you with the 1Password service and give you access to a wide range of capabilities[…]

[…]

One of the most frequent requests we receive from 1Password Teams customers is the ability to export the Activity Log. With the Pro plan, op list events makes it easy to ingest activity data into the application of your choosing. Be it Splunk, Kibana, Papertrail, or your own tool, op outputs JSON, so it’s simple to work with.

Tuesday, September 5, 2017 [Tweets] [Favorites]

Injecting Missing Methods at Runtime

Vincent Bénony:

The important thing here is that most of the methods you’ll use are lazily bound. It means that instead of resolving the address of every method at loading time, the linker will write the address of a resolution method, and the effective resolution will be made the first time the method is used.

[…]

So, if a symbol is missing, how about resolving it by ourselves?

This is simpler than it sounds, and here is how we’ll proceed: we’ll parse the Mach-O header of the library, find where the lazy binding information is stored, find the symbol table, and replace the pointer in the __la_symbols_ptr section with our replacement code.

iOS Cropping in Photos

Dr. Drang:

The image has again resized itself to fill the editing area, but this time the adjustment has completely screwed up our intended edit. The upper crop marks have moved down and sliced into the top line of the paragraph we were intending to capture. This happened even though we never touched either of the upper crop handles during the second edit.

This behavior, which seems to be driven by how the aspect ratio of the image changes as you drag one of the crop handles, is thoroughly unintuitive. The handle at the opposite corner of the one you’re dragging should never move.

Google Maps Parking Features

Jeff Albertson:

To see how hard it might be to park where you’re headed, just get directions to your destination and look for the parking difficulty icon in the directions card at the bottom of the screen. Parking difficulties range from limited to medium to easy and are based on historical parking data with a little machine learning magic.

Since parking can be unpredictable, we’re rolling out the ability to find parking near your destination on Google Maps for Android.

In 25 US cities, people can tap “find parking” on the directions card to see a list of parking garages and lots near their destination. Once they tap their selected option, it’s automatically added to their trip. And they’ll even get walking directions from their parking spot to their final destination.

Hopefully the iOS version will catch up.

Update (2017-09-11): Sasha Blair-Goldensohn:

Starting today, we’re calling on Local Guides, a community of people who contribute their expertise about places on Google Maps, to add more wheelchair accessibility attributes to the map. If each of our tens of millions of Local Guides answers three of these questions every day for two weeks, we can gather nearly two billion answers to help people who rely on this information every day.

And wheelchair users aren’t the only ones who will benefit. You’ll also be making life easier for families with strollers, seniors with walkers, or anyone making plans with a friend who has impaired mobility.

Behind the Scenes of AMP at Condé Nast

Oscar Perez:

AMP increases the visibility and discoverability of our content by allowing it to be included in Google’s Top News Carousel, as well as improving the experience of regular Google search results.

[…]

We went live with Google AMP on Vanity Fair a little over a year ago. Post-launch, the traffic and search rank results were very positive: click through rate from Google search went from 5.9% (Regular) to 10.3% (AMP), and average search position went from 5.9 (Regular) to 1.7 (AMP). Since then, we have deployed AMP across fifteen of our brands and we have been very pleased with the results. Today, AMP accounts for 79% of our mobile search traffic and 36% of our total mobile visits.

Via Nick Heer:

AMP allows website owners a quick and relatively easy way to juice their search rankings. That’s all this is. There are certainly other ways to create a beautiful and fast website, but none of them get a website into the very prominent news carousel at the top of Google search result pages and Google News.

[…]

Just to be clear: AMP’s specifications require that pages link to this script: https://cdn.ampproject.org/v0.js. For a page to be valid AMP HTML, it must include that JavaScript file, which is hosted by Google.

Alex Kras (via Hacker News):

I understand that a lot of users DO like AMP content. I completely respect their right to enjoy it. But it would be nice if Twitter provided an option to opt-out from that experience for those who don’t.

For example, today I saw a post that David Walsh shared on Twitter. I clicked on the link, and was taken to the AMP version of his site. David has a very nice and easily recognizable blog. When I saw the content that looked different I had to pause. I wasn’t sure if I clicked on a phishing link or something else like that. Once I realized that it was just an AMP version of his site, I move on with my day. I wish I could opt-out from that experience.