It shouldn’t be news that paired programming makes for better code. There are several proven benefits to coding in tandem with another programmer, including fewer bugs, more efficient problem solving, and an exchange of skills and ideas between the programmers involved. If your business isn’t utilizing paired programming, then you’re missing out some real perks.
That’s easy to say when you’re in an office together, but what do you do if your coworker is someplace else? How do you compensate for that loss of personal interaction? A shaky internet connection or bad microphone setup can make video communication next to impossible, and standard screensharing technology can be clunky and awkward. Most of the best collaborative work environments, like Google Drive, aren’t optimized for coding. So what can you and your remote colleagues use?
If you’ve been lost in the weeds of remote paired programming, not to worry. In this article, we will be sharing some of the best software currently available that addresses this problem. Some of the software is free, and some isn’t, but they all have proven themselves to be effective solutions.
- AtomPair is a plugin for Atom, the popular text editor. Once two or more users are connected, all users can see and collaborate on the same text file. Because it is not dependent on the user’s browser, it is one of the fastest collaborative softwares available.
- The good: AtomPair is fast, sleek, and free to use. Invitations can be sent through HipChat and Slack. Integration is fast.
- What could improve: Only the host of the collaboration can save the file, and some users have reported bugs.
- Codenvy, is a free service with options to upgrade to a paid plan. The free service is fully functional, and it functions well. It is intuitive to use, and supports most major coding languages and frameworks.
- The good: Codenvy’s editor is user friendly and easy to use. Sharing projects with other users is simple, and paired programming is easy. The changes occur very quickly, and you can see where the other user is typing.
- What could improve: You need to buy the paid tiers in order to get more RAM. The UI is very messy.
- Codeanywhere is another very high profile remote collaboration software. Like Codenvy it has a free version, and paid tiers. It has a great many options, and an extensive coding environment. However, storage and functionality is limited without paying, and navigating the dashboard can be a chore.
- The good: Built-in connectivity with GitHub and Bitbucket, for conflict-free pushing and pulling. Highly functional on mobile platforms. Changes are recorded near instantly, and the location of your partner’s mouse is always shown.
- What could improve: No debugging tool. Need to pay in order to access FTP servers and revision tools. Setting up paired programming is not intuitive, requiring fishing through several menus in order to share, and then more in order to activate realtime collaboration.
- CodeShare is a powerful, stripped down collaboration software, and is a simple shared text editor, with built-in video conferencing included. Since it is so barebones, it is best used for quickly collaborating on snippets and other projects that don’t need a full coding environment.
- The good: Simple UI, fast, easy to connect even if users do not have an account, has built-in video chat. Extremely fast updates during paired programming. Sharing a project is easy as sharing a link with another user.
- What could improve: No connectivity with GitHub, no storage, no debugging tools. There are advertisements in the UI.
- AWS Cloud9 is Amazon’s official online IDE. As you’d expect of something created and maintained by Amazon, it’s powerful, with a huge variety of features. If you rely on AWS already, and don’t mind paying after your one-year free trial expires, it’s a good option for a professional team.
- The good: Collaboration is fast and simple when you get it running. Includes local testing and debugging environments, and includes direct terminal access to AWS. Has a built-in group chat.
- What could improve: Very crowded with other AWS tools, which may feel superfluous if you’re not using them. Setting up a shared coding environment is not intuitive. There is a price barrier.
These are hardly the only options out there. Two promising software are Visual Studio Live Share, and Teletype for Atom, which both look to be fast, secure, and user-friendly. However, they are currently in limited preview and beta, respectively, so it’s too early to give them a final verdict. If, for some reason, none of these options work for you, Google Hangouts has a screensharing option, so you really don’t have an excuse not to pair program.
Paired programming is far too valuable to miss out on due to distance or software. If you have misgivings of paired programming being slower, studies show that the time lost during coding is more than made up in time saved during debugging. With so many good options out there, start programming collaboratively, remotely or otherwise!