A portrait of Duncan McClean
13 Sep, 2022 3 min read

Why we use Tuple

Tuple is a wonderful application that has enabled us at Steadfast to really enhance both our collaboration and productivity. With the added benefit of being a way to spend collegial time together, whilst still working remotely.
Josh and Andre- Steadfast Collective

Tuple is a wonderful application that has enabled us at Steadfast to really enhance both our collaboration and productivity. With the added benefit of being a way to spend collegial time together, whilst still working remotely. But first – what is Tuple?

Tuple screenshot

Tuple is a pair-programming application that offers many benefits to remote programmers. Pair programming is the practice of working together in real-time on the same code. It offers you a directory of your teammates for pairing within your taskbar. Upon pairing, one programmer will select their screen to be the one displayed. After selecting, both programmers will now be working from the same computer.

The beauty of Tuple is that it allows both programmers seamless and responsive control of what they’re both seeing. This means that the programmer not present in front of the computer being displayed can jump in at any moment and type code with the same responsiveness as the person who is. All the while, you can hear each other over the call feature, tying the experience together.

Other apps offer similar features to Tuple, but from our experience, none quite reach the quality of Tuple. This is because Tuple was purpose-built specifically for pair programming, unlike the other offerings, which are more generic ‘screen-sharing’ applications.

At Tuple, the developers were programmers who became frustrated with the other tools they had been using, so they set out to make their own. They solved their frustrations a couple of ways. Namely, focusing on making Tuple as low latency as possible so you can focus on coding without getting irritated with stuttering and lag.

It is very low CPU usage, so other more CPU-intensive apps that you need to develop aren’t hindered. The minimal UI means that you can focus on the IDE without being distracted by other elements. Finally, up to 5k (!) video resolution so that you have no difficulty whatsoever reading your other devs’ tiny code.

In my personal experience, this has upped my experience of collaborating with my colleagues and comes in especially handy for those problems you’ve been bashing your head against for some time. It’s widely accepted that pair programming is essential to a developer’s tool set.

Benefits include:

  • Enhanced creativity/problem solving – No two programmers look at a problem the same way, meaning novel solutions are readily produced between two programmers looking at the same problem.

  • Faster debugging: Every programmer knows that looking at the same problem by yourself for a long time has diminishing returns. You begin to miss the obvious and narrow your vision too much. Two programmers eliminate this by allowing each programmer to spot issues the other might have missed. Keeping things fresh.

  • Improved teamwork/team dynamic: Collaborating in such a fashion is a great way to improve the bonds between teammates as you arrive at solutions together, debug problems and ultimately get an appreciation for how everyone works and thinks.

All in all, we’ve had a blast using Tuple thus far and intend to keep utilising it to facilitate our pairing and collaboration. If pair programming is something that you want to implement within your team, we don’t think you can go wrong with Tuple!

Tuple