가장 존경하는 개발자는 누구예요?

개발자들 간의 대화에서 종종 나오는 질문 중 하나가

"가장 존경하는 개발자는 누구예요?"

입니다.

 

백엔드 개발자라면 로버트 C. 마틴(클린 코드), 마틴 파울러(리팩토링), 켄트 백(TDD)처럼

 

소프트웨어 개발 패러다임을 정립한 인물들을 꼽는 경우가 많습니다.

 

귀도 반 로섬(Python), 데니스 리치(C), 제임스 고슬링(Java)처럼 프로그래밍 언어를 창시한 인물들도 있으며,

 

컴퓨터 과학의 기초를 닦은 에츠허르 다익스트라,

 

오픈 소스 운동을 주도한 리처드 스톨먼과 리누스 토르발즈,

 

또한 혁신의 아이콘인 스티브 잡스를 존경하는 사람도 많습니다.

 

하지만 개인적으로 가장 존경하는 개발자는 브라이언 W. 커니핸(Brian W. Kernighan)입니다.

브라이언 W. 커니핸?

 

브라이언 커니핸은 1942년 캐나다에서 태어나, 토론토 대학에서 물리학 학사 학위를,

 

프린스턴 대학교에서 전기공학 박사 학위를 받았습니다.

 

말년(이자 현재 진행 중)에는 모교인 프린스턴 대학교에서 컴퓨터 과학과 교수로 재직 중입니다.

 

가장 두드러진 업적은 벨 연구소에서 근무하며 UNIX의 개발에 참여한 것입니다.

 

초기 Unix 커널 설계에는 어셈블리어가 사용되었는데, 플랫폼 종속성이라는 문제로 커널 설계 언어를 만들 필요가 있었습니다.

 

켄 톰슨(좌), 데니스 리치(우)

 

데니스 리치는 같은 팀의 켄 톰슨이 만든 B언어를 모태로 C언어를 만들었고,

 

커니핸은 C언어를 직접 설계하지는 않았지만, UNIX와 C언어의 대중화에 큰 역할을 했습니다.

 

특히 데니스 리치와 함께 집필한 "The C Programming Language"(K&R C)는 오늘날까지도 C언어 학습의 표준 교재로 활용되고 있습니다.

 

이외에도 "The Unix Programming Environment", "The Elements of Programming Style" 등의 저서를 통해 UNIX와 프로그래밍 스타일에 대해 널리 전파하기도 했습니다.

 

또한 커니핸-린 알고리즘(Kernighan–Lin algorithm), 린-커니핸 휴리스틱(Lin–Kernighan heuristic) 등도 만들었으며, AWK 언어와 AMPL의 개발에도 참여했습니다.

패러다임의 관찰자와 기록자

브라이언 커니핸은 UNIX와 C언어의 설계자가 아니라, 이를 기록하고 대중화한 인물입니다.

 

그는 새로운 패러다임을 창조하기보다는, 그것을 깊이 이해하고 체계적으로 설명하는 데 집중했습니다.

 

그의 저서들은 단순한 기술 설명을 넘어서, 독자가 스스로 사고하고 판단하도록 유도하는 편입니다.

 

단순히 "이 방법이 좋다"라고 설명하는 것이 아니라,

 

"이런 이유로 이 방법이 더 낫다"라는 방식으로 독자의 사고력을 확장시켜줍니다.

 

이는 그가 오랜 기간 교수로 활동하며 얻은 교육 철학이 반영된 것이 아닐까 생각합니다.

 

또한, 그는 UNIX와 C언어가 널리 퍼지는 데 중요한 역할을 했습니다.

 

새로운 기술이 아무리 뛰어나도 대중화되지 않으면 널리 사용될 수 없습니다.

 

커니핸은 UNIX와 C를 알리는 데 누구보다 적극적이었고, 이를 통해 소프트웨어 업계에 큰 영향을 미쳤다고 할 수 있겠습니다.

그래서 좋아하는 이유

브라이언 커니핸은 하나의 패러다임을 창조한 사람은 아닙니다.

 

그러나 새로운 패러다임을 깊이 이해하고, 이를 체계적으로 정리하여 전파하는 데 있어 독보적인 역할을 해냈습니다.

 

