How to Weaponize Your Keyboard for Coding Success – Tech Blog

This is the first in a series of posts from Paladin’s technology team, providing insights for developers and other interested readers based on their professional experience.

I’m a believer in establishing a strong and efficient workflow for my work, and I recommend it to all developers. In time I’ve discovered a number of tricks and apps that give me essential, time-saving shortcuts. From the Caps Lock key to, I want you to have access to these tips.

Caps Lock Remapping

Do you remember the Caps Lock key? How often do you use it? To be honest, after trying it once when I first learned to use a computer, I thought it was useless. Or is it really? It’s in a very good position, just under your pinky! Turns out you can actually use it to create a set of shortcuts for use across all applications.

How about remapping Caps Lock to a modifier key and using it every day?! It’s a great idea, even if I do say so myself. Let’s get started.

Step by Step

MacOS offers an option to remap Caps Lock to a different key, but unfortunately it’s very limited. You can choose only from Control ^, Option , Command or the Esc key.

Replacing it with a single modifier key (e.g. ⌘) doesn’t help at all. It does not create more possibilities, it just adds an option to use the same shortcuts in a different key combinations. Caps Lock + S would become the commonly used Save action (⌘ + S). What can we do about it? We need to find a combination of keys that will not conflict with existing shortcuts. Using multiple modifier keys can help us to achieve that goal. You might say that we already use shortcuts that make use of multiple modifiers – that’s true, but have you seen a shortcut combined from all of the modifier keys? Not really, because it’s hard to use.

So we need to remap Caps Lock to a combination of Shift + Control ^ + Option + Command ⌘. We’ll have to install software to do it.

Karabiner is a powerful software that helps you customize your keyboard under macOS.


Please go to and download the latest version of the Karabiner-Elements app. Follow the installation steps displayed at the bottom of the page.

First run

Karabiner-Elements is located under /Applications/ Open it and follow the instructions described here. If you’re on High Sierra you’ll have to allow loading of the kernel extension due to changes in the security policy.


Now that we have the Karabiner software setup, we can enable a custom rule that will remap the Caps Lock key to a combination of modifier keys.

Import rule
  1. Open the Karabiner-Elements Preferences and go to the Complex Modifications tab
  2. Click on the Add Rule button, then click on the Import more rules from the Internet button – The web browser will open on the Karabiner’s complex modification rules page
  3. Click on the Modifier Keys link, you’ll see a list of available rules
  4. Find the Change caps_lock key rule and click on the Import button – you’ll get redirected back to the Karabiner’s preferences
  5. Click on the Import button and voilà – the rule was successfully imported
Enable rule
  1. Under Change caps_lock key rules, find the Change caps_lock key to command+control+option+shift. (Use shift+caps_lock as caps_lock)
  2. Click on the Enable button
  3. Done!

Finally, it’s time to verify if the Caps Lock key was successfully remapped.

  1. Open Karabiner-EventViewer and hit the Caps Lock key
  2. You should see something like this

Hooray! We’ve achieved our goal. We have a whole new shortcuts set that we can use everywhere: Caps Lock + A would become ⇧ ^ ⌥ ⌘ + A.

Bonus: You still can use the original Caps Lock functionality by typing ⇧ + Caps Lock key.

Now it’s time to make some real use of it!

As developers, we often switch between different apps. Looping through opened applications using ⌘ + Tab can be exhausting and inefficient. Clicking with your mouse or trackpad on the icon also is not a perfect solution. Sure, you can type an application name in the Spotlight Search (or similar launching software) but it’s good only for applications that you open once in awhile. How about using a global shortcut to launch or switch applications? If you do, it will change your workflow forever and you’ll never want to go back!

Here’s how:

Many applications already support a global shortcut to open them. I prefer a single place where I can manage all of my global shortcuts with ease.

Spark is a powerful shortcuts manager. You can create a shortcut that will launch an application, run a script and many more! I’ve used it for several years now and it works perfectly! I highly recommend it. Though you may be able to find other software to do the job, here are instructions for using Spark.

  1. Go to and click on the Download button
  2. Unpack the downloaded file and move to the /Applications folder
  3. Now open it with a double-click – you’ll be asked if you want to open it, since you downloaded it outside of the App Store. Just hit Open
Add new shortcut

Create a new global shortcut that will launch a text editor.

  1. Click on the gear icon and choose Application (or type ⌘ + 2)
  2. You’ll see an Application Action modal, click on the Shortcut input field
  3. Once it’s activated, type Caps Lock + E – that will capture our global shortcut
  4. Fill the Name field with Text Editor and select Launch action
  5. Now you need to choose an application to launch – click on the Choose… button and navigate to /Applications folder, then select and click Open
  6. You can select from a few Options like: Launch hidden or Launch in background – keep it default for now

