Archive for April 6, 2016

Wednesday, April 6, 2016

Improving the Apple Watch Without New Hardware

Tim Schmitz:

How often do you really want to send a drawing or heartbeat to someone using your watch? If you’re like me, almost never. On a device that has only two physical buttons, it certainly seems like a waste to devote one of them to a communication panel that almost always goes unused. At the very least, I’d like to see Apple let users assign that button to another function. Alternatively, it could bring up another menu (perhaps Glances?) that might be used more frequently. The same goes, at least in part, for the crown itself. Fixing the app launcher would help make it feel like clicking the crown at least opens something useful.


Ultimately, a lot of the limitations of the first Apple Watch relate to the hardware. The CPU is too slow and/or the battery too small for the watch to be as snappy and responsive as I’d like. At the same time, a few software updates can go a long way. I hope Apple has enough of an open mind about the Apple Watch as a platform to re-think some things about how it works. Even with the same limited hardware, it could be a much more useful device with a few relatively small changes.

Update (2016-04-14): Nick Heer:

The Apple Watch of today is one that I like very, very much. It fits my life and what I do every single day. […] Weirdly, I have a hard time recommending the Watch to others. It works very well for me and my life, and it might work very well for you, too, but it feels a bit like an old Italian car right now: very desirable, but something that you’d recommend cautiously.

Richard Turton:

The watch is not just a small-screened iPhone, in the same way that an iPhone is not just a small-screened Mac. The usage patterns, interactions and user intentions are completely different. No matter how great the watch hardware becomes, users are never going to want to interact with it for more than a few seconds.

Swift Libraries and Designated Requirements

Daniel Jalkut:

The problem I’m running into now, as I dabble with adding Swift-based code to MarsEdit, is the bundled Swift libraries are being signed with my app’s custom designated requirement.


The copying of Swift libraries and their subsequent signing is not only opaque to developers, but it happens after the entire user-configurable build process is done.

The custom designated requirement causes the libraries to be reported as “modified or invalid.” The workaround is to re-sign your app from a shell script, after Xcode has finished building it. I have been doing this for a long time, for other reasons, and recommend it.

What’s the Matter With PGP?

Matthew Green:

As transparent and user-friendly as the new email extensions are, they’re fundamentally just re-implementations of OpenPGP -- and non-legacy-compatible ones, too. The problem with this is that, for all the good PGP has done in the past, it’s a model of email encryption that’s fundamentally broken.

It’s time for PGP to die.

In the remainder of this post I’m going to explain why this is so, what it means for the future of email encryption, and some of the things we should do about it.

TextExpander 6 and

Maia Olson:

Smile, the developer of productivity applications for Mac, iPad and iPhone, has launched, the easy way to share snippets across a team, along with new app versions TextExpander 6 for Mac, TextExpander 4 for iPhone and iPad, and the new TextExpander for Windows beta. TextExpander keeps your snippets current on all your devices and lets you easily share and manage snippets across whole teams.

New sharing options let you share the wealth of knowledge stored in your snippets. For powerful sharing management across a team of users set up a TextExpander Organization

Greg Scown:

The key to making this all work is our new web application with secure, centralized storage. We’ve built a responsive system based on Meteor, and we’re excited to host it on Galaxy. We use the same responsive features in our apps, so your changes are reflected immediately on all of your devices. Add a snippet on one device, and it’s available on all your other devices. Share a group with someone, and it’s available on all of their devices.

Joseph Keller:

You can grab TextExpander for Mac on directly from Smile, while the new iPhone and iPad app is available now on the App Store. While both are free to download, you will need a account in order to use them.

John Voorhees:

Here’s the thing that will make the new pricing model difficult to swallow for some customers – Dropbox and iCloud sync of snippet libraries, which previously didn’t cost anything extra, are being replaced with a subscription-based sync solution with a relatively high price, and if you have a large library of snippets built over many years, they will be inaccessible unless you sign up for a subscription.

Susie Ochs:

That should work for most people, but companies can step up to the “Team” plan. That’s $9.95 per month per user, or $95.52 per year per user. The Team plan adds organizational control over which snippets are shared with whom, managing team members and permissions, and so on. Smile’s new TextExpander site makes a great case for using the service for business—you could keep customer-service responses consistent and current among multiple coworkers, share snippets of code or HTML, make sure everyone has the correct spelling of a particularly tricky name, and so on.

Jordan Merrick:

1Password’s approach to subscriptions is that it’s a value-added service. 1Password works exactly the same before, and after, Teams and Families were launched, though subscribers have access to a range of extra features and functionality.

