What is Pair Programming?

In a traditional workspace, developers can collaborate in real-time or sequentially. In the latter case, tools like Github facilitate collaboration over an extended period of time, taking an idea from start to release and further. Real-time collaboration is better for developing solutions to problems that are at hand, catching bugs before testing and writing high quality code on the first pass.

Pair programming, where two developers work at the same monitor on the same code, is an example of real-time collaboration. Often, one takes the role of the driver, writing at the keyboard, whilst the other takes the role of the navigator, considering the higher-level issues and the overall structure that the program with have. This is a way of dealing with the inefficiencies of the dual role of a developer, separating the abstract and concrete parts of programming.

When pair programming, bugs are caught earlier, the structure of the code is reflected on as it is written and knowledge is spread throughout the team as it is created, rather than during meetings afterwards. On the other hand, pair programming remotely is a newer practice, so how do you do it effectively?

How to Pair Program Remotely

Developers aren’t the only people that find themselves sitting side-by-side at an interface working together. Projects are planned with post-its on a whiteboard; designs sketched on a piece of paper or on a screen; press releases, or social media posts, are written up around a text-file; and pitches are developed in meetings on a slideshow. In each of these instances, an equivalent method has developed for remote work.

Real-Time Collaboration Tools

The solutions have all been tools that allow multiple users to collaborate live on the same documents.

Real-time collaborative whiteboard Miro takes the place of whiteboards in offices, creating collective knowledge stores that update as your team-mates work on them. Design software like Sketch and Adobe XD have adopted real-time collaboration features, with commenting and versioning too. Google docs covers a huge number of use-cases by allowing users to map their problem onto a general tool, designed specifically with real-time collaboration as a central feature.

Development, on the other hand, has lent more on sequential tools as remote work becomes more common. The tools available for this are powerful and it’s hardly a bad way to work, but where we would have preferred to have collaborated in real time if we were in an office, having to shoehorn ourselves into an sequential workflow is inefficient and unnecessary.

Tools exist for real-time code collaboration. Everything from screen-sharing to plugins for your favourite IDE, but they are all patches, something to stick onto your individual way of working to bring a little more of your team into it.

Remote Pair Programming with CRANQ

CRANQ is a tool built specifically with teams in mind. Developing alone is intuitive and fast, developing as part of a team is even more so.

Live collaboration means that working together remotely is easy and effective. You and your team can keep up to date with each other and progress the project together.

The visual nature of CRANQ code means remote pair programming in is smoother than non-remote pair programming in a text editor. Pop open a chat bubble or get a call going and together you can build great software, fast. Bugs are easier to spot and ideas easier to communicate due to CRANQ’s visual design.

It’s ready and waiting. Join our community today so see how CRANQ can help your remote teams thrive.