After these simple steps, your Application Action modal should look like this:

If you’re all set, click on the Create button. Your shortcut will appear on the list.

Please make sure that Spark Daemon is running. You can start it by clicking on the Start Spark Daemon at the bottom of the application window.

Now test it! Caps Lock + E should launch the Isn’t it awesome? 🙂

Go ahead and create a few more shortcuts for your favorite applications, like web browsers, IM apps, or mail clients. Play with them, switch between them! Give it some time. Once you master it, you’ll fall in love.

Michał Lipski is a senior developer at Paladin’s European office in Kraków, Poland.

Sign Up for Our Newsletter

Things I Have Learned About Delegating: COO Blog

Recently I gave a talk to our team at Paladin about how to delegate effectively. In preparing for this talk, I found there are a lot of articles about delegating, most of which were recycled from some ancient listicle patient-zero. I also found few resources reflecting what I’ve found to be important lessons learned first-hand from managing teams locally and internationally. So I wrote down the abridged versions.

Delegate what needs delegating, not your bullshit.

The purpose of delegating is to reap benefits from focus and efficiency. Not so you can literally interpret the title of “The 4-Hour Work Week.” Don’t simply shove a task you don’t want to deal with onto someone else’s plate.

Here is when you should delegate:

  • When you know your employee is the best person for the job.
  • When delegating creates a learning opportunity for your employee, creating future efficiencies.
  • When you’re expanding team capacity for a certain functions and you’re assigning employees their share of the work.
  • When you have other critical work that takes priority, and only you can do it.

Context can change everything.

Always make sure whomever you delegate a task to knows why they are doing it. If the person responsible for a delegated task understands the team or company’s end goals, both short and long term, they can better act as a check point to ensure the team is moving toward those goals, or to suggest better paths toward those goals.

There are many ways to skin a cat, and context is critical information to ensure your employees skin it the right way right meow. Remember that a task can be accomplished as instructed without serving wider goals, or in detriment to them. You don’t want that.

The success of delegation is conditional.

There are a number of questions that should be asked before delegating a task to ensure the best chance of success. If the answer to any of these questions is no, it is likely whomever you’ve delegated the task to will fail.

  • Are the right resources for the job being activated?
  • Is there enough time to achieve the task?
  • Is it technically possible to complete the task?
  • Is delegating this task creating any resource conflicts with other projects?
  • Do the resources being activated have enough capacity?
  • Will the resources being activated be hijacked?

Delegation is negotiation.

If everything was purely top down, our business would have failed many times over. Make sure your employees understand that just because someone is asking them to do something, it doesn’t mean they do not have a voice to flag important considerations, set expectations, and ask further questions. Such conversations can materially change the scope, objectives, and timelines associated with a delegated task.

When you empower others, they become smarter.

When given extreme ownership of a project/product/whatever, people shift their mindset from requesting solutions to solving problems. When one’s own success or failure is hinged to the success or failure of things they are made responsible for, they are motivated to figure it out. Over time this is especially beneficial, as the individuals closest to products/clients/problems/etc are the ones crafting solutions.

Don’t get in the way.

There are many paths to a destination. Make sure that the goal of the task being delegated is clearly defined, but allow for independent thought and for employees to find their own way to the end objective. This will bring you an incredible amount of ideas that you never would have otherwise considered. That said, keeping an open mind with regard to pathways doesn’t mean abandoning your role in providing guidance — you may have learned an efficient path the hard way, and be able to save your employees a lot of time and headaches with course corrections. That said, learning the difference between subjectivity and substance in this regard is critical.

Rome wasn’t built in a day.

It takes time to dial in a delegation process that’s successful for you, and that subordinates respond to. Consider failure as an opportunity to improve how you delegate. Don’t use failure to re-absorb responsibility, negating the benefits of delegating.

Parting Thoughts:


Make noise when the team wins.
Give credit to those responsible, don’t take it for yourself.
Make yourself available to inform or to teach, but not to do what has been delegated.


Blame. If a delegated task ends in failure, you did not properly account for conditions, did not properly fulfill negotiation, did not provide context, or you empowered the wrong person. If you set an example of accountability, you empower a culture of accountability.

Set arbitrary deadlines. How long will a task take with respect to the conditions and the resources available? Ask the person responsible for delivering, and let that be the deadline. Deadlines can move for a lot of reasons. Check in on delivery estimations, but don’t nag.

Interrupt (unless you have to).

Thomas Kramer is Paladin’s COO. Over the past several years he has managed teams in diverse areas, from technology developers and content optimization strategists to operations and marketing staff.

If you’d like to learn more about Paladin, start here.

Sign Up for Our Newsletter

Request a demo

We would be happy to provide a custom
demo of our solutions.







We'll be in touch with you shortly to arrange your custom demo.