First drafts aren’t meant to be good, they’re meant to be a starting point. Sometimes we see “first drafts” released into the wild and we think “Wow, that’s a terrible idea.” Sometimes we see them and think “That could be great.” Flashlight is an example of the latter. Late last year, it was released as a beta which even its developer described as a “terrible hack.” But the idea was great, and I remember thinking: “Imagine if Spotlight could do all of these things.”
Today, Flashlight is being released as a 1.0, with much more polish, and much less of that first-draft smell. It’s also free and open source. It extends Spotlight to do a bunch of different things (there’s a list below) but even more importantly it offers an API for others who want to hook into Flashlight’s power to do new and different things. Its plugin system also means that you can disable features that you don’t want or won’t use.
Here’s a quick (and incomplete) list of what Flashlight can do with its built-in plugins, to give you a sense of its abilities: start a call (FaceTime or regular, assuming your iPhone is connected); search Wikipedia, do a quick web search, do an “I’m Feeling Lucky” search, search Wolfram|Alpha, search Amazon, DuckDuckGo, Twitter, Flickr, Google images, animated GIFs, IMDB, torrents, Netflix, YouTube, Spotify, Evernote, and more; check the weather; add a calendar event or reminder with basic “natural language” parsing; eject disks, shutdown/restart/logout/sleep/lock your Mac, or start the screensaver; send an email or SMS; check the spelling of a word; reveal files in Finder; email files from the Finder; turn WiFi and Bluetooth on/off; insert emojis; speak text; fast post to Twitter or Slack; create a new note from the clipboard; copy Finder paths, kill processes; empty the trash; show or hide desktop icons.
Did I mention there’s more? Because there’s more, but you get the idea.
If this sounds similar to LaunchBar or Alfred, you’re right. Power users will find things that those apps can do that Flashlight can’t. Other users will find that they can get by with Flashlight instead. Many people (myself included) will probably keep using Alfred (or LaunchBar) and Flashlight. (I’ve lost track of the number of times I’ve started typing something into Spotlight in Yosemite, thinking that I was typing it into Alfred because I had absent-mindedly triggered the wrong keyboard shortcut. Now, chances are much better that it will work in Spotlight, rather than having to switch to Alfred.)
I spoke with Nate Parrott, who has been the main developer behind Flashlight, and he had this to say.
Tens of thousands of people have downloaded the app since it was launched as a “terrible hack” on GitHub in November. People really liked it, so I (and many other contributors) have continued working on it. We’ve made it faster, added more natural-language-processing smarts, added the ability to create calendar events, start calls, and a lot more Siri-type stuff — most importantly, we’ve got over 160 plugins online.
Flashlight is still a “hack” in the sense that it hooks into the system without using undocumented APIs. Dropbox did similarly “hacky” stuff with OS X until very recently — it’s just a matter of polishing the code-injection process and testing it widely (which the community has done a fantastic job with). 1.0 works well because it’s had a huge open beta.
Since the initial release back in November, I’ve put a lot of work into making Flashlight a more mature platform — building out the infrastructure and UI for installing plugins, building an API that lets developers do what they need, and documenting and supporting all that. I’ve also worked on a bunch of my own plugins, polishing them and building the APIs I need to make them better.
When I first saw Flashlight, I remember thinking “That looks cool, but there’s no way I’m installing that.” When I found out about the 1.0 and saw how far it had come, I decided I wanted to check it out. I’ve been using it for about a week now and it has been entirely stable for me, and I keep finding new things that it can do. While it probably will not replace Alfred for me, it will get plenty of use, and I hope that it will continue to grow in the future. I like having options.
If you want to try it but aren’t sure about it, know that you can uninstall it right from its own app menu:
So you can give it a test run, and if you find that you don’t like it for some reason, changing your mind is easy.
Flashlight 1.0 is available at flashlight.nateparrott.com.
Following up on a conversation on Twitter, I asked Nate Parrott if Flashlight used SIMBL. His response:
I actually bundle a special installation of [Easy] SIMBL inside Flashlight, which is hardcoded to only mess with the Spotlight process.
I wrote a little doc about this a long time ago — it's a bit out of date, but it's got a bit more detail.
Flashlight’s method is based on EasySIMBL, which is a newer fork of SIMBL. Having read the document that Nate wrote about this, and based on my own experience with Flashlight, I have no qualms about using Flashlight. If I start to notice problems with Finder and/or Spotlight, I might temporarily uninstall Flashlight to make sure that it isn’t the cause of it.
Another piece of relevant info is that Nate will be doing a summer internship at everyone’s favorite fruit company. His work on Flashlight apparently caught someone’s attention. He does not expect Flashlight to be officially added to OS X or Spotlight, but I think it speaks to his skills as a developer, and is part of why I’m more willing to use this app than some random piece of software that I happened to stumble across.
But, as always: YMMV, caveat emptor, use at your own risk, etc.
Anne Lamott has some great thoughts, words, and advice about “terrible” first drafts which you should read. It applies to all sorts of good ideas, not just writing. (She uses a better, slightly stronger word than “terrible” which I’m sure you can handle without being forced to recline on your fainting couch.) ↩︎
See earlier coverage: Flashlight Extends OS X Yosemite’s Spotlight with Plugins ↩︎