Providing the best possible App Store experience

by Ken Case on September 29, 2016

From the dawn of the App Store, it’s always been our goal to provide the best possible App Store experience that we can for our apps. We were there with our apps on the day the store launched, so that you could make your own choice about how you wished to purchase our software. And three years later, we finally solved the problem of offering upgrade discounts to our App Store customers, an offer which started with OmniGraffle 6 and continued through the rest of our product line.

But even with those discounts, the experience of buying our apps on the App Store still had some limitations when compared to buying directly from our own online store:

  • On our store, we offer an upgrade discount on the base price of the app. On the App Store, we had no way to discount the base price—the best we could do was charge that full price again, but offer our Pro upgrade for free.
  • On our store, we offer customers free upgrades to the next version of the app if they’ve purchased within the last 30 days. Since we couldn’t make a similar offer on the App Store, the best we could do was stop selling the app for a while (like we did with OmniPlan last summer) so that customers wouldn’t get stuck with the old app.
  • On our store, we’ve always let you try our apps for free before asking you to decide whether to buy them. On the App Store, you get charged for the app before you can download it.

All of these limitations stem from a single underlying problem: they’re all due to the fixed cost of the original download of the app. If that download didn’t have that fixed price, all of these problems would be within our power to solve.

“Well, that’s sad,” some might say. “But that’s just the way the App Store works, isn’t it? At least you do offer customers a choice to use your own store, so it’s not like they’re forced into that experience if they don’t want it.”

I guess that’s true enough, at least for our Mac apps. But it’s still not ideal. And while customers can choose to buy directly from us on Mac, our iOS customers don’t have that choice. There’s no way for them to ever try our apps before buying them (unless they’re lucky enough to visit an Apple retail store when our apps are being featured). Or to get the price protection that we try to offer all our customers. Or to get upgrade discounts on the non-Pro edition of the app.

We’ve been asking Apple to extend the App Store to support all of these capabilities, of course. And they’ve certainly made changes to the App Store over the years to offer more flexibility in the way people buy software there, even if they haven’t addressed this specific problem.

Or… have they?

The underlying problem, as noted above, is that downloading the app has a fixed cost. We’ve always set that cost to be the standard price of our app, leaving us no way to charge less. But what if we take a fresh look at this problem, and make our downloads free? You know, like every iPhone app in the Top Grossing List has already done? It’s not that they don’t sell anything—or they wouldn’t be on that list. They just don’t sell the original download. (Which we’ve never done on our own store either.)

With the original download free, we can implement any pricing options we want to offer customers through In-App Purchases. We can offer our standard unlocks of Standard and Pro, of course. But we can also offer a free 2-week trial which unlocks all of the features of Pro and Standard, letting you freely choose between them. We can offer a discounted upgrade to the new Standard. And we can offer free upgrades to the new versions to any customers who recently purchased the old app.

Well, I’m pleased to share that that’s exactly what we’re going to do—starting next month, with the App Store edition of OmniGraffle 7:

Screenshot of the In-App Purchase screen

The app is now a free download. When you first run the app, you’re asked whether you’d like to start a trial or purchase a license. But before you purchase anything, we also explain that discounted pricing is available to existing Mac App Store customers. If you check for discounts, validating your previous install, we either offer you discounted upgrade pricing (50% off) or—for recent purchasers—a completely free upgrade to the new version.

As a bonus, this free download of the app now also works as a free document viewer. You don’t have to buy anything to use the app as a document viewer; you can just dismiss the licensing dialog—in which case you’ll only be able to open documents in read-only mode. This means that our customers can send OmniGraffle documents to anyone who has a Mac, knowing that they’ll be able to download the latest OmniGraffle for free and view those documents.

This is just one small corner of what we’ve been working on for OmniGraffle 7. But I believe (and hope you’ll agree!) that this change finally lets us provide our customers with the best possible App Store experience.

iOS 10 is Here, and Omni is Ready (for Sierra, too!)

by Ken Case on September 13, 2016

Updated 2016-09-20: macOS Sierra has been released too! All of the shipping copies of our apps get cool new OS features like Universal Clipboard and Tabbed Windows automatically. For more information on app-specific updates and how OmniPresence for Mac works with the new iCloud Documents & Desktop sync feature, please see this support article.

It’s that time of year again! By now, some of you are already knee-deep in iMessage Stickers, and another large portion of you may have set up a repeating OmniFocus action to check area Apple Stores for Jet Black iPhone 7 Plus availability.

