Archive for February 1, 2017

Wednesday, February 1, 2017

Swift Classes That Conform to Protocols

Chris Eidhof:

The other day, someone asked how to have a variable which stores a UIView that also conforms to a protocol. In Objective-C, you would simply write UIView<HeaderViewProtocol>. In current Swift, you can’t write something like that. This posts shows a two workarounds.

Automatically Test Your Database Backups

Marco Arment:

The solution is to frequently and automatically test backups by:

  1. Regularly downloading the latest backup from S3 (or wherever) and performing a full restore onto a clean server.
  2. Testing its validity in a way that a human is sure to notice if it stops working properly.

The first part sounds hard, but isn’t. For Overcast, I run an inexpensive Linode server devoted to automatically fetching, installing, and testing the latest backup every day and emailing me a report.

iOS to Drop Support for 32-bit Apps

Peter Steinberger:

RIP 32-bit emulation mode in iOS 11?

Andrew Cunningham:

Beta builds of iOS 10.3, the first of which was issued last week, generate warning messages when you try to run older 32-bit apps. The message, originally discovered by PSPDFKit CEO and app developer Peter Steinberger, warns that the apps “will not work with future versions of iOS” and that the app must be updated by its developer in order to continue running. The apps still run in iOS 10.3, but it seems likely that iOS 11 will drop support for them entirely.

[…]

Apple has required 64-bit support for all new app submissions since February of 2015 and all app update submissions since June 2015, so any apps that are still throwing this error haven’t been touched by their developer in at least a year and a half[…]

Roman Loyola (Hacker News):

The switch to 64-bit only support means that older iOS devices built on 32-bit architecture will not be able to upgrade to the new iOS. This includes the iPhone 5, 5c, and older, the standard version of the iPad (so not the Air or the Pro), and the first iPad mini.

saurik:

The Ars Technica article on this issue cuts to the heart of why this is so devastating: there is tons of software--software which was really interesting and I dare say “seminal” for this important era of computing; and which is not old or outdated by any sane standard--that this destroys access to going forward, for essentially no benefit.

Apple insisted that they get to curate something of critical value, but they don’t comprehend the moral weight of that responsibility, and now want to just go around burning down their Apple-branded libraries.

It makes me sad, but there definitely is a benefit to Apple and (a smaller one) to users.

cameldrv:

I’m not sure that this means what the article says it means. Apple was selling the iPhone 5C in India until less than a year ago. Dropping support for the new OS that soon would be uncharacteristic for the iPhone.

Instead, they may simply be dropping support for 32 bit apps on a 64 bit CPU. Having to support 64 bit and 32 bit apps one a single device forces them to ship two versions of every shared library, and is probably annoying for them in various types of interprocess communication, because, for example, CGFloat and integer types are different sizes.

danudey:

The fact that those apps are still 32-bit means they’re unmaintained. The fact that they’re unmaintained means that they’re likely to break at some arbitrary OS update anyway. Even common apps like Tweetbot, by reputable developers, will break on a new major version, so your app that hasn’t been updated in years is probably going to die off soon anyway.

The only way to make sure to keep those apps open is to keep from updating iOS, and if you do that this doesn’t affect you anyway.

Update (2017-02-24): Juli Clover:

In the Settings app, there’s a new “App Compatibility” section that lists apps that may not work with a future version of iOS. Tapping on one of the apps opens it up in the App Store so you can see when it was last updated.

Update (2017-04-14): Andrew Cunningham:

Putting aside that this spells the end for all kinds of old, unmaintained games and other apps from the early days of the smartphone and App Store, Apple’s complete transition to 64-bit is a unique and interesting technical achievement. Here’s the complete timeline of the transition, to date[…]

Update (2017-06-04): Eli Hodapp (tweet):

As pointed out by TA reader Severed, 32-bit apps no longer appear in App Store search results.

[…]

Well, it seems 32-bit apps are once again searchable on the App Store. We’ll need to read some tea leaves to figure out what this means, but either way there was a good 12-24 hours where 32-bit apps vanished from App Store search. Whether this was a test for something that’s coming in the future, or just a mistake on Apple’s part is anyone’s guess.

Apple’s Q1 2017 Results

Apple (Hacker News):

Apple today announced financial results for its fiscal 2017 first quarter ended December 31, 2016. The Company posted all-time record quarterly revenue of $78.4 billion and all-time record quarterly earnings per diluted share of $3.36. These results compare to revenue of $75.9 billion and earnings per diluted share of $3.28 in the year-ago quarter.

Jason Snell:

There was a time when every quarter was a record for Apple, but after last year’s rough year of regression (following a record-smashing 2015), it wasn’t a sure thing that we’d see more of those for a while. But for the holiday quarter of calendar-year 2016, Apple beat its own advance guidance and reported a record revenue of $78.4 billion.

John Voorhees:

Below, we’ve compiled a graphical visualization of Apple’s Q1 2017 financial results.

