brunch

You can make anything
by writing

C.S.Lewis

by Nanotoly Jul 19. 2022

github같이 혁신적인 서비스는 이렇게 만들어진다.

tom과 chris는 어떻게 서비스를 만들고 고객을 모았는가

https://read.first1000.co/p/-github

이 글은 위 원문을 번역한 내용입니다. 불필요하거나 중요하지 않다고 판단한 부분은 빼고 해석하였습니다.




개발자가 아닌 사람들을 위해

github는 개발자를 위한 구글 문서와 같습니다. 개발자들이 협업하고 공유하고 코드를 유지 보수할 수 있도록 합니다. 뿐만 아니라 개발자들에게는 이력서 역할도 하고 전 세계 사람들과 함께 무언가를 발명하는 소셜 네트워크 역할을 합니다. 


github는 여러 방면에서 독특합니다. 

- 2018년에 github는 microsoft에 $7.5억에 인수되었습니다. 이는 skype, linkedin 이후에 세 번째로 큰 규모의 인수입니다. 

- github는 2008년에 원격근무로 일하는 회사였고, 2010년부터는 출퇴근과 원격근무를 함께했습니다. 이런 개념이 단어로 생기기 전에도 이런 방식으로 일 했습니다. 

- 그들은 투자를 받기 전, 4년간 300백만 프로젝트를 모았습니다. 


1999년도에 있었던 일

Tom은 어려서부터 사업에 관심이 있었던 것은 아닙니다. 대학생 시절에 java 개발자로 풀타임으로 인턴을 할 기회가 생기면서 사업에 관심을 가지게 되었습니다. 그러면서 그는 학교로 돌아갈지, 핫한 기술을 다루는 회사(닷컴 버블이 터지기 전)에 들어갈지 고민하게 되었습니다.  결국 그는 일 하는 것을 선택했습니다.


닷컴 버블

얼마 지나지 않아 닷컴 버블이 터졌고, Tom이 다니던 회사는 인수되었습니다. 

Tom과 그의 친구들은 회사를 나오고 팀으로 뭉쳤고 cube6라는 회사를 운영했지만 잘 되지 않았고 친구들은 진짜 직업을 찾기 위해 떠나갔습니다. 


그는 사업을 1년간 했을 땐 $23,000 정도의 빚이 있었고 이는 할만하다고 생각이 들게 했습니다. 그러나 사업 3년 차에는 $50,000의 빚이 생겼습니다.


빚은 그의 열정을 멈추게 하지 못했습니다. Tom은 오히려 빚을 더 냈습니다.

그리고 재테크를 통해서 빚을 조금씩 갚기 시작했습니다. 


포기하기

Tom은 당시에 컨설팅 회사에서 일하고 있었고, Ruby on Rails이 주목받기 시작했습니다. 

*ruby on rails는 프로그래밍을 쉽게 해주는 도구라고 생각하시면 됩니다. 아래는 관련한 설명이 담긴 블로그 글입니다. 

https://bit.ly/3Oaov9H


그는 ruby on rails의 매력에 빠지게 되었고 관련된 커뮤니티에서도 열심히 활동했습니다. 그리고 cube6에서 하는 새로운 프로젝트에도 적용하길 원했습니다. 하지만 전통적인 기업(traditional companies)은 검증되지 않고 오랫동안 쓰인 것이 아닌 새로운 것을 쓰는 것을 꺼려했습니다. 


이는 Tom이 cube6을 그만두도록 만들었습니다. 빚이나 일이 잘 안 되어서가 아니라 단지 ruby on rails와 일을 하고 싶었습니다. 


Gravatar

ruby on rails가 개발자 사이에서 인기 있어지면서 Tom은 몇 주에 한 번씩 ruby on rails 모임에 참석했습니다. 거기에서는 사람들이 자신의 작업물에 대해 발표했는데, 이를 통해 다른 개발자들의 정보를 습득했습니다. 여기서 Tom이 가져 온 Gravatar라는 프로젝트는 사람들에게 주목받았습니다. 


Gravatar는 여러 사이트들의 아바타를 만들 수 있는 서비스입니다. gravator를 통해 만든 모든 아바타들은 gravatar에서 정보를 수정하면 모두 다 함께 수정이 됩니다. 


유일한 문제점은 돈이 안된다는 점입니다. 


