Change Infinite Loop’s Name to Apple Playground

When Apple’s flagship “Infinite Loop” headquarters was built in 1993, the name implied many promises of eternal iteration. Regrettably, none of these promises are likely to be fulfilled.

While it’s impossible to predict whether _some_ characteristic of the landmark might one day meet the standard, none of the most obvious candidates have passed the test:

  1. The buildings form a connected loop, so you can technically walk from one building, to the next, to the next, etc. This gives a feeling of an infinite sequence, but it’s apparent to anybody that there are in fact only 6 buildings, labeled IL1 through IL6. Add in IL7 if the Peppermill (now BJ’s) is accounted for, and you get seven. Seven is nowhere close to infinite.
  2. Given the size of the building compared to Apple’s relatively modest Silicon Valley workforce, it seemed at one time that it might house infinite employees. As time wore on and Apple’s successes grew, the number of employees who could be packed into the buildings’ narrow confines was shown to be … decidedly finite.
  3. Lifers at Apple might have once expected to work a virtually infinite number of days (and nights) on the campus, but as time wore on it became evident that these people either retire or move on to other companies. Finally, the remaining hope for infinite workdays was dashed by the construction and opening of Apple Park, where many current Infinite Loop employees will now work.

In fact Apple Park exceeds, by every reasonable measurement, the “infinite” aspirations of Infinite Loop. The extent to which one can walk around it infinitely is grander. The number of employees it can shelter, while shying considerably from infinity, is nonetheless greater. And the career longevity of folks who call Apple Park home today is, I’ll concede, about the same as it was at Infinite Loop.

The pragmatism in naming Apple Park is evident. In corporate headquarters, nothing is infinite. Not even for Apple. In naming this major headquarters upgrade, it makes no such allusions.

So what’s the perfect name for a smaller hoop of a campus, residing a stone’s throw away from the mighty Apple Park? Apple Playground, of course. You’re welcome.

