Scientia Conditorium

오랜 프로그래머로부터의 조언 본문

일상/에세이

오랜 프로그래머로부터의 조언

크썸 2022. 5. 8. 23:51

원본 링크 : https://j.mearie.org/post/6038530297/advice-from-an-old-programmer

 

오랜 프로그래머로부터의 조언

여러분은 이 책을 끝냈고 프로그래밍을 계속 하기로 마음먹었습니다. 그게 미래의 직업일 수도 있고, 그냥 취미일 수도 있습니다. 그리고 둘 중 맞는 방향을 찾으려면, 그리고 새로 선택한 취미에서 최대한 즐거움을 얻으려면 약간의 조언이 필요할 겁니다.

 

저는 지겨울 정도로 프로그래밍을 아주 오랫동안 해 왔습니다. 이 글을 쓰는 시점에서 저는 대략 20개의 프로그래밍 언어를 알고 언어에 따라 차이는 있지만 하루에서 1주면 새로운 언어를 배울 수 있습니다. 물론 새 언어를 이런 식으로 배우는 건 이제 지겹고 더 이상 관심사가 될 수 없었죠.

 

제가 이 과정에서 깨달은 것은, 언어는 전혀 상관이 없고, 언어를 가지고 뭘 하느냐가 상관이 있다는 사실입니다. 사실 그걸 모르는 건 아니었지만 언어에 정신이 팔려서 매번 잊고 있었죠. 이제 저는 더 이상 그 사실을 잊지 않고, 여러분 또한 잊으면 안 됩니다.

 

당신이 어떤 프로그래밍 언어를 배우고 쓰는지는 아무 상관이 없습니다. 프로그래밍 언어를 둘러싼 종교들에 빠지지 말고, 언어의 참 목적은 재밌는 일을 하는 도구라는 점을 잊지 마세요.

지적 활동으로서 프로그래밍은 상호 작용이 가능한 예술의 유일한 형태입니다. 당신이 프로젝트를 만들고 다른 사람이 그 프로젝트를 가지고 놀면, 당신은 그 사람에게 간접적으로 이야기를 하고 있는 겁니다. 다른 예술 형태는 이 정도로 상호 작용이 가능하지 않지요. 영화는 관중에게 일방적으로 메시지를 전하고, 그림은 움직이지 않는데 코드는 둘 다 가능합니다.

 

직업으로서 프로그래밍은 아주 재미있는 것은 아닙니다. 좋은 직업이 될 수는 있습니다만, 만약 같은 돈을 갖고 더 행복해지려면 그냥 패스트 푸드점을 차리는 게 더 나을 겁니다. 다른 직업에서 프로그래밍을 자신의 비밀 무기로 삼는 게 프로그래밍 자체를 직업으로 삼는 것보다 더 좋은 선택입니다.

 

기술 산업의 세계에서 코딩을 할 수 있는 사람은 눈꼽만큼밖에 돈을 벌지 못하고 존경 또한 받지 못합니다. 반면 생물학, 의학, 정부 관련 일, 사회학, 물리학, 역사학, 수학 등을 하면서 코딩을 할 수 있는 사람은 존경받으며 자기 분야를 발전시키기 위해 놀라운 일 또한 할 수 있습니다.

 

물론, 이 모든 조언은 쓸모가 없지요. 만약 여러분이 이 책을 읽으며 프로그래밍 배우는 걸 즐겼다면, 그걸 다른 누구가 아닌 당신의 인생을 좀 더 좋게 하기 위해 쓰세요. 나가서 이 (좀 기괴하지만) 아름답고 지난 50년간 거의 아무도 탐험할 수 없었던 지적 세계를 탐험해 보세요. 가능할 동안은 즐겨도 보시고요.

 

마지막으로, 저는 소프트웨어를 만드는 걸 배우는 게 여러분을 바꾼다고 말하고 싶습니다. 나빠지거나 좋아지는 게 아니라, 그냥 다른 사람으로요. 종종 소프트웨어를 만들 수 있다는 이유만으로 "괴짜” 같은 말을 쓰면서 여러분을 거칠게 대하는 사람들을 볼 수 있을 겁니다. 어쩌면 여러분은 논리적으로 그들의 주장을 논파할 수 있기 때문에 그들이 여러분과 논쟁하는 걸 싫어한다는 걸 알게 될 지도 모릅니다. 아니, 그냥 컴퓨터가 어떻게 동작하는지 아는 것만으로 여러분을 짜증나고 이상한 사람으로 보는 이들도 보게 될 겁니다.

 

여기에 대해서 제 조언은 하나 뿐입니다: 그들은 지옥에 갈 것입니다. 이 세상에는 물건들이 어떻게 작동하는지 알고 그걸 깨닫는 걸 사랑하는 “이상한” 사람들이 더 필요합니다. 만약 그들이 여러분을 그렇게 대한다면, 이것은 여러분의 여행이지 저들의 여행이 아님을 기억하세요. 다른 것은 죄가 아니고, 그게 죄라고 말하는 사람들은 단지 그들이 꿈속에서조차 얻을 수 없는 기술을 가진 게 샘이 나서 그러는 것 뿐입니다.

 

여러분은 코드를 짤 수 있습니다. 그들은 못 합니다. 이건 정말 멋진 겁니다.


좋아하는 프로그래머 고수분들이 트위터를 자주 애용해서 나도 올해초부터 시작하였다.

그러다가 우연히 좋은글을 발견하였기에 여기에 남겨놓는다.

위 에세이에서 공감되는 내용이 무진장 많았다.

1. 언어는 전혀 상관이 없고, 언어를 가지고 뭘 하느냐가 상관이 있다는 사실입니다.

- 처음 프로그래밍을 시작하는 사람들이 묻는 대표적인 질문이다. 어떤 언어를 공부해야 하는가. 그러나 언어는 중요하지 않다. 언어를 가지고 무얼 하느냐가 더 중요하다. 사람들이 파이썬을 많이 사용하는 이유는 데이터 타입이 없는 것과 머신러닝에서 강세를 보이기 때문이다. 머신러닝에서 강세를 보이는 이유도 numpy라는 라이브러리 때문이다. 거두절미하고 가장 중요한건 무엇을 할건지를 정하는 것이 가장 중요하다. 이 언어가 어떻고 저 언어가 유행이고 이딴건 전혀 중요하지 않다. 일단 무엇을 할건지부터 확실하게 정해야 한다.

 

2. 직업으로서 프로그래밍은 아주 재미있는 것은 아닙니다.

- 알고리듬 문제를 매일매일 풀어야하며, 그림으로 나타내면 간단한 작업을 컴퓨터 상에서 돌아가게 하기 위해 논리규칙 머리 싸매면서 고민해야하는 직업이다. 그럼에도 불구하고 이 직업을 선택한 이유는 그 과정을 해결했을 때 느낄 수 있는 성취감 때문이다.

 

3. 여러분은 코드를 짤 수 있습니다. 그들은 못 합니다. 이건 정말 멋진 겁니다.

- 프로그래밍을 할 줄 몰랐을 때에는 천재들만 하는 영역으로 생각했다. 그러나 이제는 아니다. 나 역시 프로그래밍을 할 줄 안다. 컴퓨터를 이용해 복잡한 알고리듬을 작성하고 컴퓨터 화면에 무언가를 나타나게 하는 과정을 즐긴다. 이건 정말 멋진 작업이다. 그렇기 때문에 이 작업을 같이할 사람들이 많아졌으면 한다. 그러나 요즘 개발자들 돈 많이 번다더라 라는 말에 혹해서 이 분야를 선택하는 사람들은 없었으면 하는 마음이다.