그러나 최근 몇 년 사이 코드를 사용한 라이브 협업, 즉 2명 이상이 실시간으로 같은 파일을 다루는 협업 툴이 크게 발전했다. 최종 코드를 확정하는 책임자는 여전히 1명이어야 하지만, 다른 이의 편집 내용을 실시간으로 볼 수 있어, 원격 교육이나 긴급한 작업 등에서 매우 요긴하다. 웹 기반 서비스, 코드 편집기의 추가 기능 등 다양한 형태로 팀 동료와 실시간 협업하는 7가지 툴을 소개한다.
AWS 클라우드 9
AWS 클라우드 9(AWS Cloud 9)는 아마존이 인수한 서드파티 제품으로, 40여 개 프로그래밍 언어를 다양한 수준의 툴과 함께 지원하는 브라우저 기반 개발 환경이다. 여러 개발자가 공유 환경을 사용해, 클라우드에 호스팅되는 단일 프로젝트에서 실시간 협업할 수 있다. 각자 다른 사람이 작성하는 내용을 보고(누가 어떤 코드를 썼는지 시각적으로 표시된다) IDE 내에서 채팅 창으로 대화도 할 수 있다. 프로젝트 관리자는 협업 참여자에게 읽기/쓰기 또는 읽기 전용 권한을 부여할 수 있다.가격 : 모든 EC2 인스턴스에 기본적으로 포함되므로, 인스턴스 비용만 내면 된다.
코드애니웨어
코드애니웨어(Codeanywhere)가 주로 내세우는 것은 이동 코딩 환경이다. 브라우저, 태블릿, 스마트폰 편집기를 통해 75개 언어를 지원하며, 그 중 상당수가 클라우드 환경이다. 이 툴에는 여러 가지 실시간 코드 공유, 협업 기능도 있다. 링크를 통해 프로젝트를 다른 사람과 공유하거나, 실시간 협업을 설정해 자신의 편집기에서 자신의 파일을 다른 사람이 편집하도록 허용할 수 있다. 또한 다른 사용자에게 프로젝트에 대한 SSH 액세스도 제공할 수 있다.가격 : 무료 7일 평가판을 제공한다. 가장 저렴한 요금제는 사용자당 월 3달러다.
코드샌드박스 라이브
코드샌드박스(CodeSandbox)는 자바스크립트와 타입스크립트, 그리고 리액트(React)나 앵귤러(Angular), 뷰(Vue)와 같은 프레임워크 등 빠른 웹 앱 개발을 위한 온라인 IDE를 제공한다. 코드샌드박스의 라이브(Live) 모드를 사용하면 다른 사람을 초대해, 같은 프로젝트에서 동시에 작업할 수 있다. 실시간으로 함께 파일을 편집하고 채팅도 가능하다. 클래스룸 모드(Classroom Mode)를 이용하면 특정 참가자를 편집자로 지정하고 나머지 사람은 읽기 전용 권한만 부여할 수 있다.가격 : 무료 서비스가 있지만, 월 9달러 요금제에 가입하면 비공개 샌드박스가 무제한 제공되고, 프로젝트에서 깃허브(GitHub) 리포지토리도 무제한으로 사용할 수 있다.
코드셰어
코드셰어(Codeshare)는 가장 단순한 협업 코딩 환경 중 하나지만, 바로 이 점 때문에 오히려 가장 유용할 수도 있다. 예를 들어 페이스트빈(Pastebin) 같은 코드 편집기가 필요하다면 코드셰어가 안성맞춤이다. 코드셰어 인스턴스를 설정하고 다른 사람에게 URL만 보내면, 즉시 입력할 수 있고 화상 채팅도 할 수 있다. 편집기에서 작성한 코드는 클릭해서 다운로드할 수 있으며, 각 인스턴스는 24시간 후 자동으로 만료된다.가격 : 무료
플루비츠
플루비츠(Floobits)는 실시간 편집 및 채팅 기능을 제공한다. 자체 브라우저 편집기가 있고, 서브라임(Sublime), 텍스트(Text), 아톰(Atom), 네오빔(Neovim), 이맥스(Emacs), 인텔리J(IntelliJ) IDEA를 포함한 여러 편집기용 추가 기능으로 사용할 수도 있다. 단, 비주얼 스튜디오 코드용 추가 기능은 없다.여러 명이 협업할 수 있으며 사용자 권한을 액세스 권한 없음, 읽기, 쓰기, 관리자 권한 등 다양하게 설정할 수 있다. 공개 및 비공개 작업 공간을 설정하고 터미널을 공유하고 편집기 없이 작업 디렉터리를 동기화하는 것도 가능하다. 이밖에 웹RTC와 IRC를 사용해 팀원과 화상 또는 텍스트 채팅을 할 수 있다.
가격 : 공개 작업 공간은 최대 5개까지 무료이며, 비공개 작업 공간은 1주일 평가 기간 동안 1개를 무료로 사용할 수 있다. 가장 저렴한 요금제는 월 15달러이고, 비공개 작업 공간 5개가 제공된다. 방화벽을 사용하는 기업용 버전도 있다.
아톰용 텔레타입
깃허브가 만든 아톰 코드 편집기는 매우 다양한 추가 기능을 지원하는데, 그중 하나가 텔레타입(Teletype)이다. 아톰을 코드 협업 시스템으로 쓸 수 있게 해준다. 아톰 인스턴스의 활성 탭에 다른 개발자를 초대해 실시간으로 편집하고, 자신이 여러 파일을 전환할 때 초대된 개발자도 함께 탭을 따라 이동하도록 할 수 있다. 모든 협업은 웹RTC 프로토콜을 통해 피어 투 피어로 처리된다. 단, 텔레타입은 실행 중인 서버 공유나 상세한 액세스 제어 같은 고급 기능은 제공하지 않는다.가격 : 무료
비주얼 스튜디오 라이브 셰어
팀에서 이미 비주얼 스튜디오 또는 비주얼 스튜디오 코드를 쓰고 있다면 마이크로소프트의 비주얼 스튜디오 라이브 셰어(Visual Studio Live Share)를 사용해 개발 환경에 실시간 협업 기능을 추가할 수 있다.읽기 전용 또는 라이브 편집 모드로 협업 참가자와 코드 프로젝트를 공유하는 것은 물론, 편집기 창뿐만 아니라 터미널이나 디버깅 세션도 공유할 수 있다. 또한 파일 전환, 커서 이동 등 다른 사용자의 작업을 자동으로 따라가는 기능, 다른 사람에게 같은 작업을 하도록 요청하는 기능도 있다. 실행 중인 웹 애플리케이션 서버를 다른 사용자와 공유하는 것도 가능하다. 비주얼 스튜디오 또는 비주얼 스튜디오 코드를 설치하지 않았다면 웹을 통해서도 협업에 참여할 수 있다. editor@itworld.co.kr