(Radar #38078647)

The Nosiest Assistant

I bought a HomePod, and have been using it lightly for about a week now. On the face of it, I’m the ideal customer: an Apple fan who’s invested in other Apple devices, subscribes to Apple Music, is more-or-less at peace with Siri, and is primarily in the market for a better sounding home audio speaker. Hello, HomePod! I couldn’t resist.

I unboxed it and installed it in our dining room. I tested it with some of my favorite music, by Neutral Milk Hotel. It sounded fantastic to my ears, and seemed to live up to all the hype. My decision to put it in a common room was exciting for my children, who are six and nine. The six-year-old danced around, piping semi-naughty utterances such as “Hey Siri, play inappropriate music,” before giggling maniacally and looking to me for a reaction.

Next, we enjoyed about eight repetitions from the theme song for Milo Murphy’s Law, a children’s show starring Weird Al Yankovic. The kids fought over which one got to “ask Siri” to play it again next. For a short while, it looked as though HomePod would be a welcome addition in our home, but it soon wore out its welcome.

I expected shortcomings, as anybody who’s been following news about the device should, but none of the expected problems were deal-breakers. Here’s how many of those issues affect myself and my family:

  • Multiuser Support. It doesn’t support multiple users. It does support “personal requests” for exactly one user, so anybody who lives with family or roommates, and doesn’t want everybody to have access to their reminders, notes, etc., is compelled to turn off support for these requests.. Fortunately, Apple provides a setting for this and even asks during setup what the default should be. This is not a big deal to me, because I am almost always with my iPhone and Apple Watch, to which I make most of my “personal requests.” More on that later.
  • Multi-HomePod Support. It doesn’t support multiple HomePods. Yet. Apple promised technologically stunning audio performance with the HomePod, and they seem to have delivered. It’s supposed to be even better if you can afford to purchase two or more HomePods and let them work in concert (har, har) with one another. Me, I’m just looking for one HomePod to sound great in one room, so I’m not too bothered.
  • Direct Audio Input. HomePod can’t stream Bluetooth, you can’t plug an iPhone or any other USB device into it, and you certainly can’t pipe direct audio from RCA jacks or a headphone-style 3.5mm stereo jack. It can play music from your iTunes Music Library and Apple Music, or it can stream from an AirPlay-compatible device. This takes care of most my needs, but doesn’t cover all my wife’s wishes. We concluded we would need to keep our existing Bluetooth/USB playback device around as a backup plan.
  • Siri is Siri. Let’s face it: much of the criticism is warranted. I rely heavily upon Siri, and on the whole I’m pretty happy with it. Which is not to say I am not frequently frustrated by its mistaken interpretations and unfathomable inabilities. Perhaps the most embarrassing incompetency, particularly for a device that should feel at home in a kitchen, is its continuing inability to manage more than one timer concurrently. Chalk it up to Stockholm Syndrome, but I’ve got all manner of mental workarounds for Siri’s quirks. I get by, and I didn’t expect HomePod to make any of these challenges disappear.

What I didn’t expect was how incredibly sensitive Siri on the HomePod would be, and how obnoxiously persistent it would be about responding to my requests, no matter how far I am from the device, nor how unsuited it is for the task at hand.

My first experience with Siri’s obtrusiveness came while I was listening to loud music in my living room, being played by the HomePod in the dining room next door. I sat on the couch with my laptop, and paused to give myself a reminder about something. Let’s say it was “Hey Siri, remind me in 30 minutes to start making dinner.” I raised my Watch, issued the command, and was startled to hear the music suddenly drop to near silence. What’s going on? A moment later, Siri boomed from the next room:

You can turn personal requests on or off in the Home app associated with this HomePod.

Holy what! That was unexpected. An incredible demonstration of the perceptiveness of the HomePod, from a distance and over loud music, and a demonstration of the fundamental problem that is slowly driving me to disdain this thing: it will not stay out of my business! Any attempt to “Hey Siri” another device is met by a loud interruption by Siri either of the music, or of the silence of the room. It’s bad enough that it assumes all requests are being made to it, but it’s even worse that it insists on chiming in even when it isn’t capable of serving the request. Just to remind everybody that it’s not configured for personal requests. After several more unexpected activations, I conceded that things were not going well in the common room. I moved HomePod up to my office.

In my office, the HomePod is less useful as a music playback device, because I’m usually deep in thought on some programming or writing task, and I don’t do well with music playing in that context. However, at least in my office I could turn on “personal requests” and accept that HomePod might be my occasional fine-listening device, as well as a ubiquitous Siri assistant. At least it was worth a shot!

At this point I should mention that while my home office is primarily where I work on my independent software business, that I am also a moderately stressed out person who is trying to get a handle on reining in my busy, anxious-feeling brain. To that end, I commit some time in a typical workday to a very casual attempt at mindfulness meditation. I sit down on the floor, take a few deep breaths, close my eyes, and ask my Watch to “set a timer for six minutes” so I can unlock some personal decompression before getting on with my day.

You can guess where this is going: the first time I attempted to meditate in my office after moving the HomePod in, I had just settled down to lap up the water from the trough of relaxation when HomePod blares out at a loud volume: “Counting down from six minutes.” I value the timer on the Watch in part because it rouses me from my activity at first with a slight tapping and vibration on my wrist, rather than with a loud alarm sound. But as I had already settled down into my relaxation pose, I decided to soldier on, bracing myself for the room-shattering awakening that was soon to come.

At this point I’m on the verge of disabling “Hey Siri” altogether. Which is unfortunate because, to my mind, it’s still one of the most impressive features of the device. It’s just incredible to be able to utter music commands like “set volume to 30%”, “pause”, “continue”, “skip track”, etc., even at a whisper from across the room. If I disable this feature, I’m not sure I’ll find the merits of the HomePod as an audio speaker compelling enough to weave into my regular music listening habits.

I have filed a bug with Apple (Radar #37572955) requesting that it be less obtrusively interrupting, particularly when it can’t do what I’ve asked. Although I have high hopes for improvements to come with future software updates, you never can be sure when Apple will get around to fixing the issues that most vex you. I’m conflicted to be at once so impressed with the audio, form factor, and general behavior of Siri on the HomePod, while on the other hand having trouble finding a place in my house where it can show off all those features without also driving me and my family to frustration.

Update: After publishing the above, I received a note on Twitter from Connor asking what version of watchOS I am running:

I realized I didn’t know, off the top of my head. I figured I was updating my watchOS regularly, but couldn’t recall when I’d last done so. I reported that I was running watchOS 4.1, and he suggested that I might see an improvement after updating to 4.2.2. Yikes! I’d really fallen behind.

After updating to 4.2.2 I went back to my office and ran a few artificial tests. I immediately noticed the difference, as my Watch responded to “Hey Siri” requests, and the HomePod remained silent. I was so surprised that I wanted to confirm the HomePod was still listening. I lowered my Watch and issued a request, which was answered by HomePod. Moments later, I raised the Watch again and tried to address it, and this time the HomePod butted in again.

I think they’ve made dramatic improvements specifically to watchOS between 4.1 and 4.2.2, but there is still room for improvement. I had run into the problems with HomePod with my iPhone as well, which I confirmed is running the latest version of iOS. Still, the dramatic improvement with the Watch gives me hope that things will continue to improve, and the situation is not quite so dire as I had first experienced it.

Unified Swift Playgrounds

Usually I write about “programmer stuff” on Indie Stack, and “other tech stuff” here.

Today I had it in mind to write about my belief that Apple should get rid of Xcode Playgrounds and instead focus on adapting the iOS Swift Playgrounds app to the Mac.

I thought at first I would post it here because it’s not strictly about programming, but I ended up posting it there instead:

Unified Swift Playgrounds

May be of some interest even to folks not strictly interested in programming!

Gus Mueller on Extra Intuition

Manton and I just published the second episode of our members-only Extra Intuition podcast: I Know it was 15 Years Ago. We’re joined by Gus Mueller of Flying Meat to chat about … whatever comes up! Many thanks to Gus for taking the time to do the show.

It’s fun to have a chance to deviate from the usual format of Core Intuition. In some ways it’s more relaxed, like the show was in the early days. We are looking forward to mixing it up with interviews and other conversations that we don’t think are as suitable to the main show.

Our first episode, We Did Meet in Person features our recollections of meeting each other and starting to podcast together.

Core Intuition Membership

Today Manton and I released the 300th episode of Core Intuition. We published the first episode on May 30, 2008, and every episode since has been completely free for our listeners. Starting with Episode 301, that’s … going to stay completely the same. Except…

Core Intuition is now offering a membership program. We have been lucky over the past several years to have the financial support of many great sponsors, but we also want our enthusiastic listeners to have the option of supporting us directly. In the long term, we don’t know if we can count on our sponsorship luck to continue indefinitely, and would like to be able to continue doing the show regardless of how those fortunes shift.

We think that many of our listeners would support us without an incentive, but what’s the fun in that? That’s why we decided to start a second podcast, exclusively for members. Extra Intuition will feature extra discussions, interviews, and frankly, we’re not sure what. We’re just excited to have an outlet for some of the stuff we want to talk about, but doesn’t exactly fit the format of the main show.

Our first episode of Extra Intuition is already live, and it features a discussion about the early days of our friendship, and how we decided to start Core Intuition. If that sounds intriguing, please consider becoming a member so you can check out the show!

Sandbox Transparency

Apple’s sandboxing technology provides a mechanism for developers to specify “entitlements” that an app needs in order to provide functionality that users want. For example, on the Mac, an app can specify the entitlements to “print” and to “make network requests.” This system of granular privilege designation is a great baseline both for developers, to avoid accidentally overstepping intended bounds, and for users, to protect against apps intentionally or accidentally causing harm.

One of the biggest problems with Apple’s approach to sandboxing is that the accountability component has been left entirely to Apple itself. Developers are held accountable for the specific entitlements they request only when they distribute software through the iOS or Mac App Stores. In the review process, Apple may determine that a specific entitlement requested from an app is inappropriate for that app’s domain, and demand that the developer remove the entitlement before being approved. Or, in rare cases, they may approve an entitlement that other developers are not typically granted.

Yesterday, Gizmodo reported that Uber had been granted an entitlement for their iOS app that allowed them to capture an image of an iPhone’s screen at any time, even when the Uber app was not the active app on the phone. This is a big deal, because users don’t typically expect than an iPhone app that is not active might have the ability to eavesdrop on anything they are doing.

I have long felt that the sandboxing infrastructure on both iOS and Mac should be used to more accurately convey to users specifically what the apps they install are capable of doing. Currently the sandboxing system is used primarily to identify to Apple what a specific app’s privileges are. The requested entitlements are used to inform Apple’s decision to approve or reject an app, but the specific list of entitlements is not easily available to users, whose security is actually on the line.

I think the next step for sandboxing, on both iOS and the Mac, is to expose the list of entitlements that apps possess, in a way that is reasonably understandable to all users, and even more open to scrutiny by power users. Any user who is wary of an app should be able to examine its entitlements so that any unusual privileges can be evaluated. With this level of transparency, you can bet that Uber’s ability to arbitrarily record the screen would have been revealed much earlier.

Being more transparent with entitlements would also pave the way for overcoming an unfortunate side-effect of sandboxing: the elimination of whole classes of power-user level apps. If users were empowered to know what the privileges of an app are, through a combination of user prompting and an interface for inspecting entitlements, then it would be reasonable to grant more indulgent entitlements to developers.

Mac apps such as TextExpander essentially became unqualified for the Mac App Store with the advent of sandboxing, because they require access to system services such as monitoring the user’s keyboard input, in order to provide valuable macro text substitution. If entitlements were transparent across the board, and users were consistently informed about the extent of an application’s capabilities, it would empower users to make more reasonable decisions about the software they run. It would empower them to allow apps like TextExpander that are currently disallowed by the App Store’s sandboxing policies, and to reject apps like Uber that may be unexpectedly allowed to capture footage of users’ activity even while running other apps.

The Watch is a Phone

Since Apple announced that the Apple Watch Series 3 would be offered with an LTE option, a significant amount of collective energy has been spent scrutinizing the various pricing plans offered by telecom companies around the world.

Because I live in the United States I will focus on the de facto standard $10/month pricing that AT&T and Verizon have both announced. Depending on who you ask, this charge is either completely reasonable, or a complete rip-off. It may be a little of each.

Arguments for the rip-off point out that most US plans come with a fixed amount of data, and the extra $10/month doesn’t buy you any extra data. The charge is merely for the privilege of connecting directly to the provider’s wireless network from a Watch.

Arguments for reasonableness concede that there is an infrastructural cost to supporting another whole device on the network. Even if the data and phone number are shared, a new standalone device exists in the world, and it demands to be catered to by the network’s services.

I am not excited about LTE on my Watch, but I decided to buy an LTE edition anyway. Because Verizon is offering three months of free service as part of a sale promotion, I also decided I will give ubiquitous Watch connectivity a shot. Who knows? Maybe I’ll love it.

One thing that caught my eye during the checkout process was the fact that my Apple Watch has already been assigned a phone number of its own. Even though it will be configured in Verizon’s system to share my phone’s phone number, their process for activating and supporting devices on their network apparently requires assigning them a phone number. I don’t know if this is true of all carriers worldwide, or if this is a peculiarity of American systems, or of Verizon in particular.

In any case, I thought it was interesting that my Watch will have its own phone number, even if it goes unused. Longer term, I could see merit in configuring Watches to be the only device for a phone number. For example, a work phone at a company that communicates primarily by voice might be satisfied to equip their employees with a Watch and a pair of headphones.

I also think the fact my Watch will have its own phone number increases the justification for charging a nominal monthly fee. For as long as any Apple Watch is on Verizon’s network, a full-fledged US phone number will be “off the market,” so to speak. In most respects that matter to Verizon, the Apple Watch is not an add-on accessory to the iPhone that happens to want independent access to the network. The Watch is a phone.

Apple Watch Series 3

When Apple introduced the Apple Watch three years ago, orders were almost immediately backordered. Apple made a special offer to developers, granting us the opportunity to order a 42mm Sport edition with a blue strap, with minimal delay. I jumped at the chance and have been wearing the same “Series 0” ever since.

I’ve come to appreciate Apple Watch for all the ways it extends my iPhone: less intrusive notifications, casual Siri access, and effortless Apple Pay. I also appreciate the fitness monitoring, and have switched to using it as my exclusive running watch, in spite of its lack of GPS. It’s a pretty darned good debut product, and it has served me well.

That said, I dropped and cracked the screen over a year ago. With repair costs approaching the cost of replacement, I have long thought that I would hold out for the next big update before buying a new one. As I watched Apple introduce the Apple Watch Series 3 during their event last week, I knew that the time had come to upgrade.

Selecting a replacement has been more difficult than I expected. I always slightly regretted not getting the smaller, 38mm version of the watch, but I think I will err on the side of fat-fingered tappability and stick with 42mm. A harder decision has been choosing between the LTE Cellular version of the Watch, and the slightly cheaper WiFi/GPS-only model.

I thought it would be easy, because I don’t care about LTE. Or at least, I don’t think I do. Since I got in the habit of running with a belt, I’m accustomed to having my iPhone with me all the time. This ever-so-slight encumbrance has brought with it two unexpected benefits: I feel safer, knowing that I can always (in most locales) make an emergency phone call, and I feel empowered to take photos mid-run when something particularly interesting catches my eye. This has come in handy when jogging in foreign countries, through nature, or when I want to capture a selfie while running in a New England blizzard.

The LTE Watch certainly would provide the same emergency calling comfort, but am I willing to give up access to a camera for the freedom from wearing a running belt? I suspect not.

Nonetheless, I’ve decided to go for the LTE edition. Why? For one thing, apart from the option to add a cellular plan, the LTE models also feature twice the storage. I tend to err on the side of extra capacity, so even if LTE were not an option, I would probably choose to pay $70 for this alone.

Sweetening the deal, Apple offers configurations with the LTE models that are not available with the GPS version. After reading Serenity Caldwell’s iMore article about the merits of the Sport Loop, I’m convinced I’ll want to give this a try. Choosing the LTE model means I can preconfigure the Watch with it, instead of paying extra for the Sport Loop, and getting another rubber Sport Band that I’ll never use. (I’ve been loyal to the Nylon Band since they were introduced.)

In short, even if I never use the LTE functionality, the LTE model is the right choice for me. Who knows, maybe I’ll end up trying the cellular access, and it will be a big hit. Maybe I’ll cast my running belt aside, and not worry about lost photo-taking opportunities. Maybe LTE on my wrist will be a revelation, and I’ll laugh at myself for ever having doubted its usefulness. Maybe I’ll come around.

The only downside is that gaudy red crown.

Update: If you’re in the US and a Verizon customer, they’re offering to waive the activation fee and give 3 months of free service, but only if you buy the Apple Watch from them. Their site is a mess but you can get at most of the models here. Good news is their ship date for the model I chose is a few weeks ahead of Apple’s!

Multilingual Completion

At times I’ve been frustrated that when I’m trying to type a Spanish word on my iPhone, I’m only offered completions in English. For example, if I wanted to type the Spanish word for ostrich, avestruz:

NewImage

It finally occurred to me that I could add a Spanish keyboard to my Keyboard settings:

IMG 2574

Now, when I’m in an app or on a web site where I’m likely to type in Spanish, I can easily change the keyboard and get Spanish-language completions.

It gets better: if a second-language keyboard such as Spanish is merely enabled, it affects the keyboard completion behavior such that completions from either your first or second language is included. Here I am typing “aves” in the English keyboard, but completion is smart enough to infer that I’m looking for “avestruz”:

IMG 2575

I had hoped that iOS’s willingness to cross language barriers might also apply to Siri dictation, but alas no. “All these truths” is the closest it can muster when I speak “avestruz”:

IMG 2570

However, having the Spanish keyboard at hand means I can quickly switch keyboards and dictate as expected:

IMG 2572

If you find yourself frequently typing a foreign-language word and hoping for some help from your phone, be sure to install a keyboard for the language so that iOS knows you’re interested in its suggestions!

$40 Box Lunch

I’ve been hearing all about how the famously atrocious (though some beg to differ) box lunches served at WWDC for the past several years probably cost about $40 each. The discussion on the Accidental Tech Podcast is based on a 2010 article, cited by David Carlton on Twitter, in which the Game Developer Conference organizer Meggan Scavio explains that she would offer a $200 cheaper ticket for folks who wanted to opt out of lunch.

Conventional wisdom suggests that in venues like Moscone West, companies like Apple are forced to use the in-house caterers, and thus required to put up not only with the quality of the food that is offered, but with the price as well. I decided to do some shallow digging, and confirmed that Moscone West does in fact forbid exhibitors from bringing in their own food and drink. In fact the Catering FAQ for the exclusive caterer, Savor SMG, consists of just one question:

May we bring in our own food and beverage booth give-aways? i.e., espresso, candy bars, bottled water?

Savor SMG is the exclusive provider of all food and beverage for the Moscone Center and is pleased to be able to work with all requests. Please contact your Catering Exhibitor Sales Manager for all requests.

As for the price, is it really $40? Savor SMG’s 2017 menu confirms that the price is in the right ballpark. The “Executive Box Lunch” is $39.25 and sounds about like what I remember from WWDC:

Four compartment. Includes compostable service. 25 guest minimum.
Sandwich, wrap or entrée salad includes a choice of side salad, dessert and fruit.
To accompany your box lunches, we suggest adding assorted soft drinks and bottled water.

Soft drinks and water are not included. A 22% service fee, as well as sales tax (almost 10%), are also added to the price. So that $39.25 box lunch comes to around $52 before beverages. On Accidental Tech Podcast they suggested it was probably more than $40 by now, and it sounds like they are right.

Want to really lose your lunch? Each bottled water is $5.25, coming to $7.00 after service and taxes. And Marco’s long lost Strawberry C Monster Odwalla (“Assorted Juices”) would set Apple back around $8 a bottle. Add it all up and it’s not hard to imagine meals and snacks coming to $100 a day, or $500 for the week, per person. Nearly a third of the $1600 WWDC admission fee likely pays for food.

In San Jose, Apple will be free from the rigorous Moscone West catering restrictions, but will have to contend with another exclusive caterer in TeamSanJose. They also add a flat 22% service fee, as well as sales tax (8.75%). I don’t know how their box lunches compare, but the good news is the “Gourmet Box Lunch” comes in at only $22.00. “Mineral Waters, Soft Drinks, Juices and Bottled Water” are all a mere $4.50 each. These savings multiplied over 5000 or more staff and attendees should work out to a substantial savings for Apple.

S is for Sandboxed

Today Microsoft announced their forthcoming Windows 10 S operating system which is being framed, by the press at least, as a competitor to Google’s Chrome OS.

Notably, Windows 10 S will only allow users to install applications from the Windows Store. As with Apple’s app stores, Windows Store applications are “sandboxed” to prevent them from accessing data from other applications on a device. While sandboxing is seen by many as a welcome security protection, it also rules out many types applications that require more sophisticated interaction with user data across multiple applications.

Users who want or need to install applications from outside the Windows Store will be able to pay $50 to sidegrade to Windows 10 Pro. I use the word sidegrade specifically because, as Business Insider quotes, Microsoft “can’t guarantee you’ll get the improved battery life and performance” that they promise with Windows 10 S.

The $50 charge to escape the Windows Store doesn’t sit right with John Gruber:

But charging $50 for this feels like a shakedown. Imagine if Apple charged $50 to toggle the setting in the Security pane of System Prefs to allow the use of apps from outside the App Store.

On the face of it, I agree with this reaction. If you look at the $50 strictly as a fee to “unlock” an otherwise more powerful Windows 10 S machine, it does feel like a shakedown. But my reading of the $50 offer is much more dramatic than a simple “unlocking.” Users who choose to pay the $50 will also be opting in to a substantially different operating system. One with different battery usage, performance metrics, and perhaps other feature deviations from the default Windows 10 S software that Microsoft recommends for these devices. You get, and lose, what you pay for.

Another alluring aspect to the Windows 10 S lineup is that the most affordable computers will sell for as little as $189. While my understanding is that these computers are licensed, and not manufactured by Microsoft, I wonder if the cutthroat pricing represents a compromise on Microsoft’s part. To allow for computers this cheap, the OEM price for Windows 10 S must be effectively $0. Separately, Microsoft is offering the operating system as a free update to schools that want to update older Windows computers.

A $0 operating system that stands to earn ongoing Windows Store sales commissions is a slightly different proposition than one that enables users to install software from third party sources. With no other option, most users are bound to purchase something from the Windows Store, generating a modest profit for Microsoft. The $50 price for upgrading to Windows 10 Pro could be the amount of money that Microsoft deems necessary to cover its losses, on average, for effectively licensing its software for free to owners of millions of computers on which it will otherwise make no profit.