본문 바로가기

테크니컬 라이팅

[마소 V.396 리뷰] 개발자의 새로운 도전 관점 바꾸기

반응형

저자의 명성(?)에 비해 너무 뻔한 이야기를 쓴 것이 아닌가 싶은 아쉬움이 있습니다. 하지만, 다양한 리소스를 예시로 들면서 이런 스토리를 엮어간다는 건 경험과 통찰력 그리고 노력이 뒤따르는 일이었겠지요.

 

"번역가 모모씨의 일일"이라는 책에서 일부 내용을 인용해 개발자의 글쓰기에 비유한 이야기가 인상적이었습니다. 이 문장이 없었다면 리뷰를 쓰지 않았을지도 모르겠습니다. 

...개발자의 1층은 갈고 닦은 개발 기술과 역량에 기반한 코드여야 한다. 꿈을 지켜주는 2층으로 책을 쓰거나 번역을 고려한다면, 읽기와 쓰기 훈련이 사건과 갈등, 문제 해결이 포함된 스토리를 만드는 최고의 스승이다. 기술자의 책은 전개되는 스토리 속에서 독자가 통제된 훈련 순서를 반복함으로써 일정한 수준의 기술을 익히도록 해야 한다. 따라서 개발자의 2층은 튼튼한 1층 없이는 존재할 수 없다...

 

남이 작성한 샘플 코드를 설명하는 건 어렵지 않습니다. 하지만, 짧은 코드라도 무언가를 설명하기 위해 코드를 만드는 작업은 결코 쉽지 않습니다. 이 정도면 되었을까 싶어도, 뭔가 자꾸 아쉬움이 남습니다. "끊임없는 노력"이라는 표현이 정말 적절하다는 느낌입니다.

...책에 들어간 샘플 코드는 저자가 설명하고자 하는 내용을 얼마나 깊게 이해하고 있는가에 대한 촌철 살인이다. 잘 만든 예제는 길고 복잡하게 묘사된 코드를 제거해 더 이상 제거할 것이 없는 상태로 만든 코드다. 촌철살인 코드를 작성할 수 있는 저자라면 자신이 쓰고 있는 주제를 열정적으로 탐구하고 더 잘 알기 위해 끊임없는 노력을 기울인 결과를 세상에 내어놓는다...

Photo by  Marc Kleen  on  Unsplash

아래 이야기는 약간의 반론을 하고자 합니다. "시간을 들여"라는 표현이 좀 모호합니다. 얼마나 시간을 들여야 하는 걸까 그리고 시간만 들인다면 괜찮은걸까 싶은 거죠. 일단 운동이라면 시간을 들인 만큼 결과는 만들어낼 수 있습니다. 물론 올바르지 못한 방법으로 운동을 계속한다면 시간을 들인 만큼 결과를 내지 못하겠지만요. 기술적인 부분 특히 개발과 관련해서는 그 차이가 더욱 커질 수 있습니다. 제대로 된 학습 방법을 선택하지 못한다면 엉뚱한 곳에서 헤매고 있을 가능성이 높습니다. 예를 들어 축구 게임을 한다고 했을때 그냥 시간만 들여서 게임을 아무리 오래 하더라도 슛과 관련된 키를 D만 알고 있다면 성장할 수가 없습니다. 전략이고 뭐고 다 필요없고, 기술 자체가 적절하게 사용되지 못한다는 거죠. 시간을 들일 때 새로운 기술을 배우고 학습하고 탐구하는 시간이 포함되어야 합니다. 아는 것만 계속 파고 든다고 해서 결코 성장할 수 없습니다 (물론 결코라는 건 없겠죠. 축구 게임 고수들을 보면 기술 따위는 한 가지만 쓰더라도 챔스에 가곤 하더군요 ㅠㅠ)

...연습과 꾸준함은 재미없는 단어다. '아재 감성'이 듬뿍 담긴 단어일지도 모르겠다. 고리타분한 충고라고 치부할 수도 있다. 하지만 '좀 할 줄 아는 사람'은 연습과 꾸준함에서 나온다. 글을 쓰고 싶고 책을 내고 싶다면, 먼저 시간을 들여 꾸준히 읽고 쓰기를 계속 연습해야 한다...
728x90