gravatar은 천천히 성장하여 32,000명의 유저를 모았습니다. tom은 하루에 2~3시간 동안 300~400개의 새로운 gravatar 프로필 사진을 수작업으로 승인했습니다. 


Tom은 gravatar가 빚을 해결해줄 것으로 기대했습니다. 누군가가 이 서비스의 가치를 $50,000 정도로만 쳐줘도 빚을 모두 갚을 수 있었기 때문입니다. 


gravatar 서비스를 인수할 기업 중에서 Tom이 유력한 회사는 wordpress의 모회사인 automattic이라고 생각했습니다. 


그는 ruby on rails 모임을 통해서 샌프란시스코에 있는 Automattic과 미팅을 잡을 수 있었습니다. 


몇 주 뒤에 Tom은 샌프란시스코로 갔지만, 예상처럼 미팅이 흘러가진 않았습니다. Automattic은 서비스에 대해서 흥미는 있었지만 인수에 대해서는 관심이 없었습니다. 


그래도 Tom은 이번 여행에서 하나 건진 것은 있습니다. ruby on rails 모임에서 만난 친구가 그에게 Powerset에 지원해서 면접을 해보라는 것입니다. 


Powerset은 google을 따라잡고 싶어 하는 자연어 처리 검색 회사입니다. 그 회사는 google answer snippets과 유사한 것들을 했습니다. 그들은 구글보다 더 문맥을 고려해서 심층적인 답변을 제공해주었습니다.


Tom은 몇 차례 면접을 하고 나서 결국 팀에 합류하게 되었고 안정적인 소득을 얻게 되었습니다. 그에게는 이런 결정이 쉬운 것이 아니었습니다. Cube6는 일이 잘 되지 않았고 돈을 많이 썼기 때문이죠.


하나가 끝나면 다른 게 시작된다. 

6개월 간 powerset에서 일하면서 그는 다시 automattic에  gravatar를 팔아보기로 생각했습니다. 끝내 그는 그들을 설득해서 gravatar를 automattic에 팔 수 있었습니다. 덕분에 그는 빚에서 벗어날 수 있었습니다. 


모임에서 혼자 앉아 있을 때 chris wanstrath가 다가왔습니다. 서로 이야기를 나누면서 tom은 ruby 코드를 객체 지향 방식으로 git에서 접근할 수 있는 프로젝트인 'grit'을 보여주었습니다. chris는 git을 중요하게 생각하는 ruby 사용자 중 한 명이었습니다. chris에게 많은 것을 보여주진 못했지만 chris를 번뜩이게 하기에 충분했습니다. git repository을 웹사이트에서 사람들끼리 공유하는 Github이라는 서비스에 대한 아이디어를 얻게 된 것이죠. 그때 Tom은 "해보자!"라고 말했습니다.



git의 역사

잠시 이야기에서 벗어나서 git에 대해 설명할 필요가 있습니다. 


2007년 linux 커널의 주요 개발자이자, 오픈소스 개발의 대부인 linus torvalds는 Git에 대한 아이디어를 떠올렸습니다. 


2005년에는 개발자들이 공동 작업을 하려면 둘 중 하나의 버전 관리 소프트웨어를 사용해야 했습니다.


1. 클라이언트 - 서버 모델 : 소스코드는 오직 중앙 저장소에만 존재하고, 관리자에 의해 엄격하게 통제되었습니다. 


2. 분산 모델 : 하나의 소스코드로 모든 사람들이 자신의 소스코드 버전을 만들 수 있습니다. 이 분산 모델은 선두 업체가 많은 돈을 청구하는 서비스를 제공하고 있었습니다. 


linux 커널 프로젝트는 분산 모델을 적용한 버전 관리 소프트웨어인 bitkeeper으로 관리되었습니다. linus torvalds는 그의 오픈소스 프로젝트인 linux 커널에 대해 무료 라이선스 계약을 했습니다. 그러나 2005년에 bitkeeper에서 더 이상 linus가 무료로 쓰게 해서는 안된다고 판단했고, bitkeeper은 무료 라이선스를 엎었습니다.


linus는 그냥 스스로 더 좋고, 오픈 소스이며, 무료인 버전 관리 시스템을 만들었습니다. (linux 커널 개발자들과 함께 git을 1주일 정도만에 만들었다는 소문도 있습니다.)


