Stand with Ukraine. Donate via the National Bank.

You're using function keys wrong

Like many others, I was very upset when Apple decided to replace function keys with the touch bar. But I also have a good reason to think I was upset quite a bit more than that average upset person: for years, those F-keys have been powering what I call my best productivity trick. This trick seems so obvious to me that I’m pretty surprised I haven’t heard of anybody else doing it.

How often, during the day, do you reach for an F-key? If you do that for adjusting screen brightness or pausing a song, I can assure you there’s a much better use for those. But even if you already went to the MacOS settings and flipped that toggle to make them behave as “standard function keys” (since some apps might make use of them), hear me out.

Here are the types of apps I’m using constantly as a freelance web developer:

  • A terminal
  • A browser
  • A note taking app
  • A private messenger (e.g. Telegram)
  • A work messenger (e.g. Slack)
  • An offline documentation app (e.g. Dash)
  • An email client
  • A music app (e.g. Spotify)
  • A database GUI app
  • A todo app
  • A time tracking app
  • A file explorer (Finder)

While working, I’m constantly switching between such apps, probably hundreds of times a day - and so do you, I assume. How do you do that? Do you Cmd+Tab? Is it up to an app launcher such as Spotlight or Alfred? Maybe some fancy shortcuts involving 2-3 modifier keys? Clicking an icon in the Dock, even?

So, here’s the trick: assign each of your top-12 most used apps to an F-key. In a minute I’ll tell you how to do that, but first let’s discuss what you’ll get:

  • Once you remember that F1 is a terminal, and F7, say, an email client (trust me, that learning happens very fast), you’ll feel like a skilled sniper hitting the target by opening exactly the app that you need at any given moment, with a single key-press. Blazingly fast, no cognitive overhead.
  • Unhappy with the currently used terminal? Decided to switch to iTerm, or maybe feel like experimenting with Kitty or Alacritty for a week or so? Just reassign them to your terminal F-key, and you don’t need to remember what exact terminal you’re currently using. Similarly, rotate browsers, email clients, todo apps, etc. No need to get accustomed to the new app’s name and/or icon. It’s just the same F-key, for decades to come.
  • If you were dependant on the Dock, you may now try to hide it by default, as you’ll rarely need it. More screen estate.
  • You will probably also have less need to have more than 1 app on the screen at a time, as switching b/w them becomes so much faster. That makes it a natural choice to use all apps maximized (I don’t mean the native MacOS fullscreen mode). Drag-n-drop works fine, too: start dragging, hit an F-key, then drop.
  • Less need for macOS spaces, too.

A bonus trick: make the same F-key to hide the assigned app if that app is already on the foreground. This way you can quickly glance at the messenger app to see what that last message was - then get immediately back to where you were. Or whether the tests are still running in the terminal: F1 - F1. There and back.

I use KeyboardMaestro macros to show/hide apps, but unless you already have KeyboardMaestro (it can do so much more!), it may be an overkill to buy it just for that. Previously I used Apptivate, and it’s free.

Of course, you may have more than 12 apps that you use all the time. The lesser used one can be assigned to anything else that works for you, e.g. F-keys plus a modifier, such as cmd. Personally, I find the necessity to use a modifier defeats the original idea, so, while I do have some more shortcuts, I mostly rely on an app launcher.

I suppose this trick might have more value to laptop users with smaller screens, but personally I found it works great when using an external monitor, too. Anyways, thank you, Apple, for giving us back those F-keys, I was missing them very much.

See discussion on Hacker News