The other day, Federico asked about why people use web services such as IFTTT. I have a few of these that I use frequently, but the geekiest one is this: controlling my Mac with my car.
More specifically, when I turn my car’s ignition on or off in the parking lot at my office, Automatic triggers an IFTTT recipe, creating a text file in a special Dropbox folder which is monitored by launchd and runs a shell script depending on which file is created.
It sounds more complicated than it is. No, really.
Released by a small team of indies in December 2014, Workflow reinvented iOS automation. Combining an interface reminiscent of Apple's Automator for OS X with easy access to native iOS features such as Safari, the photo library, and iOS 8 extensions, Workflow promised to make automating tasks on an iPhone and iPad a simple and pleasant affair. The results spoke for themselves: Apple selected Workflow as Editor's Choice, the app trended for weeks in the App Store's Top Charts, and thousands of users released interesting and useful workflows in various online communities. MacStories readers may remember that Workflow was my iPad app of the year.
Workflow is one of those few apps that have dramatically changed how I work on my iPad. For me, the point of using Workflow isn't to put together chains of actions to show off the app's power – I just want to save time I can spend doing something else. While I have fun experimenting with Workflow and understanding its capabilities, ultimately the app just sits there in the background, waiting for me to call a series of actions I need. I love Workflow the most when it's summoned for those two seconds and it does something magic that would have normally required minutes of manual interaction. Things like appending links to Evernote, converting spreadsheets to Markdown tables, or adding text to the clipboard.
Workflow fits my routine like a glove. I've used it every day to automate aspects of my work that speed up how I write and communicate on my iOS devices. And with Workflow 1.1, released today on the App Store, its developers are further expanding the app's capabilities with powerful new functionality that includes filtering, better conditionals and image manipulation, URL expansion and deeper calendar access, and even the ability to open multiple links at once in a web browser.
Version 1.1 of Workflow includes over 50 new actions and dozens of fixes, improvements, and changes to existing actions. Core parts of the app have been revised for a faster experience and the foundation laid with the Content Graph has started to pay off with the addition of metadata and filters. Because I've been playing around with Workflow 1.1 since the app's original release two months ago, I'm going to offer some practical examples with a high-level overview of the changes.
I've been thinking a lot about web automation and whether I should keep investing time and money into IFTTT and Zapier when I can't seem to find problems that need to be fixed. For years, I fiddled with web automation, recipes, and connecting services together, but I've never really relied on web automation and I feel like I experimented with it because I liked the idea on principle.
This is a proof of concept that I put together out of curiosity today, and it'll likely break for some documents or Microsoft Excel, but it's been working well for me, and I thought I'd share it.
I created a workflow that converts colums/rows copied from spreadsheets in Numbers and Google Sheets to a MultiMarkdown table.
If you do any sort of note-taking or writing on iOS, you probably find yourself wishing you'd be able to copy separate bits of text in the clipboard simultaneously. While that's still not possible because the iOS clipboard only supports one entry at a time, the process can be sped up with Workflow.
A few weeks ago, I wrote about how I was looking for an extension to append links to an existing note through the system share sheet. I eventually downloaded NoteBox, which has an iOS 8 extension that can quickly capture any string of text and that has a merge feature to collect separate notes into a single one. That wasn't perfect, but it allowed me to collect dozens of tweets and prepare them for a blog post on MacStories in just a couple of minutes.
With Workflow, I came up with a better system that uses extensions and the ability to append text to the iOS clipboard. This is the workflow I use, which does three simple things:
- Receives input (text) from the Workflow action extension;
- Adds the input to your existing clipboard;
- Updates the system clipboard with the added input text.
In practice, this means that, using any app capable of showing the share sheet, you can add some text to your clipboard as a new line without convoluted steps of manual copy & paste. Want to add some tweets to a link you copied? In Twitterrific, run the workflow on those tweets and they will be added to the clipboard. Multiple links in Safari or RSS? Copy the first one as you'd normally do, then add more through the workflow. You won't have to manually merge the contents of the clipboard as long as you use the Workflow action extension to append text.
I'm using this workflow every day to end up with a clipboard that contains multiple links, email addresses, or generic strings of text, and it's been a great timesaver. You can download the workflow here.
In the years I've spent covering iOS automation, I've often asked for a mobile version of Automator. Workflow, released today, tries to bring the deep system integration of Apple's OS X utility to the iPhone and iPad, taking advantage of extensions in iOS 8 to make its automation features ubiquitous and compatible with any app.
Since JXA is so new, there obviously was not much information to go by. I've never gotten around to learning AppleScript, so articles based on the classic OS X automation language were not much help either, although I’m not sure how much they would apply anyway. The result was quite a few wasted hours trying to figure out some of the most basic parts of JXA, such as proper syntax of method calls, which method calls worked with which apps, and how to identify UI Elements in order to trigger them with UI automation. Eventually I was able to figure these things out, so now I'm back to share what I learned.
The headline making news of OS X 10.10 Yosemite, released yesterday as a free update on the Mac App Store, is that it brings an extensive UI overhaul, modernizing the look of Apple’s desktop operating system to fit in with the design language pioneered by iOS 7. This is a great change, and maybe would have been enough to satisfy the average Mac user, but if you’re reading further into this article than the title, chances are you’re looking for a little more than a surface adjustment. Thankfully, Apple was kind enough to oblige.
OS X Yosemite introduces a series of interesting and useful changes under the hood, particularly in the category of automation. The first of these is the addition of extensions to the Mac. Yes, those extensions. If you have a device running iOS 8, you already know what extensions are, and extensions on the Mac are built on the exact same concept of extending the functionality and content of your individual apps out across the entire operating system. Although the idea is the same, extensions on the Mac are a bit different in their implementation due to the fact that the restrictions and capabilities of the operating system are not the same as those of iOS.
Drafts is one of my all-time favorite apps on iOS, not only for its amazing utility, but also because it was the app that got me started writing about technology, so it has a special place in my heart. However, surveying what the app has looked like since its last big update over a year ago, it’s been clear to me that an unchanged Drafts would stagnate in the post-iOS 8 world. In the face of new methods of inter-app communication such as extensions, documents pickers, and widgets, surviving on URL scheme-based utilities alone would likely not be enough to keep Drafts relevant.