git은 개발자가 프로젝트의 분기점을 만들고 여러 버전에서 동시에 작업한 다음 모든 분기에서 작업된 내용을 하나의 마스터 파일로 합치는, bitkeeper에서는 할 수 없는 일도 할 수 있었습니다. 


다시 이야기로 돌아와서

tom과 chris는 사람들이 git을 쓰기 시작하는 것을 보았습니다. git이 널리 쓰이는 데까지는 시간이 말이 걸릴 것이라고 확신했습니다. 그렇지만 git으로 관리되는 프로젝트들을 웹에서 호스팅 하는 가장 편리한 방법을 구출할 수 있다고 생각했고, 많은 사람들이 git을 사용하길 기다려야 한다는 생각을 했습니다. 


ruby 커뮤니티 내에서 가장 똑똑한 사람들(chris 포함)이 이미 git을 배우는데 시간을 보냈습니다. 이에 대해 그들은 후회하지 않습니다. git이 그들에게 소중한 것이라는 걸 깨닫는 것은 시간문제였습니다. 


github 제작

2007년 10월 19일, chris와 tom은 github에 첫 소스코드를 업로드(원문 : commit and push)를 했습니다. github 프로젝트는 그들에게 사이드 프로젝트였습니다. 이 일이 잘 될 것이라는 확신이 없었기 때문이 아니라, git이 많은 사람들이 채택하기까지 많은 시간이 걸린다고 생각했기 때문입니다. 


github는 선두 서비스가 되어 시장을 선점할 수 있지만, 시장이 작습니다. vc 용어로 말하자면, TAM(total addressable market)은 github에 존재하지 않습니다. 


tom과 chris는 잘 맞았습니다. tom은 여전히 핫한 vc가 잘 받쳐주는 회사인 powerset에 다니고 있었고, cube6 media와 gravatar을 겪은 후이기 때문에 안정적인 직장을 떠나려고 서두르지 않았습니다. 반면 chris는 CNET에서 일하고 있었고 ruby on rails와 git의 광신도였습니다. 그는 이미 git 관련 사이드 프로젝트에 너무 많은 시간을 쓰고 있었고, github은 이 모든 프로젝트를 결합한 가장 야심 찬 버전이었습니다. 


앉아서 기다리기

github이 곧바로 성공할 것이라고 생각하진 않습니다. git의 채택은 오래 걸릴 것이지만, 그 일이 일어나거든 우리는 준비되어 있을 것이다. 

- Tom, github의 공동창업자


앉아서 기다리기만 해야 하는 방법은 이 프로젝트를 위해 돈을 모을 수 없고, 호스팅에 돈이 많이 든다는 것을 의미합니다. 그래서 그들은 ruby on rails 커뮤니티를 통해 웹 호스팅 회사인 engine yard에 연결했습니다. 그들은 회사를 홍보하는 바닥 배너를 대가로 무료 호스팅 계약을 체결했습니다. 


호스팅 업체는 거대한 프로젝트를 진행하는 많은 개발자들에게 다가가길 원했고, github는 개발자들이 큰 프로젝트를 원활하게 할 수 있도록 해주었습니다. 이 둘의 궁합은 좋았습니다.


앉아서 기다리기만 하는 것의 두 번째 문제점은 수익화입니다. tom은 이전에 gravatar로 수익을 창출할 수 없다는 사실에 불탔습니다. github 또한 git이 잘 되기만을 기다려야 하고 오랫동안 서비스를 지속해야 했습니다. 


사용자 모으기 

github는 무료로 오픈소스 소프트웨어를 만드는 곳으로 사용하거나, 돈을 지불하고 폐쇄 소스(closed source) 소프트웨어로 사용할 수 있습니다. 무료로 모든 사람들이 github 플랫폼을 이용할 기회를 제공하여 오픈 소스 프로그래머를 끌어모을 수 있었습니다.  두 번째로, 회사에 있는 프로그래머는 github의 협업 도구를 이용하여 소스를 공개하지 않고 작업할 수 있습니다.


더 많은 프로젝트가 github에서 호스팅 될수록, 오픈소스 개발자들이 더욱 많이 모이고, 더 많은 오픈소스 기능을 제공합니다. 이는 사람들이 github를 사용할 이유를 만들어줬습니다. 


네트워크의 씨앗

- 싱글 플레이 모드(single-player mode)

