The other evening I decided to watch the second episode of a three part series on Alfred 2, a completely reworked Mac automation tool, at ScreenCastsOnline. I had watched the first in this series of tutorials the week before but had decided at that point the application wasn’t for me. Actually, I had never heard of the product but I’ve always found that most of what Don McAllister does, in terms of tutorials at ScreenCastsOnline, to generally be very good so it intrigued me as to what this Alfred 2 was. As I watched the first episode I quickly realized this was an automation tool that was supposedly simple to use but quite powerful in its rewrite. I’ve always been very keen about automating the Mac and I currently use three tools that I’m going to discuss in this post but my mind is always open to what’s available in this area. For some reason though the Alfred 2 software didn’t gel with me.
However, when I sat down to watch the second episode I started thinking about Mac automation in a broader sense. As I watched the tutorial I thought I can do everything I want with what I’ve got so what could possibly adding this to my toolkit do for me. Well one, it would definitely create a lot of work learning it as it didn’t strike me as that simple (not that I didn’t expend a fair bit of energy learning at least two of the three tools I’m going to discuss).
The one thing I’ll say right up front is that automating your Mac, in some fashion or another, is very beneficial and has a number of positive payoffs. I at the same time thought, by the end of this second tutorial, is it possible that we can over automate our Macs to the point where we’re no longer receiving real benefits but rather expending a lot of energy learning these tools and keeping our skills up to par to use them. In addition, rather than flowing through our activities with our automating tools at our side, we’re laboriously weighed down by such things as to which one to use in this specific scenario. Rather than achieving a level of increased productivity we end up decreasing our efficiency.
Its at this point I decided that there was a question to be asked and that was can we over automate our Macs. The tools I’m going to present have tutorials at ScreenCastsOnline for each one and the ones I use I know are the absolute best. So I decided to write Don and just pose the question to him, after outlining my specific scenario, can we over automate our Macs and the answer back was a resounding yes. Don’t do it and with that said I think I would have stopped there. However, Don did say its well worth watching episode three of Alfred 2 as it deals with a new piece of functionality which are Workflows. This is something which is of much interest to me. In fact, not my next post but the one after that is going to be on Workflow and the importance of having a sound Workflow based on a Model and tools to support the model. I’m going to come back to my conclusion later in this article but first I want to discuss the benefits of automating your Mac and how I specifically do it.
I want to emphasize that although this post started out with a question can we over automate our Macs, I am a big proponent of the value of automation and the benefits that can be obtained by utilizing good tools to do this. I don’t want to in anyway detract from the value that you might obtain from Alfred 2 either. You might find, if you explore it, that its the perfect tool for you. For me though its not and part of that is I’ve already got a great toolset that I use synergistically together that provides me with substantial advantages.
Some examples of the things you might want to automate and that will improve your overall function with your Mac are:
- launching applications
- finding files and folders quickly
- opening these files and folders anywhere you happen to be in your Mac environent without having to dig around for them in the finder
- opening websites instantly again irrespective of whether you‘re in your browser or not
- automate repetitive operations that you do over and over
- type text that you frequently use with a keystroke or two
- copy text or for that matter anything to clipboards that you can reuse time and again
- paste that text here, there and everywhere
- automate a sequence of actions that you do step by step into one command that runs that sequence
- have a web site or sites waiting for your preview at the time of day you’d like them open and ready to go
These are but a few of the things you can easily do given a bit of effort to to create a program to carry them out. This not only saves time but adds a great deal of convenience to your overall interaction with your Mac. As an example you could have your Mac run a number of activities first thing in the morning such as open web sites you want to review, run a program that requires updating (e.g. Quicken to download your days financial transactions) and turn on your music without even touching your machine. Such things ensure that you don’t forget to review important things while adding a pleasantness to the start of your day with say the music you love to listen to. Automating your Mac not only reduces the time it takes for you to carry out functions but increases your accuracy in the results of those functions carried out. In reality, you can pretty well automate anything on your Mac based on just how much effort you’re willing to expend on the simplest to the most complex tasks.
There are things though you might not want to automate as what looks good today might change tomorrow and be irrelevant. You don’t want to waste time automating something that isn’t reusable.
To Sum Up
Some of the benefits of automating your Mac will:
- save time
- increase the accuracy of your output
- reduce stress
- increase productivity as you
- get things done faster
- make operations easier overall
- one keystroke can do what would take many key and mouse clicks
The Three Tools I Use
We’ve taken a look first at a tool that’s been around for a while which though can be considered new as it is a complete rewrite of its code base. Now I’d like to discuss the tools that I use. They are, in my opinion, the best the Mac platform has to offer. There are others in each category but in my view, although some are very good these are the best.
I could use one tool to accomplish all that I do with the three but I use the following three in a synergistic fashion drawing specifically on each of their strengths:
Each of the above’s home page lists a more complete feature set and what they can do than I’ve outlined above so it’s probably worth reviewing their home pages. Even though I use all three of these tools, automation and the degree to which you go with it and what you want or need to do is a very individual thing so you might feel that just one of the tools will fit your needs the best.
A Synergistic Example
The following image is a Keyboard Maestro script, which as you can see, is not too long but it employs a synergy of tools efficiently to provide me with an overview of my daily internet bandwidth that I’ve used. This script runs automatically every morning at 6:30 am and the web page with the information I’m looking for is available for me without even touching my computer. Should I need to I’ve assigned a second hotkey trigger accessible through a palette wherein I can bring the page up at any point I want. To invoke this via the palette I simply press ctl-W for a list of web sites and activities I might want to access the I press R for the macro command that invokes the macro to retrieve my internet usage information from Rogers (my ISP).
This script draws on three tools:
- Keyboard Maestro which is the initiator and controller of the entire script
- Launchbar which Keyboard Maestro activates to run a command to pull data from
- 1Password which contains the access entry information into my Rogers account (will launch Safari and enter my userID and password)
Keyboard Maestro starts by this script by first activating Launchbar (cmd-space) and passes to Launchbar the Launchbar command I’ve trained it for to access 1Password and retrieve my user information to login to Rogers. Keyboard Maestro remains in control at all parts of the process just passing off commands and waiting till conditions are met before it moves on. Once the condition has been met that I’m logged into Rogers Keyboard Maestro will now tell Safari to go to my usage tracker information page by requesting that page by outputting the URL that I’ve captured as to where it goes and then have stored in Keyboard Maestro. Once at the page with my information the Keyboard Maestro script ends. As you can see I’ve got ten lines of code that quickly and effectively utilizes three tools to do what I want in the best possible manner.
Just as a point of comparison to exemplify my example of synergy I can get Alfred 2 or 1Password to log me into my account but I have to invoke either (opt-space for Alfred 2 or cmd-space for Launchbar) then basically type out the commands, briefly in both but more briefly in 1Password the command to go into 1Password and login to Rogers. However, now I have to click on the page I want to go to and then another click to my final destination. The results are the same but by synergistically using Keyboard Maestro as sort of command central I pull all this off either without touching the computer at 6:30 am or via a quick Hot Key sequence.
My View and Recommendation
With that said I’ll give you my view on what would probably deliver the most bang for your buck. As I said, I use each tools specific strengths in a synergistic fashion so I might not use every aspect of one tools capabilities to achieve what I want. You might though. My view would be however, if you want a tool that will do it all; that is everything I do with the three combined Keyboard Maestro is your best choice as it can do all aspects of each tool just not as nicely as a combined synergistic approach wherein your drawing on the specific strengths of the individual tools.
On the other hand, if you say choose only TextExpander, which in my opinion is the easiest to learn, you will only automate your typing by enhancing your typing speed by using abbreviations to expand on a piece of text be it short or long. Really, if you go with TextExpander I think you should also go with Launchbar. These are probably the two easiest tools of the three to learn and actually Launchbar learns from you. So the reverse is true with Launchbar. If you go with that you really need at least TextExpander to enhance your repetitive typing and improve output. However, its important to note that although Keyboard Maestro might at first blush appear difficult to learn it isn’t and it is the powerhouse in the pack.
I’ve used a macro program of some type or another for a long time and if I had to give up something it wouldn’t be my macro tool in this case Keyboard Maestro. As I said, if you did only want to use one tool its the one that can do everything the other two can do combined plus it has in addition its own unique, very powerful capabilities. As I was told by the developer its a visual programming language.
Now let’s look at these tools more carefully. However, what I’m going to do is give you broad brush view of the tool and its capabilities/benefits but I’m going to provide a link or rather refer you to the tutorials at ScreenCastsOnline that covers each tool in depth. That way you can make a very informed decision as to what you’d like to do. Once again, though I really encourage you if you have not automated your Mac or have only dabbled to do so.
Keyboard Maestro is a macro programming tool that can basically allow you to do anything with your Mac short of making it jump through hoola hoops. It is a very powerful macro programming tool that goes way beyond the capabilities of Automator. Personally, I feel it is also easier to learn and use than Automator. However, Keyboard Maestro can run Automator Workflows or Applescripts within its own script. It can invoke an Automator or Applescript routine on its own but with the advantage of doing this with a hotkey or via a pallette or it can branch off to one of these two and let them do their thing and then return to Keyboard Maestro to finish with the full script. This is very powerful as there are some things Automator and Applescript (Apple’s programming tool for the Mac end user) bring to the table that are impressive.
How I generally decide to use Keyboard Maestro is as soon as something involves more than one action then I jump to Keyboard Maestro. So, if I just want to launch an application such as mail, or simply shutdown or restart my machine I use Launchbar. However, if I want to close out all my applications before I restart my machine I use Keyboard Maestro. Launchbar can do this but it involves a variety of keystrokes. Once programmed into Keyboard Maestro a restart of the machine can be as simple as pressing ctl-R. Since I’m always seemingly restarting my machine, it is definitely something I want automated rather than reaching for the Apple menu and choosing restart.
So Keyboard Maestro provides you with a powerful macro programming language that can almost make your Mac dance. At first blush it looks complex and there is a complexity to it and so too Launchbar but I would say less so and still less so for TextExpander. Yet, once you wrap your mind around a few principles of the manner in which Keyboard Maestro operates your first macro could be as simple as launching an application or turning on a recorder that follows your every move and records your actions. So a long complex macro could actually now be reduced to a three step process:
- record what you do
- edit out commands that aren’t necessary (when you record often things will get recorded that are unnecessary but with time you’ll quickly be able to identify what’s not necessary)
- add a trigger which is simply something that initiates your script
With time you’ll find youself forgoing the recorder and just writing your scripts yourself due to the added control you have.
Talking about triggers Keyboard Maestro has numerous triggers to invoke a macro:
- palettes that allow you to pick from a kind of menu the macro you want to run
- time triggers
- login triggers
- triggers when you come out of sleep mode
- context sensitive triggers (only works in a particular application)
- and more
My two favourites are Hotkeys and Palettes. Palettes can be extremely handy if you start building up a pile of macros and are starting to run out of hotkeys. Rather, assign a hotkey to a palette group that will in itself invoke a number of macros via a keyboard command or the click of your mouse.
Finally Keyboard Maestro provides a:
- clipboard manager to capture saved stuff to multiple clipboards
- a TextExpansion capability
To get a better picture of Keyboard Maestro see Concentrate & Keyboard Maestro at ScreenCastsOnline (note this is a two part show so you can skip the tutorial on Concentrate and jump straight to Keyboard Maestro). To see any show I’m going to refer you to at ScreenCastsOnline its important to mention you need to be a member to watch the entire show although the odd one is free.
This has to one of my favourite utilities. It can’t replace Keyboard Maestro for me but I love it. Launchbar is exactly what its name would indicate but it is a way more than that. It is this way more than that though that does reaquire, once again, a bit of a desire to venture out and learn what’s there and how to use it. Unfortunately, although the documentation is visually very pleasing I don’t find it as effective as it could be in explaining how to use the program or its functions.
At Launchbar’s most fundamental level its a tool that let’s you launch:
- URL sites
It has an amazing capability in that it learns from what you do. So, if you type SAF for Safari and scroll in the list of found items to Safari and launch it the next time you type SAF Safari will be at the top of the list and now you just need hit enter. You can train Launchbar to do all your fundamental launching or activities.
Launchbar is also a clipboard manager so it has some overlap with Keyboard Maestro. In this case, if you have both as I do just choose which one you prefer and stick with that. You can send information between applications using instant send and even move files and folders around all without going near the finder. You can carry out general Google searches no matter where you are or what you’re doing. You can search your contacts, open their information card, display their telephone # in large text on your screen or send them an email directly all by making a couple of simple choices from within Launchbar.
It really does a tremoundous number of things. One can get very dependent on this application quite quickly but to tap into all its resources does again take a bit of commitment in learning time to reap the rewards. Once done, things you do in Launchbar become very second nature and you‘ll wonder how you ever did without it.
TextExpander does exactly what it says it does; it expands text snippets from short abbreviations. If you type something over and over again it is a real time saver while reducing the tedium that goes with having to constantly type the same thing time and time again. In addition to running on the Mac, it runs on the iPhone and iPad and syncs so that snippets created in one spot can be used in another. There are more and more IOS applications that support TextExpander although many still don’t. Of the bunch, this is the easiest to learn but no less important than any of the others in your automation arsenal.
Again to see a complete view of TextExpander and its operation see TextExpander at ScreenCastsOnline.
The Automated Mac
So that’s my choice of tools to automate my Mac. Used in a synergistic fashion I’m getting the best out of a variety of tools and their individual strengths. Automating your Mac though is not a one shoe fits all size. This is my approach to get the most from my Mac and I like what it can do. You might though like the above mix or some combination thereof or Alfred 2 might be right up your alley. I’d definitely check them all out. The links I have provided you with are a great source of reference but certainly not exhaustive, to see what the tools look like and to see them in action. You’ll also find out how to use them and what’s required to learn them. I find by and large that I have to read an article and potentially see a show on the tool to determine whether it appeals to me. Sometimes, at first blush, what appeared as overly complex often looks quite different when I revisit the show after actually having worked with the tool. Watching say a tutorial a second time after having worked with the tool for a while is of a completely different nature. No longer does it seem so foreign and I’m now able to truly appreciate what I’m being taught and pick up new skills that I hadn’t tapped in to all as part of the learning process.
Don’t be put off though if anything looks overly complex. Yet, at the same time go with what you feel looks beneficial to you and don’t worry so much about its complexity. You will be able to tell if its spot on in terms of what it is you’d like to accomplish and thus worth the effort to learn the tool. If its a good tool the upside benefits will outweigh the downside drag. Do automate as you’ll find this a very rewarding exercise. However, beware of over automating as its easy to get carried away with the slew of tools available for the Mac. This will wreck any positive experience you could have by automating your Mac and there’s a lot to be had.