오픈소스 이야기

조회 수 481 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
오픈소스에 대한 이해를 만화로 쉽게 할 수 있도록 작성한 컨텐츠를 원작자 님의 허락을 얻고 공유하고 있습니다.
공유를 허락해주신 원작자님에게 감사 드립니다.

 

원작자 : https://joone.net/
 

팀 버너스 리의 어린 시절

팀 버너스 리(이하 팀)는 1955년 영국 런던에서 태어났다. 그의 부모님은 모두 수학을 전공했고 최초의 상업용 프로그램 내장식 컴퓨터인 맨체스터 마크1에서 소프트웨어를 개발했다[1]. 팀의 어머니 메리 리 버너스 리(Mary Lee Berners-Lee)는 1950년대에 페란티 마크1(Ferranti Mark I) 개발에 참여했고 최초의 프리랜서 컴퓨터 프로그래머였다. 그녀는 앨런 튜링(Alan Turing)이 작성한 설명서를 보고 프로그램을 작성하도록 교육을 받았다. 아버지 또한 같은 회사인 페란티(Ferranti)에서 프로그래머로 일했다[2].

 

 

 

이러한 집안 분위기로 팀은 어려서 부터 모형 기차 선로를 만들면서 전자학을 배웠고, 옥스포드 대학 퀸스 칼리지에서 물리학을 공부했다. 팀은 초기 마이크로 프로세서를 사용하여 개인용 컴퓨터를 만들기도 했다.

 

1976년 대학을 졸업한 후, 한 통신회사에서 소프트웨어 엔지니어로 일을 하다가, 그래픽 출력이 가능한 도트 매트릭스 프린터 개발에 참여한다.

“내가 그래픽 출력이 가능한 도트 매트릭스 프린터를 개발하려고 하는데 도와줘.”

 

 

도트 매트릭스 프린터는 기본적으로 문자만 출력할 수 있었다. 하지만 프린터에 마이크로프로세서를 추가해서 도형 등 그래픽이 출력 가능한 프린터를 개발하려고 하였다, 하지만, 개발 자금이 금새 바닥이 나고 팀과 그의 동료 케빈은 다른 일자리를 구할 수 밖에 없었다.

 

 

“미안, 자금 사정이 여의치가 않아서 더 이상 급여를 줄 수가 없네.”

 

“잠시 다른 일을 알아봐야겠어.”
“다행히 난 스위스에 컨설팅 일이 있어서 일단 거기서 잠깐 일을 하려고해.”

 

팀이 스위스에서 컨설팅 일을 하는 동안 옛 동료인 케빈에게 연락을 받는다.[3]

“팀, CERN에서 계약직 소프트웨어 엔지니어를 뽑는데, 같이 지원하지 않을래?”
“입자가속기를 직접 볼 수 있겠군!”

 

유럽 입자 물리 연구소(CERN)은 1980년 당시 입자 가속기 제어 장치를 컴퓨터로 변경하는 작업을 진행 중이였고, 이 일을 할 엔지니어가 필요했다. 결국, 두 사람은 1980년 6월 24일 부터 스위스에 위치한 CERN에서 계약직 소프트웨어 엔지니어로 일하게 된다.

 

 

 

인터뷰가 끝난 후, 팀과 케빈은 CERN 내부를 구경할 기회를 갖게 된다.

“여기는 하드웨어 장치는 입자가속기를 제어하는 시스템입니다. 여러분이 할일은 이 장치들을 대신할 소프트웨어를 개발하는 겁니다. 앞으로 CERN의 모든 장비는 컴퓨터로 조정할 계획입니다.”
“정말 거대한 장치네요.”

 

CERN에서 인콰이어(Enquire) 개발

CERN은 유럽 20개 회원국의 투자로 만들어진 거대한 입자 가속기를 운영하고 있었고, 2016년 기준으로 2500명의 과학자, 기술자, 관리 직원이 상시적으로 일하고 있으며, 전세계 대학과 연구소에서 12000여명의 과학자가 방문했다.

출처: 위키피디아

 

팀은 첫 업무로 노스크 컴퓨터(Norsk Data Computer)에서 동작하는 입자 가속기 사용자 인터페이스 구현하게 된다.

“이 컴퓨터로 입자 가속기를 제어하는 시스템을 구축하고 있습니다.”

 

계약직 프로그래머에게 가장 어려운 문제는 전체 시스템을 이해하는 것이였다. 기존 제어 시스템 사용법과 새로 도입한 컴퓨터 프로그래밍을 함께 배워야했다. 중요 정보는 문서화되어 있지 않아 일일히 담당자에게 물어봐야했다.

 

 

“여기 참고할 만한 문서가 있습니다. 연락해야할 사람들 리스트와 입자 가속기를 구성하는 장치 리스트 등이 있어요.”

 

“각 담당자들을 명단을 다시 정리해야 하고 장치 설명서도 종류가 많으니 목록을 정리해야겠어. “

 

그에게는 1 만명 정도의 연구원과 그들의 프로젝트 및 컴퓨터 시스템 간의 연결 관계를 분류 할 방법이 필요했다.

 