Dr. Drang has moving averages.

Jeff Johnson:

Most Apple fiscal quarters are 13 weeks long. Once in a while, however, they need a 14 week quarter. You might call it a “leap quarter”. […] What a difference a week makes! Rather than record revenue, we have another down quarter for Apple. The lone bright spot was services; everything else was a year/year decrease.

Marco Arment (tweet):

Apple and commentators can keep saying the iPad is “the future of computing,” and it might still be. But we’re starting its seventh year in a few months, and sales peaked three years ago.

What if the iPad isn’t the future of computing?

Marco Arment:

I’d say the iPad’s biggest constraints are the OS’ file and window limitations, and the health of apps, both first- and third-party.

Unfortunately, these aren’t quick fixes, and the result of “fixing” them might just be reimplementing the Mac poorly.

The replacement-cycle problem: How many iPads are mostly used for video playback? Will they be replaced with a $300 iPad or $50 Fire Tablet?

Nick Heer:

On the flip side of that coin, what if Apple treated the iPad as the future of computing, instead of upscaling iPhone features to fit the iPad’s display, or hardly paying attention to it for an entire year? Would customers respond to an earnest attempt?

John Gruber:

The peak years (2013 and 2014) were inflated because it was an untapped market. Steve Jobs was right, there was room for a new device in between a phone and a laptop, and the iPad was and remains an excellent product in that space. But people don’t need to keep buying new iPads. I think the replacement cycle is clearly much more like that of laptops than that of phones.

[…]

The other factor is that the conceptual space between phones and laptops has shrunk. iPhones have gotten a lot bigger, and MacBooks have gotten thinner and lighter.

Jason Snell:

The iPad has 85 percent of the market of tablets priced over $200. The important facts here: Apple’s not interested in selling a sub-$200 iPad, and so that means it’s doing spectacularly well in the market. The market’s just contracting. So this isn’t necessarily about the rejection of the iPad—it could be about flagging enthusiasm for the entire category of premium tablets.

[…]

The number of people buying the iPad for the first time is very strong, according to Cook, which means that the tablet market isn’t actually saturated.

Benjamin Mayo:

So many basic computing tasks are convoluted and messy on the iPad we know today. Tasks like tweeting an image embedded into a webpage in Safari, playing background music without getting interrupted, collating a handful of attachments from different recipients and sending them off in a new mail message, and so many other things that people want to do every day. Heck, it’s still not possible to look at two emails side-by-side.

Update (2017-02-02): David Sparks:

In my mind, the issue is that users are not pushing the iPad harder to do more work for them, which would naturally end up in users wanting to buy newer, faster, and better iPads. Put simply, I think the issue is software.

[…]

At last year's iPad Pro event Apple made a big deal about how the iPad is powerful enough to replace a PC laptop. I believe for a lot of people that could be true. But it's not quite there yet because of the software limitations.

Update (2017-02-03): Jeff Johnson:

The inescapable conclusion is that even if the 14th week in FY2017 Q1 was one of the slowest weeks of the past two years, that’s still enough to account for the difference with FY2016 Q1. Ergo, FY2017 Q1 did not in fact represent a “return to growth”, as so many media outlets have incorrectly reported.

Ryan Jones:

Here are the numbers on a weekly basis, with Luca’s $0.6B removed. Big change from positive to negative.

Jason Snell:

We can unravel it more if we like: You can back out a huge settlement benefit that hit the first quarter of FY16, which makes Services look even better (but doesn’t change the overall net). You can start to calculate out the channel and supply constraints and get a better sense of demand. In other words, you can make the numbers tell the story you want to tell, with charts to match, and slice it nine different ways.

But, for better or for worse, the window we get into Apple’s finances is based on its financial statements—and that means the quarters as Apple defines it.

John Gruber (tweet):

I don’t think it’s quite right to ding the quarter by a full 8 percent — the entire last week started with Christmas day — but surely some sort of correction is necessary for year-over-year comparisons.

Update (2017-02-06): Jeff Johnson:

If there was a longer discussion of the extra week during the conference call, I didn't see it, and I think it's safe to say that most people didn't see it. The press release from Apple a half hour before the conference call did not mention the extra week. Naturally, the press all ran with the press release. And after the conference call, I did not see any of the press correct themselves. So if there was a more nuanced discussion of the year-year comparison, that information did not reach the public. The headlines were an all-time record quarter, Apple is doing great, the critics were wrong, etc.

Dr. Drang:

What I can do, though, since the code is basically already written, is take a look backward and forward to see how common it is that an Apple fiscal quarter is something other than 13 weeks long.

Dr. Drang:

What’s surprising to me is how slow iPad software has advanced in the seven years since its introduction. I’ve always thought of the iPad as the apotheosis of Steve Jobs’s conception of what a computer should be, what the Mac would have been in 1984 if the hardware were available. But think of what the Mac could do when it was seven years old[…]