In updates that are out now, OmniGraffle, OmniPlan, and OmniOutliner are all ready for iOS 10. One of the things I’m most excited about is the ability to copy and paste between iOS 10 devices (e.g. iPhone and iPad) in all our apps using Universal Clipboard. When macOS Sierra comes out next week, you’ll be able to copy and paste between iOS and your Mac too.

OmniPlan for iOS shipped an update yesterday that supports iOS 10 (but doesn’t require it) and features App Lock—that’s the name we’re giving the ability to protect your Omni app behind a password or TouchID, to keep someone who grabs your device off your desk (be it a child or just a clumsy person) from accessing or changing your data. We’ll be bringing App Lock to all of the Omni iOS apps in the future: it’s been a popular request in all of our customer support queues and forums.

Use App Lock in OmniPlan for iOS to add a layer of protection to your projects

The Omni app that saw the biggest amount of work for this year’s new iOS release is OmniFocus. In June when we watched the WWDC Keynote we were excited to see that in watchOS 3 we’re finally able to do some of the things on Apple Watch that we’ve been wanting to do (and you’ve been asking us to do) since that device was introduced. We’ve re-written OmniFocus for Apple Watch for the third time in two years with great results: you get much-improved performance, a new extra-large complication, and an app that responds to the Digital Crown.

Performance is probably the best part of watchOS 3, but that Digital Crown part is the coolest. In the bottom row of the OmniFocus for Apple Watch home screen, where we used to display the continuity tile, we now give you the ability to flip between three options: Continuity (what we did before), a Custom Perspective (if you’ve purchased Pro), and Next Up (this is the item that we used to show in the Glance, based on selections you made in OmniFocus Settings). The fact that you can flip between the options so easily (with the Crown or a swipe up or down) means that OmniFocus gains a bunch of power without having another area of the app that needs setting up. One more thing—Glances are gone in watchOS 3, but if you add OmniFocus to Apple Watch’s dock, you can still see a summary of your day at a glance.

Rotating lower carousel in OmniFocus for Apple Watch

The OmniFocus improvements for iOS 10 aren’t limited to Apple Watch; we’ve also revamped the Today extension to add more power and flexibility. You’ll notice the most-requested change right away in the top right corner: a New Inbox Item button! That top row is rounded out by tappable summaries that take you directly to specific areas of the app. The rest of the widget shows the items you’ve chosen in OmniFocus Settings (or a Custom Perspective if you have Pro), with a cool new iOS 10 wrinkle: if you tap the Show Less button, you’ll get a single line display that lets you work through your actionable stuff one item at a time. Finally, iOS 10 adds that same compact view to the top of the 3D Touch Quick Actions, so you can peek at your next item with a force-press on the OmniFocus app icon.

The new Today extension in OmniFocus 2.17

So when can you get these updates? The OmniPlan, OmniOutliner, and OmniGraffle releases are available now in the App Store. OmniFocus 2.17 has been delayed by a day or so [update: we shipped OmniFocus 2.17 on September 20] because we’re raising the minimum OS requirement (to iOS 10) and need to sneak in one more bug fix release, 2.16.1, so that we don’t orphan customers who aren’t able to update their OS right away. If you’d like to be notified of the 2.17 release, the best thing to do is to follow @OmniFocus (or me, @kcase) on Twitter. Thanks for reading and enjoy iOS 10!

Open for Feedback: the OmniGraffle 7 Public Test

by Derek Reiff on August 9, 2016

Today we’re pulling back the cover on our next major app release: OmniGraffle 7. Inside the app wrapper are a few years’ worth of work and ideas, feature requests, and quality of life-optimizations, and we’ve been hammering on it hard for the past year. For those of you with propensity for feedback and capacity for testing, it’s ready for you right now!

OmniGraffle 7 Blog Banner linking to the preview page

How we got to 7

OmniGraffle has had success over the years by being a very powerful, customizable, and reliable app for a pretty expansive set of use cases. In more recent years we’ve gotten feedback from UX and UI folks that said their jobs (and needs) are changing. This set of users were requesting features specifically to help design for high-density screens and multiple platforms, showing interactions, working on smaller screens, and more.

OmniGraffle 7 is the first in a line of steps aimed at improving and speeding up workflows for UX and UI folks, Graphic Designers. The bulk of new features—and enhancements to older features—come by focusing on getting work done faster: less clicking, more focused tools, a polished interface.

A call for early feedback

Upgrading a tool that so many people work with every day is a big deal, and we know that any amount of time away from Actual Work is literally money. We know you’re very busy, but we want to make sure we’re getting it right as soon as possible.

