제임스 고슬링 인터뷰 중에서

여름 학기 동안 전산학과에 침입하는 방법을 스스로 깨달았어요. 문마다 번호판이 달린 자물쇠가 있었어요. 문 앞에 와서 비밀번호를 누르면 문이 열리고 들어가는 식이었죠. 그냥 아무렇지도 않게 근처에 서 있다가 번호를 누르는 걸 보기만 하면 됐어요. 일단 그렇게 건물에 들어가기만 하면 사용자 ID나 비밀번호 같은 걸 걸어두지 않은 컴퓨터가 많이 있었죠. TSS8이라는 운영체제를 돌리는 시간 공유 PDP-8 장비를 아주 많이 썼어요. 처음에는 거의 뼈대만 있는 PDP-8으로 시작했죠. 어떤 연구실 한 구석에 있는, 아무도 쓰지 않는 컴퓨터였죠. 그걸로 혼자 공부하기 시작했어요. 처음에 배운 언어는 공식 계산기FOrmula CALculator에서 이름을 따온 Focal5라는 이름의 언어였어요. 포트란하고 비슷한 일을 해 주는 꽤 단순한 언어였죠. 곡선을 인쇄한다든가 블랙잭, 솔리테어 게임 같은 걸 하기도 했어요. 그리고 Focal5가 워낙 제한이 많은 언어였기 때문에 어셈블리 언어도 배우기 시작했어요. 그렇게 PDP-8에서 어셈블리 코드를 만들기 시작했죠. 거의 비슷한 시기에 여기저기 돌아다니다가 그 대학교에서 수업용으로 쓰던 IBM 컴퓨터(IBM 360, 50, 40시리즈 등)도 건드리기 시작했어요. 그걸로 포트란 프로그램하고 PL1 프로그램을 만들었죠. 그리고 좀 있다가 학교에서 CDC 컴퓨터를 구입하기 시작했고, CDC 포트란을 쓰는 방법도 공부했죠. 언젠가부터 대학생들하고 어울리기 시작했어요. 대학생들은 제가 아직 고등학교도 들어가지 못한 어린 학생이라는 걸 금세 알아챘죠. 별로 개의친 않았어요. 수업 조교들도 다들 제가 겨우 중학생이라는 걸 알고 있는 것 같았어요. 제가 뭘 부수거나 하지만 않으면 제가 근처에서 놀아도 신경 쓰지 않는 분위기였죠. 교수님도 두 분 알게 됐는데, 신기하다는 반응이었어요. 얼마 안 있어서 교수님 중 한 분이 물리학과와 함께 일하게 돼서 소프트웨어 만드는 걸 도와줄 사람이 필요했는데, 저한테 물어보더라고요. 그렇게 갓 15살이 됐을 무렵에 물리학과에서 일하게 됐어요. 그 후로 앞만 보고 여기까지 오게 된 것 같습니다. 1

제임스 고슬링과 emacs

  • Emacs를 만든 리처드 스톨만이 GNU용으로 다시 만들 때 Gosling Emacs의 코드를 사용할지 고민했다고 한다.
    • 그러나 그러지는 않았다.

스톨먼은 GNU용 이맥스를 바닥에서부터 작성하기보다는 고슬링 이맥스(Gosling Emacs)라고 불리는 프로그램에서 코드를 빌려왔다. 이 프로그램은 Gosmacs 혹은 gmacs라고 불렸는데 제임스 고슬링이 카네기멜런 대학원생 시절이었던 1981년에 만든 것이다. 고슬링이 이 프로그램을 만들면서 자유롭게 배포해도 된다고 했고, 고슬링과 함께 작업했던 개발자가 스톨먼에게 말하기를 그 프로그램의 코드를 다른 프로젝트에 사용했지만 아무 문제도 없었다고 했기 때문에 스톨먼은 GNU용 이맥스에 고슬링의 코드를 집어넣어도 괜찮으리라고 믿었다. 하지만 결국은 그렇지 않았다. 고슬링은 1984년에 Gosmacs를 유니프레스(UniPress)라는 소프트웨어 회사에 팔았는데 이 회사는 스톨먼의 의도를 알게 되자 GNU에게 법적 소송을 하겠다고 위협했다.
결국 마침내 스톨먼은 길고 힘든 길을 따라가기로 마음을 굳혔다. 그는 완전히 바닥에서부터 GNU용 이맥스 프로그램을 작성했다. 유니프레스나 기타 다른 곳에서 쓰는 사용 코드가 전혀 섞여 있지 않은 GNU 이맥스는 1985년에 완성되었고 GNU가 성공적으로 발표한 최초의 프로그램이 되었다. 2

참고문헌

  • 프로그래머로 사는 법 / 샘 라이트스톤 저/서환수 역 / 한빛미디어 / 초판 4쇄 2013년 12월 30일 / 원서 : Making it Big in Software: Get the Job. Work the Org. Become Great.
  • 프리-오픈소스 소프트웨어 혁명의 역사 / 크리스토퍼 토찌 저/이재범 역 / 지식함지 / 초판 1쇄 2019년 12월 12일

주석

  1. 프로그래머로 사는 법. 326쪽. 

  2. 프리-오픈소스 소프트웨어 혁명의 역사. 2장. 91쪽.