보통은 모든 네트워크 효과에서는 훌륭한 단독 기능이 있습니다. github 같은 경우에는 git으로 관리되는 프로젝트를 쉽게 다루고 호스팅 할 수 있었습니다. 협업 기능을 쓰지 않더라도 github를 이용하면 스스로 프로젝트를 호스팅 하는 것보다는 훨씬 간편했습니다. 


- 멀티 플레이 모드(low threshold multi-player mode)

github의 네트워크 효과는 2가지가 병행되었습니다. 첫 번째는 여러분의 팀이 초대하거나 협업자가 참여할 때입니다. 두 번째는 프로젝트에 새로운 기여자를 끌어들이는 것입니다.


네트워크를 위해 뿌린 씨앗들

- ruby on rails 친구들에게 메일 뿌리기 

tom과 chris는 3년 동안 모임에서 알고 지낸 ruby on rails의 사람들에게 이메일을 보내서 유저가 되도록 하였습니다. 이 덕분에 베타 서비스는 활성화되었습니다. 

tom은 그의 인기 있는 오픈소스 프로젝트들을 github에 배포했습니다.


- 첫 거대한 프로젝트

처음으로 github을 적용한 큰 프로젝트는 Merb입니다. merb는 github의 파트너인 engine yard 사에서 개발한 프로젝트입니다. 


engine yard는 github와 무료 배포 계약을 했고, 사이드 프로젝트의 인기로부터 많은 것을 얻었습니다. github에서 대규모 오픈 소스 프로젝트와 수백 명의 개발자가 작업하는 플랫폼을 제공해주었기 때문입니다. 


- 술 파티

github는 초기에 ruby on rails 커뮤니티에 많이 의존했습니다. github에서는 이를 ruby를 위한 모임이 아니라 github를 위한 모임으로 바꿀 필요가 있었습니다. 

하지만 이는 쉽지 않았기에, 술의 도움을 받기로 했습니다. 개발자들이 모이는 파티에서 tom과 chris는 개발자들의 술값을 대신 냈습니다. 그들에게 이제 막 태어난 오픈소스 커뮤니티를 파는 것보다 맥주는 사는 것이 훨씬 더 쉬웠던 것이죠.


- 그대로 가져와서 모아두기(원문 : mirroring)

거대한 오픈소스 프로젝트들이 어딘가에서는 호스팅 되고 있습니다. 문제는 그걸 사람들이 직접 인터넷을 뒤져서 찾아내야 한다는 것이죠.


github는 이렇게 흩어져있는 오픈소스 프로젝트들을 github로 모았습니다. 대부분의 github에 등록된 프로젝트들을 이렇게 모아진 기존 프로젝트들이었습니다. github에서는 이렇게 모은 오픈소스 프로젝트들의 새로운 버전이 생겼는지 확인하는 프로그램을 만들어서 항상 프로젝트들이 최신 상태가 유지되도록 했습니다. 덕분에 사람들은 github에서 인기 있는 오픈소스 프로젝트의 최신 버전을 쉽게 찾고 복사하고 수정할 수 있었습니다. 


수익화

github는 베타 서비스를 열고 2달 만에 1000개의 프로젝트를 등록시켰습니다. 그러면서 tom과 chris가 github를 시작할 때 몰랐던 것이 드러났습니다. github의 주요한 가치는 호스팅이 아니라 초보 개발자들도 git을 쉽게 쓸 수 있도록 한 것입니다. 오히려 github는 git이 많은 사람들에게 채택되기 위해 필요했던 것이지 그 반대가 아니었던 것입니다. 


2008년 4월 github는 2000개 이상의 프로젝트가 등록되었고, 온라인 학습 서비스인 peepcode의 창립자인 geoffrey grosenbach에게 이메일을 받았습니다. 


저희 회사는 github에서 호스팅하고 있어요. 당신들에게 돈을 지불하고 있지 않는 게 너무 마음이 불편합니다. 수표를 보내도 되겠습니까?

이때 tom과 chris는 결제 시스템을 구축하기 위해 세 번째 공동창업자 Pj hyett를 영입했습니다. 유료 서비스를 출시한 첫날에 github는 1000달러를 벌었습니다. tom과 chris는 직장을 그만두고 github에 집중하기로 결정하게 된 계기가 되었습니다. 


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari