Graphics Programming

종이책을 버리다 본문

Season 2

종이책을 버리다

minseoklee 2019. 12. 17. 01:46

종이책에 무슨 미련이 그렇게 있었는지 차곡차곡 쌓다가 드디어 버릴 결심을 했다. 컴퓨터 책상 옆에 보조 책상을 놔뒀는데 금방 책으로 가득 차서 뭘 하지 못하게 된 것도 있고, 몇 년째 펼치지 않은 책도 허다하고, 더이상 내 인생과 상관이 없을 것 같은 책들도 있다.

무엇보다 이사할 때 힘들어 죽겠다. 가구나 전자제품 같은 보편적인 이삿짐은 적은데 책 싸느라 항상 고생이 이만저만 아니었다.

막상 그대로 내다버리기는 또 미련이 남아서 빠르게 훑어보고 컴퓨터에 정리한 다음 버리는 책도 있다. 교양서, 소설, 쓸모 없는 전공서적, 이제는 관심 없는 프로그래밍 서적 등을 버리고 있다.

Introduction to Wireless & Mobile Systems

대학교에서 배운 무선이동통신. 큐잉 이론에 관한 수학은 재밌었는데 그 외에는 별로 재미 없었다.

예전에는 셜록 홈즈, 애거서 크리스티, 히가시노 게이고 등 유명한 작가들의 추리 소설을 많이 읽었다. 뤼팽 전집도 읽은 기억이 나는데 뤼팽은 추리 소설이라기보단 모험 소설에 가까웠던 것 같다. 추리 소설을 몇십 권 읽었지만 직접 추리하는 건 관심이 없었다. 그냥 사건이 벌어지고 탐정이 추리하는 과정을 읊어주는 게 재미있었다. 직접 추리할려니 골이 아파서 몇 개 풀어보다가 말았다.

게임 레벨 디자인에 관심이 많았을 때 샀던 책. 하지만 내용이 기대했던 것과 크게 달랐다. 무슨 말인지도 모르겠고 너무너무 지루해서 별로 주의깊게 읽지 않았었다. 이번에 다시 펼쳐보니 역시 재미없어서 그냥 덮었다.

대학교에서 인공지능 혼자 공부한다고 산 것 같은데... 정말 개론이여서 내용이 얕다. 공학적으로 뭔가를 배울 수 있는 책도 아니고 올해에 심층 학습을 사서 (물론 안 보고 있음) 이제 필요 없다.

예전에 취업하기 전에 혼자 게임 완성해보고 싶어서 시나리오 쓰는 용으로 샀던 것 같다. 완성한 게임이 없으니 실패한 계획이었다. 이런 책 읽는다고 시나리오가 뽑히는 것도 아니어서 플롯이 굉장히 어설펐다. 이제 회사에서는 프로그래밍만 하면 되니까 상관 없는 일이다.

고등학생 때 샀던, 프로그래밍 책도 아닌데 왜 샀는지 도무지 기억이 나질 않는 책이다. 10년이 넘었으니 -_- 아마 그 때도 읽어보고 이걸 왜 샀지 했을 것이다.

회사 다니며 프로그래밍에서 가장 생각을 바꾼 주제를 꼽으라면 디자인 패턴이다. 대학생까지는 마냥 OOP 원칙이나 디자인 패턴이 킹갓인 줄 알았고 뭐든지 이걸 따라서 설계해야 하는 줄 알았다. 하지만 프로그래밍으로 해결하는 문제 영역은 아주 다양하고 각 영역마다 고유의 해법이 있다. 익숙한 게임 프로그래밍을 예로 들어보면 상속이니 추상화니 하는 것보단 수행 시간, 분기 제거, 캐시 히트, 메모리 절약 등이 중요한 서브시스템들이 많다.

프로그램을 만들 때 Data-Oriented Design과 Object-Oriented Design을 완전 배타적으로 채택해야 하는 건 아니다. 프로그램의 가장 꼭대기는 OOP로 설계하고 밑바닥에선 효율적인 데이터 처리를 고민하는 게 당연하지만, OOP 책들을 읽어보면 그런 데이터의 효율적인 처리가 중요한 수준까지 침범해서 온갖 클래스와 메서드로 쪼개놓곤 한다.

스크립트 언어로 코딩을 시작해서 C++을 메인 언어로 쓰게 되고, 하스켈 같은 별 거지 같은 언어도 맛본 뒤 내린 결론은 지금의 하드웨어에서는 모든 언어가 어차피 어셈블리나 ISA로 통한다는 것이다. C/C++은 여기에 가장 근접한 대중적인 언어고. 여러 10년차 프로그래머들에게 파이썬 같은 언어가 더 좋다는 말을 듣는데 이유를 모르겠다. 프로그래머는 좀 더 로우 레벨에 가까워야 하지 않을까.

아마도 처음으로 산 알고리즘 대회용 책이다. 쉬운 알고리즘 문제를 우연히 풀어보고 흥미가 생겨서 샀는데 첫 문제들부터 안 풀리니까 바로 흥미를 잃고 쳐박아뒀던 것 같다. 이 때 열심히 했으면 몇 년 뒤에 ACM-ICPC 대회에 나가서 후회를 안 했을 텐데. 급하게 3개월 공부하고 팀원 버스 받으면서 간신히 동상을 탔었는데 내가 그동안 공부를 했었다면 두 문제 정도 더 풀어서 은상은 탔을 것이다. 어쨌든 이제는 알고리즘 대회도 접었고, 온라인으로 연습할 수 있는 좋은 사이트가 많아서 필요 없어졌다.

그 외에도 몇 권 더 버렸지만 책장을 보니 티도 안 난다. 그나마 닌텐도 스위치 끼워넣을 자리는 생겼다. 몇 권이나 더 버릴 수 있을까...

Comments