Back when I first met Martin, we spent the entire day (almost 12 hours plus) working together on network programming project, reverse engineering a network protocol, creating a client for it.
This was years before pair programming became a household programming term. Before any software was made specifically for pair programming. We just sat at a desk in a student accommodation room, two laptops, working together, with separate editors.
Fast forward to today, where we are again pair programming on another project. We started in Berlin, however we didn’t want the restriction of sitting in front of a single laptop. Our preferred text editors are also completely different, each being more comfortable and quick in our respective editors. We wanted to find a good solution to screen sharing, unfortunately my go to choice of Screenhero was no longer possible, as it got bought by and integrated into Slack 😩.
First we tried Google Hangouts, which turned out to be really unintuitive to work out how to even connect to each other for screen sharing. Following that mess we tried some Chrome extension that kind of worked, but wasn’t great quality and would only last for so long without paying.
It was at this point I even considering using up some of my Slack credits (from trying out the beta back in the day) to upgrade our social Slack workspace, just to access the screen sharing functionality.
I eventually remembered macOS has built in screen sharing.
You specify the Apple ID of the person who’s screen you would like to view, and pops up a notification on their end asking if they want the person to control or observe their screen.
Once you mute mics both ends, as it gets bit much with all the feedback when you’re in the same room, it’s a great way to pair in person without having to sit next to each other.
After working a number of Sundays in a row, we had a Sunday where we had to work remotely on our project. The great thing about Screen Sharing.app in macOS? It can work across the Internet as well! We had planned on using Discord for voice as it’s really great quality.
This brings me to my one annoyance with the screen sharing app. It lowers the volume of all other sound when you’re viewing and sharing a screen. I haven’t found a way to disable this, or whether it’s possible. We ended up using the built in voice, which is always on, we would have preferred voice-activation or push-to-talk from Discord.
We plan to continue using screen sharing for the foreseeable future while working on this project. It’s nice to discover great functionality built into an operating system without having to sort out user accounts and third-party apps.