So, if you end up spending just an hour or two with OmniGraffle 7 to get a feel for the future, that’s already a big help.

  • Did anything get in the way of your existing workflows? Some of these might be accidental, others might be intended but something we can correct, or completely unnecessary altogether.
  • Did anything make your daily use faster?
  • Did Action X go from slow to fast, which is great, but could be better?

And one more thing: though OmniGraffle 7 hasn’t eaten a document in several weeks, it should be assumed that bugs still exist and maybe this line won’t connect to that shape.

Seven major improvements:

  • Infinite Canvas: Though OmniGraffle 6 expands down and to the right, shifting every object on a Canvas is bothersome work. In 7, you can toggle expandability in each direction—even every direction. Set it once and OmniGraffle will make sure you have plenty of room to work.
  • SVG Support: When we first implemented SVG export in OmniGraffle, there were very few other apps that did the same, so we didn’t worry about Import. But that was before, and this is 2016. In 7 you can paste SVG code directly on to your Canvas, open as objects, and Copy As SVG.
  • Artboards: This is a big feature, and one that we want to get just right when 7.0 ships. Artboards not only fix the problem related to multi-resolution assets, but they also make organizing and moving your artwork implicit in OmniGraffle. (Artboards affect anything above them in the stack inside its bounds or overlapping—sort of like a container or group, without group behavior unless you want it. They do not have an effect on contents below.)
  • Stroke to Shape: It’s always been easy to slap down lines between shapes, but if you need more from the lines than just a stroke, shadow, or line-ending, you can convert them to shapes in 7. Once you have a shape, add a gradient or work with its Bézier points to tweak line endings!
  • Text to Shape: Though we didn’t build in a font editor, we did add a great way to style your text’s characters. When converting a set of text to a shape, you’ll have access to fill, blends, stroke—everything you use OmniGraffle for.
  • Point Editor: A brand new tool for 7, the Point Editor makes it easy to access each point on every object. Before, bounding boxes had the potential to get in the way. Now, all’s well.
  • Keyboard Shortcuts: Nothing says you’re home like knowing exactly what each key combination will get you. The most dynamic request—the feature people have the most varied opinions about—are keyboard shortcuts. In 7 you can choose your own shortcut for each and every menu bar command or setting. Have at it!

There’s more, but this post is long enough! Though each of the above are big features that enable new workflows…artboards, in our mind, are the biggest. If you give them a shake, we’re really interested in hearing how they work (or don’t) for you.

Downloading the preview

Start on our preview page. From there you can download the app and take a gander at its release notes.

If you’re interested in chatting with others, we put together a special category over on Discourse for discussions; we’ll be there, but if you really want to make sure you’re heard, email us. (And email us if you have any questions about functionality, too.)

Should I wait to buy OmniGraffle?

No! In fact, if you buy OmniGraffle 6 right now, you can keep working and get a free upgrade to OmniGraffle 7 the day it’s released — we’ll send an email with a new license key. But since we don’t yet know how to do something similar on the Mac App Store, we’ve removed it from sale. (Though 6 will continue to function and is always available in the Purchased tab.)

See you out there

Any amount of time you spend looking at OmniGraffle 7 is a huge help. To sum up: we really want to know how 7 adds or subtracts to your workflow. Love it, hate it, want it, meh: let us know! If there was ever a chance to have your voice heard, this is definitely it. Have at it!

OmniFocus Now Supports End-to-End Encryption

by Derek Reiff on August 1, 2016

“Is my data safe on the server?”

That’s a question we get occasionally from customers, and the answer has always been this:

“Communication to and from the server is encrypted using a secure HTTPS connection, just like the traffic between your computer and your online banking website. We take measures to protect our servers from outside intrusion, as we do with our own online store.” (via Omni Sync Server’s About Page)

And then we add:

“But you can also set up your own server if you’d like more control.”

There are quite a few people that do set up their own server for end-to-end control, but it takes a bit of work. Plus, anyone with access to the server would, potentially, be able to read your data.

But, with our latest updates today (OmniFocus 2.6 for Mac and OmniFocus 2.15 for iOS), your data will be completely encrypted before it leaves your device so that it’s encrypted on the server itself. We’re using your sync password to generate a key that encrypts everything as it leaves your device. All encryption and decryption happens locally, so your data is always encrypted end-to-end and our server never has access to your encryption key. (OmniFocus doesn’t encrypt the data stored on your local devices: you can use the built-in device encryption features in iOS (enabled by default) and OS X (FileVault) to encrypt your local data at rest.)