“CERN에서는 정말 많은 사람들이 일하고 장치들도 많군. 이를 관리하는 프로그램을 하나 만들어야겠어”

 

그리고 6개월 계약기간동안 그가 처리해야하는 모든 시스템, 프로그램, 장치 및 사람을 기억할 수 있도록 하이퍼텍스트 기반의 인콰이어(INQUIRE)라는 시스템을 구현했다. 이는 그가 어렸을 적 봤던 ” Enquire Within Upon Everything”에서 이름을 따왔다.

“그래 마치 ” Enquire Within Upon Everything” 같은 것을 만들어서 필요한 정보를 빨리 접근할 수 있도록 해야겠어.”

이 책은 1850년경에 처음 출판되었는데, 모든 생활의 팁을 정리한다는 목적으로 요리법 부터 투자까지 다양한 분야를 정리한 책이다.

 

팀은 그 책을 떠올리며, CERN에서 그가 일하는데 필요한 정보를 쉽게 찾아볼 수 있는 시스템을 생각해낸 것이다. 각 페이지가 일종의 노드가 되고 새로운 노드는 기존 노드에 생성할 수 있는 하이퍼링크 시스템이였다. 오늘날 보면 위키와 비슷하다.

 

하지만, 계약이 끝나고 그가 만든 인콰이어는 8인치 플로피 디스켓으로 저장해서 남겼지만 그가 떠난 이후 소실되고 만다.

“오늘이 제 마지막 날입니다. 제가 그동안 만든 인콰이어라는 시스템인데, 제가 수집한 연구원, 컴퓨터, 각종 프로그램에 관한 정보가 담겨져 있습니다. 설치해서 사용해보세요”
“그동안 수고 많았습니다. 다른 사람들에게 전달하지요.”

 

다음편에 이어집니다.

 

[1] Weaving the Web, Tim Berners-Lee, 1999
[2] Mary Lee Berners-Lee obituary | Technology
[3] How the web was born, Gillies & Cailliau, Oxford university press, 2000

  • ?
    포토슬럼프 2021.04.21 13:42

    '오픈소스'이야기 너무 재미있게 잘 보고 있습니다. 고맙습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 최준호 - 프로그래밍의 깊은 세계로 들어가는 길 file Kevin 2018.04.22 1138
공지 허준회 - 더 나은 세상을 위한 소통 file Kevin 2018.04.22 669
공지 류창우 - 그냥 부담 없이 취미로 2 file Kevin 2018.04.22 558
공지 이희승 - 도전과 점진적 개선, 그리고 변화에 열린 마음 1 file Kevin 2018.04.22 1164
공지 김정균 - 자신을 발전시키는 소중한 공부 file Kevin 2018.04.22 488
공지 허태준 - 가장 의미 있고 즐거운 개발 file Kevin 2018.04.22 2588
공지 오픈소스 이야기 게시판 이용안내 3 file Kevin 2018.04.13 1632
77 오픈소스란 무엇인가요? 1 file Kevin 2018.06.01 11078
76 리눅스 생존 가이드 (리눅스 데스크탑 적응기) 2 file 행복한펭귄 2017.01.25 7201
75 리누스 토르발즈 기조연설 (리눅스 25년을 말하다) 2 행복한펭귄 2016.05.13 6919
74 2015년 주목받은 신인 오픈소스 SW 11선 행복한펭귄 2016.03.23 5812
73 깃허브, 오픈소스 소식 알리는 팟캐스트 ‘온에어’ 행복한펭귄 2016.03.23 5722
72 왜 굳이 리눅스를 써야하나? 행복한펭귄 2016.08.31 5613
71 꾸준히, 자유롭게, 즐겁게 : 한국 오픈 소스 개발자들 이야기 2 행복한펭귄 2016.08.24 5415
70 리누스 토발즈 강연 The mind behind linux 행복한펭귄 2017.01.19 5394
69 오픈소스 GUI 툴킷 Qt와 KDE 프로젝트의 시작 1 Kevin 2020.05.21 4388
68 X-윈도우와 Wayland 4 Kevin 2022.11.03 2949
67 FreeCAD 한국어 번역 함께 해 보아요 8 세벌 2019.06.26 2893
66 The C programming language 2nd edition 2 세벌 2018.05.11 2302
65 사내에서 눈치를 안 보고 오픈소스 프로젝트 하기 1 file PEACH 2018.05.07 2044
64 리눅스 이야기: 네트워킹 Kevin 2019.07.19 2006
63 리눅스 이야기: 운영체제를 만들자! 7 Kevin 2018.12.03 1954
62 X-Window 탄생 1 Kevin 2018.06.21 1917
61 깃허브 러닝랩 - 혼자서 아무것도 없이 깃허브 마스터 가능합니다. 2 file PEACH 2018.05.11 1854
60 리눅스 이야기: 리눅스 vs. 미닉스 2부 Kevin 2019.05.27 1648
Board Pagination Prev 1 2 3 ... 4 Next
/ 4
CLOSE