Keyboard Pilot — An Interview with Richard Hult
Richard Hult explains why Keyboard Pilot returned, what its modern rewrite required, and how small updates can keep an app alive for years.
Keyboard Pilot fixed a very specific macOS annoyance for me. I switch keyboard layouts all the time when writing code and talking to friends, but I never need the Ukrainian layout in Terminal. Keyboard Pilot lets me choose the right layout for each app.
While preparing My Mac Apps Story, I contacted Richard Hult, the developer of Keyboard Pilot, to ask why he created it, what brought him back to active development, and what he learned from modernizing a small Mac utility after many years.
Interview by Ighor July for Reverse Everything.
Interview
Ighor July
What originally inspired you to create Keyboard Pilot?
Richard Hult
I originally wrote Keyboard Pilot together with a friend because of personal needs, as we kept switching keyboard layouts between English and Swedish. We found that using an English layout was more efficient when programming because the commonly used characters like braces and curly braces are much more easily accessible when using the English keyboard layout.
The app was originally sold for a one-time price, but when I no longer had time to work on it, I made it free. During that period, I made very few changes and just made the minimal updates to support newer macOS versions. I kept using the app constantly during this period.
I decided to start working on it again mostly because of Tahoe and Liquid Glass which made the app feel outdated and somewhat broken.
Ighor July
What have been the greatest technical challenges involved in maintaining the app over the years?
Richard Hult
The new version is basically a rewrite as the old code was written in Objective-C and we now live in a Swift world. The rewrite made the code easier to work with so I could also make some improvements to the core of the app to make it work better and more reliably switch layouts.
The app is quite small so starting over from scratch was not a very big task, but I spent a lot of time working on the core functionality to improve the robustness of the layout switching. Once I was done, I instantly regretted not doing this sooner. Swift and SwiftUI makes it so much quicker to iterate quickly on designs and ideas, even though SwiftUI still has some rough edges when it comes to Mac apps.
Ighor July
What motivates you to continue developing and supporting Keyboard Pilot after so many years?
Richard Hult
My motivation comes from two places. First, I’m a user of the app myself, so I genuinely want it to work well. Second, whenever a new version of macOS is released, I receive emails from users asking when an update will be available. It’s a small user base, but they’re incredibly enthusiastic, and their continued interest is very motivating.
Ighor July
How do you view the role of small, focused Mac utilities today?
Richard Hult
I’m a big fan of the macOS indie dev community and use many utilities created by that community. Usually those small apps are of very good quality, much better than apps from big companies, especially nowadays when Electron and other non-native frameworks are so commonly used.
Ighor July
What advice would you give to independent developers who hope to maintain and support their apps for ten years or longer?
Richard Hult
My advice is to keep making small updates and regular releases, if nothing else to exercise the whole process of building with new Xcode versions and SDKs. It is so much easier to do small incremental updates rather than collecting a huge number of deprecations, and worse, risking that so much changed that you cannot even build the project once you come back to it.
Another advantage that this brings is that when you work with your app, you often get some ideas for improvements and new features.
This interview is part of the developer interview series connected to My Mac Apps Story, Part 2.