커니핸의 저서들은 단순한 프로그래밍 지침을 넘어서, 좋은 코드와 나쁜 코드의 차이를 이해하는 데 큰 도움을 줍니다.

 

추천 도서

 

한국에도 그의 다양한 저서가 번역되어 들어오고 있습니다.

 

물론 기술을 본격적으로 소개하는 저서들은 개발을 시작하는 비기너들이 읽기에는 조금 어려울 수 있습니다.

 

하지만 필체가 대단히 친절하고, 쉬우며, 다양한 케이스로 설명해주기 때문에

 

개발이 어느정도 익숙해진 초보자 정도라면 충분히 읽을 수 있습니다.

 

다음은 추천하는 저서들입니다.

 

https://product.kyobobook.co.kr/detail/S000001469800

 

프로그래밍 수련법 | 브라이언 W. 커니핸 - 교보문고

프로그래밍 수련법 |

product.kyobobook.co.kr

"프로그래밍 수련법(The Practice of Programming, 2008, 롭 파이크 공동저서)"

 

개발자라면 공통적으로 지키는 "관례""좋은 스타일"에 대해 매우 친절하게 알려줍니다.

 

난이도는 5점 만점에 2점 정도 된다고 생각합니다.

 

대부분의 코드가 C 기반이긴 하나, Python, Java 정도만 어느 정도 쓸 수 있어도 읽는 데에 전혀 문제는 없습니다.

 

 

https://product.kyobobook.co.kr/detail/S000001033125

 

1일 1로그 100일 완성 IT 지식 | 브라이언 W. 커니핸 - 교보문고

1일 1로그 100일 완성 IT 지식 | 복잡한 IT 세상을 선명하게 읽는 디지털 문해력 기르기 챌린지IT 지식은 분명 복잡하지만 인생처럼 혼잡하지는 않다. 필요한 지식을 습득하면 막연한 불안감에서 벗

product.kyobobook.co.kr

 

"1일 1로그 100일 완성 IT 지식(Understanding the Digital World, 2021)"

 

CS 지식과 개발과 관련된 일화들을 소개하는 (조금 난이도 있는) 교양 서적으로, 가볍게 읽기 좋습니다.

 

난이도는 5점 만점에 1.5점 정도 된다고 느꼈습니다.

 

https://product.kyobobook.co.kr/detail/S000001810293

 

유닉스의 탄생 | 브라이언 커니핸 - 교보문고

유닉스의 탄생 | 브라이언 커니핸이 들려주는 UNIX의 탄생과 발전 과정, 천재 개발자와 기여자들의 이야기이 책은 유닉스의 역사를 기록한 책이자 유닉스 개발 현장에 있던 이들의 회고록이다.

product.kyobobook.co.kr

 

"유닉스의 탄생(UNIX: A History and a Memoir, 2020)"

 

말 그대로 벨 연구소 시절 유닉스 개발 팀에서 겪었던 일들을 소개하는 책입니다.

 

UNIX에 대한 기본적인 이해는 물론, 이러한 "개발 비화"들을 좋아하는 사람들이 읽기 좋은 책입니다.

 

 

https://product.kyobobook.co.kr/detail/S000001533029

 

C언어 프로그래밍 | Brian W. Kernighan - 교보문고

C언어 프로그래밍 | ▶ 이 책은 C언어 프로그래밍에 대해 다룬 도서입니다. C언어 프로그래밍의 기초적이고 전반적인 내용을 학습할 수 있도록 구성했습니다.

product.kyobobook.co.kr

 

사실 K&R은 현대의 개발 입문서들에 비하면 상당히 어려운 편입니다.

 

기술을 직접적으로 알려주는 게 아니라, 이렇게 하면 안 된다. 이런 게 좋다. 식으로 설명하기 때문에,

 

입문서를 겸하는 고급 서적에 가깝다고 생각하는 편입니다.

'프로그래밍 트리비아' 카테고리의 다른 글

Python은 근본 웃음벨이다  (1) 2025.01.26
C언어는 Computer 언어가 아님  (1) 2025.01.26

+ Recent posts