OmniFocus is the first of our apps to get this sort of encryption treatment, but it won’t be the last. We hope to get it into document-based apps quickly!

Upgrading your database

To make this level of encryption work—and for other features down the road—we needed to make some adjustments to our database format.

The releases of OmniFocus out today will periodically check to see if all of your devices are using the latest version. Once they are, you’ll be prompted to migrate to the new database format. If you’re pretty sure all devices are updated but still haven’t received a prompt, choose Migrate from the File menu on Mac or Settings on iOS to see a list of out-of-date devices.

We’re confident that we’ve thoroughly tested the process, but if you get stuck at any point in the process, feel free to email or call: 800-315-6664.

A Bit More

The guiding principle of today’s updates is that the only things which should ever have access to your OmniFocus tasks are devices you own and control: your phone, your Mac, your tablet.

There are a few other things worth remembering: no one at Omni will have the ability to look at or restore your data. Further, if you lose every single device OmniFocus is installed on and you forget your password, you should consider your OmniFocus database lost and unrecoverable.

There are more technical details for the curious: find out more on Discourse or dig into the code on github.

The technical tl;dr?

PBKDF2-SHA256, AESWRAP, AES128-CTR, HMAC-SHA256.

Finally, we didn’t just assume the design we came up with was perfect. We asked Leviathan Security, a firm that specializes in this sort of thing, to take an additional look. Here’s a link to Leviathan’s design review.

Anything else?

For iOS, the /add URL action now supports an autosave=true parameter which saves the added task without prompting. You can now restore backups  in the new Backup section of Settings. And, if you restore a new iPhone from an iCloud backup, we behave much more sensibly during your first sync.

On Mac, we’ve updated our localizations and squashed a whole lot of bugs!

As always, you can read release notes from both Mac and iOS releases.

OmniFocus for iOS Now Automation-Ready

by Derek Reiff on April 26, 2016

Today, OmniFocus gets a huge update to its automation capabilities.

In iOS, the primary way that apps talk to each other is through URLs. These are much like the URLs you enter into a web browser (in fact, you can enter these exact URLs into a web browser if you wish) and provide a mechanism for an app to transmit information to another app.

Since its launch in 2008, OmniFocus has had some useful URL Scheme actions, like add. You could use a bookmarklet in Safari on iOS to send your current page directly to OmniFocus, or use an app like Drafts to quickly turn ideas into actions. A bit later you could navigate to a special OmniFocus URL, like omnifocus:///forecast, and you’d be taken straight to your Forecast view.

Today brings much more than that! OmniFocus 2.14, now available in the App Store, focuses on two big things:

  • TaskPaper text support
  • URL scheme action additions

And we mean a whole lot of URL scheme additions! Read on.

TaskPaper Text Support

TaskPaper is an app and a plain text format for list-making. It uses tags to carry with it a few specific additions to keep track of completion, dates, and more. (And, in our case, you can use tags like @context(Home) or @repeat(1d) to specify OmniFocus data.)

So, take this Editorial workflow as an example. With the help of a bit of Python to go through your selected TaskPaper text in Editorial and prompt for variable replacement, it adds the project and its actions to OmniFocus.

An Editorial Template Workflow

Automation with URL scheme actions

Recently customers have been wanting to take advantage of automation apps like Workflow, Drafts, Pythonista, and others to quickly add new actions or projects or switch to different views inside OmniFocus.

With 2.14, OmniFocus now includes best-of-class support for callback URLs. At its simplest, this means that you can create a workflow that adds more than one item to OmniFocus. But we didn’t just add support for two-way communication between OmniFocus and other apps, we added support for automating a whole lot more of the powerful capabilities of OmniFocus.

Ken goes into the nitty gritty in a detailed Discourse post. But aside from doing the usual name and note additions, you can add estimates, attachments, dates, repetition rules, flags, and even set a project to Parallel.

Customers have already started building some interesting things with Workflow and Editorial, and more are in production!

You can add attachments to OmniFocus and plan your day in Fantastical in Workflow, convert TaskPaper text into templates in Editorial, or turn a day’s worth of ideas into inbox items with Drafts.

Sample workflows in Workflow

What does this all mean?

This is awesome stuff! For some folks, iOS is the primary platform. The ability to add new actions and reference material from different locations can make collection, automation, and as-yet-unknown use cases incredibly powerful.

Check out Inside OmniFocus for more, or OmniFocus 2.14’s release notes.

If this it that one thing you’ve been waiting for, buy it!