Yesterday, 9 to 5 Mac published an article that was obviously wrong by almost any interpretation. The problem seems to have started with numbers and the words used to describe them, but is primarily because people don’t have a sense of Apple’s size.

The article is entitled “Google pays $3 billion for default search on iOS, estimated to be bulk of Apple services business,” which is not so much a title as a topic sentence. Given that Apple released its latest quarterly financial report just a couple of weeks ago, the combination of “$3 billion” and “bulk of Apple services business” should have raised a red flag. Apple reported over $7 billion in services revenue in the last quarter alone. There’s simply no way $3 billion from Google (regardless of whether that speculative figure is right or wrong) could make up the bulk of Apple’s yearly services revenue.

I doubt it could even make up the majority of Apple’s services profit. I agree with the article that whatever Apple receives from Google for having it as the default search engine is almost pure profit.1 But Apple’s collected almost $28 billion from services over the past 12 months, and the $25 billion that didn’t come from Google surely produced a profit well above Google’s $3 billion.

So where did this nonsense come from? The CNBC report that 9 to 5 Mac links to says this:

The firm [Bernstein] believes that Google will pay Apple about $3 billion this year, up from $1 billion just three years ago, and that Google’s licensing fees make up a large bulk of Apple’s services business.

So CNBC’s “a large bulk” got turned into “the large bulk” in the body of 9 to 5 Mac’s article and then just “large bulk” in its title. I can’t fully blame 9 to 5 Mac for this: “a large bulk” is not a meaningful English phrase. “Bulk” means “the main or greater part.” You can’t have “a bulk of,” only “the bulk of.” CNBC needs a copyeditor as much as 9 to 5 Mac needs a fact checker.

By the way, Bernstein—the analysis company making the $3 billion estimate—is basing its figure on court documents (presumably from the Apple-Samsung suit) that showed Google paying Apple $1 billion in 2014. Is it reasonable to think that number would triple in three years? I wouldn’t know, I’m not an analyst. I do know that the Mozilla Foundation was making tens of millions of dollars from Google a decade ago, and that’s before mobile search took off.

One of my favorite professors used to tell us that the most important part of engineering is developing a sense of scale. As you gain experience—and you’re paying attention—you’ll come to know when a structure or a machine looks right (or wrong) for its purpose. Indeed, before engineers had decent analytical tools, that sense of scale was all we had. Anyone writing about Apple’s finances should have a sense of its scale, and should know that “$3 billion” and “bulk” almost never go together.

  1. The only expenses are portions of the salaries of the people who negotiate the deal and the software manager who makes sure a certain part of Safari’s code doesn’t get deleted. 


Another disruption in the Apple universe today, as the text editor Ulysses went from being a regular paid app to a subscription app/service. The response followed a familiar pattern:

  1. Users exhausted from trying to keep track of their other subscriptions to software and websites and podcast networks and streaming services and God-knows-what-else grumbled. (And there was at least one raised eyebrow about the elevated cost of the subscription.)
  2. Bloggers who reliably support developers wrote their usual posts about sustainability, the lack of upgrades in the App Store, and how developers need to make a living if we’re to have decent software on our devices. The text of this evergreen post would make a good TextExpander fill-in snippet—assuming you have subscription.

I don’t have a dog in this particular hunt. I don’t use Ulysses and didn’t plan to even before the pricing change. If I were a Ulysses user, I’d do my best to figure out what it’s worth to me—including the direct and (especially) indirect costs of switching to a new text editor—and try to make a rational decision based on the world as it exists now, not the world as it existed yesterday or the world as I wish it to be.

If I were interested in Ulysses but hadn’t yet given it a try, I might see the subscription service as a positive. Ulysses used to cost $45 for the Mac and $25 for iOS. Now I could give both versions a good, solid two-month trial for $10. If they don’t fit my way of working, I walk away $60 ahead and knowing exactly why I shouldn’t continue the subscription. This is the sort of in-depth knowledge you don’t typically get with the common 7- or 14-day trials.

Looked at this way, subscription software can save users money, especially for serious productivity software, which need extended use to assess their value. Of course, the savings only come if you drop the subscription, which isn’t great for developers, but hopefully they’ll make it up with people for whom their app is a good fit.