Smile’s approach with TextExpander, however, appears heavy handed. Instead of trying to entice users with the benefits or features of their new subscription service, the company has issued an ultimatum to their userbase. A subscription is required for any future versions and there is no committment to support of TextExpander 5 and TextExpander Touch 3, should any OS updates affect functionality.

Don McAllister:

I’d have said monetise the Team option with a subscription but leave individual users with current setup for now.

Paul Haddad:

I got a feeling this won’t end well.

Jonathan Wight:

Dropping iCloud or Dropbox sync for your app means reinventing a strong security model. I don’t see Smile or DayOne hiring a security team…

TJ Luoma (via John Gruber, comments):

But is this just another case of “Users are cheap and don’t value developers’ time?” I don’t think so. […] There’s the rub for Smile and TextExpander: I don’t see anything that I really need in TextExpander version 6. I’m not using it with a “team” and my family members probably have no interest in sharing a group of text snippets with me. Yes, I realize that Smile made their own syncing service, but I have used iCloud, Dropbox, and BitTorrent Sync, and they work fine for TextExpander. Creating their own syncing service was solving a problem that I didn’t have.

Joe Cieplinski:

And that’s what makes TextExpander an interesting case. Is it “pro” software? Or is it more like a consumer product? I tend to think of it as somewhere in between.


Because I actually use TextExpander, I find myself in a position of having to evaluate this decision to go subscription-only from two different perspectives: that of a fellow developer, and that of an actual customer of the product.

Kirk McElhearn:

I really do feel bad to have to say this; I think the people at Smile are great, and they make excellent software. But I think they’ve made a big mistake, essentially increasing the price of this app by more than double.


There are a few things that took place several years ago, and it has taken developers a while to adjust to the new model.

The most significant change is that operating system upgrades are now free and they come out every year. OSX upgrades used to cost $50-$100 dollars and they only were released ever few years. This meant that most people would remain on the same OS for 5 years or more. With that model, a developer could develop an app and sell that app for years without too much maintenance work. Aside from that, it was generally understood that you would need to purchase an upgrade for that app if and when you ever did upgrade your OS.


The only problem with the subscription model is … you end up paying the developer before they produce something. With a normal perpetual license, you get to decide if the new version is worthy of investment before you purchase the license.


Whether a subscription works or not really depends on the app. Microsoft and Adobe can force subs on their users because there users will not/can not risk millions of legacy files by moving to something else.

Now, will an app that handles text snippets have the same kind of hold on its user base, or will their customers simply move to something else?

Dr. Drang:

Overall, the balance was in favor of keeping TextExpander. Until today’s announcement of The New TextExpander: Snippets as a Service™. Now I’m being asked to pay more, and continuously, to subscribe to a utility that does less than another utility I already own.


So unless I discover some compelling reason to stick with the new TextExpander, at some point in the near future I’ll start exploring ways to migrate my collection of snippets over to Keyboard Maestro. I understand from Twitter that this makes me a horrible person who doesn’t want software developers to make a decent living. So be it.

David Sparks:

With all of these changes, Smile has switched TextExpander to a subscription model. I know that makes some users nervous but, frankly, I think it is a good idea. As a fan of productivity software, I’d really like the companies that make my favorite tools stay in business. In order for TextExpander to continue to get the love and attention it needs to make my life so much easier, it needs ongoing support. TextExpander is so worth it.

Katie Floyd:

There’s also another important benefit to the new model, Smile has a steady revenue stream with which to continue development of their products. If you take a look at the company’s “About Us” page, you’ll see more than a dozen smiling faces of real people who work at Smile and depend on the revenue their apps and services generate.

Personally, I don’t like subscription models for software and I wish there was a better way. However, as someone who has used Smile’s products daily for years, I want to make sure this team is able to continue developing the products I’ve come to rely on.

Jeff Gamet:

Greg Scown from Smile Software, along with Dave Hamilton and John Martellaro, join Jeff Gamet to look at subscription software models, what benefits they can offer, and why some people oppose them.

Here are the main points, as I see them:

It’s hard to make money selling apps. I sympathize with the desire to have a recurring subscription revenue stream. More developers should probably be experimenting with different pricing models.

You can debate whether the app is worth it, but the bottom line is that the price increase is huge in percentage terms. TextExpander 4 was $35 in 2012, and there was a $20 update for TextExpander 5 in May of 2015, about three years later. Now, after less than a year, the price for a yearly subscription is $47.52. (There is a one-time, one-year 50% discount for previous customers.) So the price for three years has gone from $20 to $142.56. I have paid for a lot of apps recently, and the only ones that are in that price range are Microsoft Office, Adobe Lightroom, and TurboTax. TextExpander is a great app, but it just doesn’t feel like it’s in that league.

