Cables are Inherently Fiddly

John Gruber:

The more I think about it, the more I realize the trend isn’t just toward eliminating ports on devices — it’s about reducing the number of cables you use. There probably will be Lightning headphones and Lightning for audio out on the upcoming iPhones, but I think Apple’s push is going to be toward wireless. Cables are inherently fiddly, and fiddliness is un-Apple-like.


Upgrade #95: Don't Bring the Pain Without the Benefit

Count Jason Snell among the headphone jack removal nay sayers.

Jason starts the headphone segment (at 51 minutes and 44 seconds) of the latest episode of Upgrade with a very rational stance of "This is just a rumor. Let's wait and see what happens." But then he proceeds to get himself worked up into what I think is fair to call "a lather" talking about the issue. His constant refrain is "Tell me why Apple would remove the headphone jack."

I think the "why" is obvious. It's because wireless headphones will eventually be better than wired headphones. Right now wireless headphones are objectively worse than wired headphones in almost every way, but Apple has the power to move this technology forward. Any short term pain the user feels from this change (lightning headphones, 3.5mm to lightning headphone adapters, having to put up with expensive/flaky bluetooth headphones) will be forgotten in a couple of years.

Requiem for a Headphone Jack

MG Seigler:

But here’s the thing about that notion: it’s said every single time Apple does something like this. The removal of the floppy drive on the Mac. The lack of a physical keyboard on the iPhoneThe removal of the optical drive on MacBooksThe end of the mouseThe removal of USB portsEtc. Etc. Etc.

The outrage is as palpable as it is comical. Then everyone calms down. The news cycle moves on. People buy the new Apple device anyway. Life continues. All competitors copy Apple’s once-controversial move. And technology ends up in a better place as a result.

Because, ultimately, this isn’t about “Apple knows best,” it’s about progress. You cannot move forward if you don’t sever the ties to the past at some point. As Gruber points out, Apple seems to be particularly astute with its timing in this regard, but I’d argue these changes would ultimately happen regardless. They’d just happen a lot more slowly.

Exactly. I don't even understand how people can be upset about Apple removing old technologies from their devices anymore.

SFSpeechRecognizer for iOS

There's a lot of good stuff in this What's New in iOS 10 document. One thing of note, though, is there is now an API to easily initiate a speech to text session programmatically:

iOS 10 introduces a new API that supports continuous speech recognition and helps you build apps that can recognize speech and transcribe it into text.

Relevant sample code:

let recognizer = SFSpeechRecognizer()
let request = SFSpeechURLRecognitionRequest(url: audioFileURL)
recognizer?.recognitionTask(with: request, resultHandler: { (result, error) in
     print (result?.bestTranscription.formattedString)

Not as amazing as the SiriKit API offered up to certain categories of app, but could be really nice while we wait for that list of supported categories to grow.


As hoped (expected?), Apple (finally) released a way for developers to integrate with Siri:

SiriKit enables your iOS 10 apps to work with Siri, so users can get things done with your content and services using just their voice.

Unfortunately, only specific app domains are supported: Messaging, VoIP Calling, Payments, Ride Booking, Photo Search, and Workouts. Seems like a pretty big oversight to not have a todo/list domain, which means that I'm not going to be able to add a Siri integration for Kitchen Sync just yet.

Binge v1.2

Version 1.2 of Binge is out today. Here's what's new!

New & On Deck

Previous versions of Binge had a section at the top of the user's Movies and TV Shows called "Recent" that would attempt to float content they were most likely to want to watch to the top of their list. However, users have been confused about how things were determined to be "Recent" and sad that Binge didn't include Plex's "On Deck" functionality.

With v1.2, "Recent" is now "New & On Deck". The new title should be a lot more clear to users, and behind the scenes I'm relying a lot more on Plex's On Deck algorithms. If a Movie or TV Show has been added or viewed in the past month, it's considered "New & On Deck". Of course, only unwatched content shows up in this section.

Section Index Updates

On iOS, if you have a tableview of content, you can choose to display a letter index down the right side of the screen to let the user jump to an area of content quickly. As far as I can tell, this functionality has not yet been extended to Apple TV. So I had to write it myself.

With v1.2 of Binge, there's now a ★ icon at the top of the section index, so that users can quickly get back to the New & On Deck section of the app if they've scrolled to the bottom of a list.

Additionally, with previous versions of Binge, the first letter to be focused in the section list would always be the letter directly to the right of whatever had been previously focused by the user. Now it smartly focuses the letter that corresponds to the previously focused movie or TV show. So if the user has "Captain America: The Winter Soldier" focused, then moves to the Section Index, the letter "C" will be focused for them.