Goodbye, Mac

Goodbye, Mac

Today sees the release of iOS 11, so it seems fitting that it's also my last day as a Mac owner. My Late 2012 13" Retina MacBook Pro has been erased and boxed up, ready to ship to Apple for recycling. I'll even get about $450 from the Apple Renew program, money which won't go towards a replacement.

The iPad has been my personal computer for a couple years now. During the early days, I would occasionally need to use my Mac to do things that I couldn't do (or hadn't yet figured out how to do) with iOS alone. But as iOS and its ecosystem of apps further improved and became more powerful, that need diminished. Once I upgraded to an iPad Pro, became an expert with apps like Workflow, and set up an iPad approach to blogging and web development using Coda and Working Copy, the writing was on the wall.

While using the iOS 11 public beta, I realized that I hadn't used my Mac in months. It spent its summer under a pile of papers in a desk drawer. I tried to think of reasons to keep it, but nothing compelling came to mind. In fact, the only task I can't use my iPad for is to update my Logitech Harmony remote control. However, I still have a gaming PC and can just use that instead.

A part of me has known this for a while, but I kept the Mac around as a security blanket in much the same way that some people keep old cables for devices they no longer own, just on the off chance that they might somehow be useful again. I'm not ruling out the possibility of owning another Mac in the future, but unless Apple ceases development of the iPad and iOS, I can't see myself switching back.

Workflow Directory Is Now on GitHub

In December 2016, I announced that I'd no longer be updating Workflow Directory. The Workflow team had made some great improvements to the gallery, the biggest of which was user submissions. At the time, it didn't make sense to continue working on the site when the built-in feature was so much better.

Fast forward to March 2017 and the news broke that Apple had acquired Workflow. While the app continues to be updated, the gallery is not accepting user submissions. Since then, I had often wondered if it'd make sense to reopen Workflow Directory.

So I've decided to do just that, but in the process I've made a fundamental change. After testing the waters last week with a similar endeavor, Workflow Directory into a GitHub repository. Existing workflows have been migrated (with the exception of a few that are non-functional) and I've added a few new ones too. Each workflow has an accompanying README containing a description.

If you're unfamiliar with Git, don't fret. Browsing the repository and downloading workflows is essentially the same experience as before, you're just doing it through GitHub's web interface. There's even a new Submit to Workflow Directory workflow if you want to create a submission1.

For those of you that do know Git, you can clone or fork the repository (I recommend the awesome Working Copy for iOS) and you're more than welcome to submit pull requests for submissions (in fact, I'd prefer it!)

Moving to GitHub provides some much needed flexibility. Unlike the previous website, the repository hosts actual workflow files. Should Workflow ever lose the ability to share workflows using workflow.is links, the repository isn't affected (unlike the old website). It also means that I can have others help out with submission reviews. The drawback of the migration is that the existing RSS feeds for Workflow Directory are no longer available, though you can follow the repository so you're notified of new updates. The Twitter account will still be active and posting updates though.

Check out the GitHub repository and I look forward to receiving your submissions!

  1. The submission workflow files an issue within the repository that will be actioned when the next batch of updates are made.

GitHub Repository of My Workflows

Workflows can be shared either by creating a workflow.is link or exported as a .wflow file using "Share as File". Using the latter option, I've set up a GitHub repository of workflows that I've created. I'll be regularly adding to the repository so it's a handy way to always have a copy of the workflows I create.

You can quickly clone the repository using an app like Working Copy (one of my favorite iOS apps). You don't need to be familiar with Git to do this or even have a GitHub account.

Alternatively, you can simply download a ZIP archive of all the workflows. I'd recommend cloning the repository as you can easily keep it updated whenever I add new workflows.

Device-Framed Screenshots in Workflow Redux

It's been almost two years since I made a workflow to create device-framed screenshots. Since then, Workflow added an Overlay Image action that allows users to place one image on top of another, making the need to slice up device images redundant. I figured that those wanting to create device-framed screenshots would eventually use this as a replacement for my workflow.

Nonetheless, the original workflow proved to be quite popular and I still get asked about it from time to time. Just last week, I helped someone on Twitter who was having trouble using the old workflow. I've now created a replacement action extension workflow that uses Overlay Image to generate device-framed screenshots for iPhone, iPad, iPhone SE, and Apple Watch.

Device-framed screenshot for Apple Watch

Unlike the old one, this workflow doesn't need you to download image assets manually. The workflow operates as an action extension for images, but if you run it from within Workflow it will automatically download the image assets and save them to iCloud Drive for you.

Run the workflow from within the app to install the device images it needs

The workflow also automatically detects orientation and provides either portrait or landscape device-framed screenshots (excluding Apple Watch).

Device-framed screenshot for iPad

To correctly place the screenshot within the device, the following measurements were taken for each device image1:

  • Height and width of the screen area
  • X and Y distance of the top-left corner of the screen area from the edge of the image (where the image is to be positioned)

When the workflow is run and a device chosen, Workflow resizes the screenshot to the dimensions of the screen area. It then overlays it onto the device image at the appropriate coordinates so as to completely cover the screen area.

This workflow becomes especially useful when coupled with the new screenshot process in iOS 11. Instead of just saving a screenshot to the Camera Roll, iOS now provides an option for annotating and sharing a screenshot before deciding whether to save it. This means you can create a screenshot, annotate it (if needed), then share it and use the workflow to create a device imageā€”all as part of one process. You can then discard the original screenshot without needing to save it.

Annotating screenshots in iOS 11

For use on the web, I highly recommend using my Optimize Image workflow to reduce the file size of the resulting PNG image. You can add a Run Workflow action at the very end of this workflow to pass the image directly into Optimize Image workflow, providing a single process for generating and optimizing device-framed screenshots.

Run workflow

This workflow only includes one color of device (Space Gray), so consider it a starting point for further customization. You can easily add more devices or colors by customizing the workflow and using the same process for all other devices.

  1. I used the Crop tool in Pixelmator to get these dimensions. I'm almost certain there's a better way of doing this, but it worked fine for what I needed.

Reverse Image Search With TinEye and Workflow

Social media is a wretched hive of misinformation at times and it happens because we take a lot of what we see at face value. This is exploited by those who would make false or greatly exaggerated claims, such as people who want to be internet famous or who are trying to push their political or prejudiced opinions onto others. A popular tactic for this is to make an unsubstantiated claim (or lie) and find an existing photo somewhere online (e.g., Getty Images) that fits their false narrative.

TinEye is a reverse image search engine and a superb resource for separating fact from fiction. You provide it with an image (either upload one or via URL) and TinEye can find web pages that also use it, even if it has been modified. For iOS users, I've created two workflows that makes it easy to search for an image using TinEye. Both workflows require the use of a Dropbox account.

TinEye Photo is an action extension that accepts an image and temporarily stores it in your Dropbox folder. A public URL for the image is created and used as a TinEye search. Once you've seen the results, the workflow deletes the file from Dropbox.

The second workflow is TinEye URL, an action extension that accepts URLs. It gets the content of the URL, finds all images over 300px wide, and presents them all in a list for selection. The rest of the workflow is then the same as TinEye Photo.