With Microsoft and Adobe, it takes multiple years of subscription payments to equal the previous single payment. So it was more a change in payment model than an increase in price. And the subscription offered the benefit of never having to suddenly make a large payment.

On the iOS side, TextExpander touch 2 was $5 in 2013, and version 3 was $5 in 2014, for a total of $10 over the last 3+ years. So if you primarily care about the iOS version, the price increase is even larger.

Unlike with 1Password 6, there is no option to keep using the old Dropbox syncing method. This makes it seem like you’re getting more for your subscription, but as a prior customer I see a feature being taken away.

The new service makes it really easy to share snippets with other people, and it sounds like there are big plans for more team/collaborative features in future versions. This is really cool, but I have no personal interest in using those features. It seems like the product is being refocused for a different audience. There is essentially nothing new aside from the sharing. Some people have said that the app was essentially complete, but there are a lot of new features and refinements that I would have liked to see. Will they be added in future versions? It sure seems like the focus is going to be on the online features.

For me, the new service is actually a regression because it’s less private. I trust the folks at Smile, but as a matter of policy I don’t like to give apps network access without good reason. Before, TextExpander could run without network access, it would sync via Dropbox, and I could see all the data in the Dropbox folder. Now, you need to log into an account just to launch the app, and the app itself uploads all of your snippets to a server, which is not encrypted, even if you don’t want to sync with any other devices. Smile says that no keystroke data is uploaded, however. Furthermore, the app isn’t sandboxed (because Apple does not offer the right entitlement), so in addition to having access to everything I type it can also access every file on the Mac.

There are lots of Mac typing expansion apps. I’m not aware of any good alternatives on iOS, though. Because iOS is locked down, there is no way for a developer to write a utility like this that works in every app. (There is a keyboard extension, but to use it you have to give up Apple’s predictive keyboard as well as 3D Touch cursor movement.) Instead, Smile put a lot of effort into creating an SDK and convincing developers of popular apps to build in support for TextExpander. This is a great barrier to entry.

The subscription plan can be seen as a way to work around App Store issues. The App Store doesn’t offer trials, so the TextExpander app is now free, and you can use the TextExpander account for 30 days before paying. The App Store doesn’t offer upgrades, but the subscription lets you keep paying without the messiness of replacing the app every year, losing the ratings and reviews, and customers not knowing about the new app. Apple takes a 30% cut from apps sold in the store, but Smile handles payments directly from its own site.

It is said that customers don’t like to pay for upgrades. I wonder how much of this is because Apple has conditioned them, through the App Store and its own app and OS updates, to expect all updates to be free.

TextExpander 5 still works, but there is no commitment to offer bug fix updates for it. Long-term, it’s not a good idea to rely on an app that Apple might break with an OS update.

It’s quite possible that TextExpander will lose marketshare but increase its revenue. Smile’s technical support burden could be greatly reduced because they now control the service end-to-end.

Update (2016-04-06): Dan Ridley Hallock:

I bought TextExpander version 1 in 2006 and I’ve purchased every upgrade since then plus the iOS release, and it’s added up to $85, or about $8.50 per year on average.

Greg Scown:

For those who prefer to stay with TextExpander 5 for now, we intend to support it on El Capitan and the next major upgrade of OS X[…]

This contradicts what was reported before but is good news.

Jordan Merrick:

What I do find concerning is that the follow-up makes no mention of continued support of TextExpander touch 3 for iOS. The app has been removed from the App Store, so it seems they’ve completely dropped support for it.


It’s not certain what will happen to apps that make use of TextExpander’s SDK for snippet support, when the SDK is updated. Will snippets continue to work and sync from TextExpander touch 3, or will any updates to the SDK require the new, subscription-based app? If it’s the latter, then every time I update my apps, it could be the last time my snippets will work.

Gabe Weatherhead:

They call it a subscription model but I’m going to call it app renting. I think of a subscription as a recurring fee for ownership. When I rent, I get an access and usage permission but I get nothing to keep.


When it comes down to it, I just don’t trust every developer to be good at securing my data even if I like their apps. I look at their software and the bugs I stumble over then think about what that means for their back-end design. I wonder how they document their security roles and what their schedule is for a pen-test. How is the data treated at rest? Who has access to the database or even the connection details? When was the last time they were audited by a third party? These are things I don’t want to think about when I create a text snippet.

Update (2016-04-07): Rene Ritchie:

Expensive software isn’t a problem in a world where the average person wants or needs six apps a year. But when they want or need 60? 600? More?