Another place where subscriptions can be a boon to users is with software you need only intermittently—a few times a year, maybe. Obviously, this works only if the developer allows short-term subscriptions, but most seem to.

Early last year, I started a subscription to Microsoft Office. I hate Office, but I needed it for a couple of projects where I was going to be getting more than a few Word documents from a client. I figured I’d drop the subscription when the project was done. Then I started working on a regular series of projects in which Excel documents were the lingua franca, and I went ahead and switched to a yearly subscription. It pains me to send any money to Microsoft, but as long as these sorts of projects continue, the $100/year is worth it.

As a counter-example, the Omni Group uses regular pricing for the iOS version of OmniGraffle. I bought it a few months ago, have tried using it on several drawings, and it just doesn’t work for me. With a Pencil on the iPad Pro, OmniGraffle should be a delight, but I’ve had to quit each drawing in frustration and switch to OmniGraffle on the Mac (which I still love) so I could finish them. I haven’t deleted OmniGraffle from my iPad yet, but I don’t expect to use it again. I could have saved some money with a short-term subscription.

Return to TextExpander

I’m back.

Sixteen months after deciding the new, subscription-based TextExpander wasn’t for me—and moving all my snippets over to Keyboard Maestro—I’ve returned to the fold. Last week, I signed up for a year’s subscription to TextExpander 6, restored my old snippets (with some reorganization), and disabled all my snippet-like macros in Keyboard Maestro.1

Disabled Keyboard Maestro snippets

I returned to TextExpander for two reasons. First, I have an iPad and want to do more writing on it. I didn’t realize how much I relied on expansions—even those that don’t run scripts—until I didn’t have them. TextExpander is the only solution that works on both the Mac and iOS. That’s the main reason, and probably the obvious one.

Update Aug 7, 2017 9:06 PM
A few people have mentioned that TypeIt4Me has both Mac and iOS versions, which is true, but I don’t know of any iOS editors that support it. As I have zero interest in using the TypeIt4Me keyboard (the same level of interest I have in using the TextExpander keyboard), I don’t see it as a practical solution.

Less obvious is the second reason: TextExpander is much better at creating new snippets than Keyboard Maestro is.2 I noticed in the past year that I haven’t been making the sort of throwaway snippets I used to make regularly in TextExpander to help me write reports that require the repeated use of technical phrases or product names. This meant more typing and more editing, because misspelled product names and inconsistent terminology kept creeping into my writing. This isn’t a knock on Keyboard Maestro—it’s a more general tool that just doesn’t have streamlined methods for creating new text substitution macros.3

Quick snippet creation from selection

After installing TextExpander, I got a pleasant surprise. There’s now a prefix setting for snippet groups, official support for something many of us TE users had been doing for years. According to the release notes, this was added in the 6.2 release in March, so my timing has worked out well. I’m experimenting with different prefixes for different types of snippet: jj for most; kk for those that enter single keyboard-type symbols, like ⌘ and ⛄️; dd for date and time stamps; and ll for LaTeX constructs. Using different prefixes for different snippet classes was always possible, but now it’s easy to change them and try out new ones.

TextExpander group settings

I’m sure there will be some friction as I readjust myself to TextExpander, but overall it’s good to be back.

  1. I’m still using Keyboard Maestro for lots of other things, just not snippets. ↩︎

  2. I’m talking about regular text snippets, here, not AppleScript or shell script snippets. ↩︎

  3. Because Keyboard Maestro is itself scriptable, I suppose I could have come up with a way to quickly define substitution macros, but I never did. ↩︎

Familiar tools

A couple of days ago, Steven Troughton-Smith put the Apple corner of Twitter in a tizzy with this:

I can confirm reports that HomePod’s firmware reveals the existence of upcoming iPhone’s infra-red face unlock in BiometricKit and elsewhere

Steve T-S (@stroughtonsmith) Jul 30 2017 9:03 PM

While it’s nice to get a glimpse into the facial recognition future of the iPhone, what I most enjoyed was the command pipeline in the second image:

strings dyld_shared_cache_arm64 | grep -i infrared | grep -i pearl

As someone who usually feels the need to defend my old-fashioned use of grep, I was delighted to see someone with impeccable wizarding credentials use it (twice in the same pipeline!) without apology. I did not look through his replies to see if there were complaints that he should have used {ack, ag, pt, ripgrep, sift, etc.}.