Many continue to lament the loss of value in software. Yet, when developers resort to new apps or new business models, there’s a backlash. That highlights the disconnect — how does traditional software thrive in the age of pop apps?


The money issue aside, I look at how I’m being treated as a customer. And that’s the biggest place Smile is changing my opinion of them and their software

Not only did they change the model, but they removed features that competed with their new marquee feature.

Eddie Smith:

I guess what I’m saying is, what if developers are just human beings. Normal people?

John Gruber:

I’ve been loath to pile on here, because I try to be outspoken in favor of sustainable app pricing, especially for utility apps. But TextExpander was already well-priced.

Update (2016-04-08): Accidental Tech Podcast (tweet) hypothesizes that this is an intentional “firing” of the non-pro customers. One of the reasons people are upset is that, if you liked the product and were a loyal paying customer, it doesn’t feel good to essentially be told that you are no longer wanted.

Peter Cohen:

Paying for software in the same way as we pay for electricity may seem odd. Most software isn’t as essential as a cell phone or working lights, but the same rule applies for service - you should expect to pay something for its continued maintenance and development.

That is, of course, predicated on the assumption that you find that service worth paying for to begin with. If you don’t, you can vote with your wallet.

Glenn Fleishman:

This first iteration is overpriced for most users’ needs, and removing the ability to use TextExpander on a standalone basis with a less efficient personal sync doesn’t give existing customers any advantage.


The one significant change in the apps, by the way, involves both improvement and omission. A redesigned snippet editor has dropdown menus with all the special features, like inserting time-based placeholders, system keys, fill-in items, and the rest. This is a far superior interface for both new and experienced users. The editor is identical across the Mac, iOS, and web apps.

However, there’s also a step back. TextExpander for OS X used to have a split-pane view that provided a live preview as you assembled a snippet. This preview now requires a keystrokes (Command-Return), which produces a modal dialog that has to be dismissed.


I believe Smile’s approach is naive given the current security [climate].

Matt Henderson:

Today closes the book on 10 years with @textexpander, as I migrated all my snippets to @keyboardmaestro—which I’ve also used for 10 years!

That’s one of the odd things about this situation: the competing products are multi-purpose, and I already own/use most of them.

Update (2016-04-10): Allison Sheridan interviews Greg Scown (via Katie Floyd).

Dr. Drang:

A few days ago, I wrote about how the new version of TextExpander doesn’t have any compelling features for me and that I’d probably start migrating my snippets from TextExpander to Keyboard Maestro. This post describes a macro I wrote that performs some of that migration.

Peter Maurer (previously):

As hinted at a few days ago, I’m somewhat saddened by the move, as I’m not a fan of subscriptions. But! …

... I don’t know their numbers, so I try not to judge. And finally, it’s been their app much longer than mine. :)

Update (2016-04-12): Guy Ettore (son of TypeIt4Me creator Riccardo):

We don’t want anyone to misread a tight-lipped response, so here goes: our view is that Smile’s new plan constitutes a bold move, albeit not one we would consider making ourselves.


At times, yes, we’ve envied Smile’s larger talent pool and the superior resources that ultimately enabled their dev team to outpace us. All the while, we couldn’t help but doff our caps, because they’re consummate professionals and we are indebted to them for popularising text expansion. Smile cannily leveraged sponsorship and used its affiliate relationships to introduce text expansion to the mainstream at a time when we simply weren’t equipped to do so. Throughout the years they and our other friendly competitors have motivated us to keep raising our game.

Far from rubbing our hands with schadenfreude, we’re mainly a bit spooked by some of the unbridled scorn being poured on a previously well-regarded team that’s successfully marketed a solid, dependable utility for years.

Ben Elijah:

I get the feeling that Smile is trying to straddle both jobs using the same model. This feels like a mistake. I would like to propose a business plan which respects the two jobs that I hire TextExpander to perform, and generate good recurring revenue to Smile in exchange for increasing the value it offers to customers.

I’ve written new post about Smile’s announcement that they are lowering the subscription prices and committing to keep supporting TextExpander 5.

Update (2016-04-13): John Gruber:

I see some amount of risk, and no benefit, with storing my text snippets on Smile’s servers.

Brett Terpstra:

The major mistake in the announcement of the new model was a failure to explain the benefits of it, or to provide any major new features along with it that would be relevant to individual users. The touted benefit of the subscription model was group sharing, which is really an enterprise feature, and it felt like individual users were being forced to pay for something they didn’t require.

Eddie Smith:

Software is a developer’s knowledge; my data are my knowledge. Where should they be allowed to play together? The developer’s house? My house? Or some sandbox in the sky?