좋은 평가를 받는 부류는 3가지다. 재능있는 놈, 성실한 놈, 포장을 열심히 하는 놈.
3번째는 HR의 무능이니 내 알 바가 아니고, 내가 후배들을 가르칠 때는 성실한 놈을 어떻게든 재능있는 놈으로 만들려고 코스를 짠다.
프로그래머라는 존재의 본질이 무엇인가. 게으름, 효율집착, 1시간 반복을 하기 싫어서 2시간 로직을 만드는 건 또 달가운 모순적 효율지향체다. 성실하다는 건 이미 이 바닥에선 본질과 어긋나있는 미덕이다. 성실로 성공할 수도 있기는 하나 성실로는 해커가 될 수 없으므로 나는 훈련에 있어서 철저하게 반성실 친재능 노선을 택한다. 인내로 버티는 건 비효율이라 그런 성공 따위는 안 하고 만다는 게 이 동네 사람들이다. 잘 하게 되면 엉덩이는 저절로 무거워진다. 독한 놈이 24시간을 버텼다 만족해봐야 재밌어서 하는 놈은 72시간 뒤에 나온다. 물론 그가 나오는 이유는 시간이 되어서가 아니라 하던 게 다 끝났으니까 나오는 거다.
그렇다면 도대체 어떻게 노력밖에 못 하는 친구를 잘 하는 사람으로 만들 것인가. 원리는 간단하다. 잘 하면 재밌고 재밌으면 더 잘 한다. 이 영겁의 쳇바퀴를 굴릴 수 있도록 한 번 돌려만 주면 끝이다.
여기서 아주 간단한 기초 훈련법을 한 가지 소개한다. 이것은 어렵지도 힘들지도 않지만 효과는 확실하다. 이걸 알려줬을 때 실행하는 사람이라는 것부터가 이미 잘 하는 사람이 될 싹이다. 방법은 간단하다. 공부할 무언가 한 가지를 임의로 정해보자. OS도 좋고, 프레임웍도 좋고, 프로그래밍 언어도 좋다. 이제 큰 맘 먹고 나아가야 할 지점은 고작 집 앞이다. 단 3가지만 하자. 설치, 튜토리얼, 그리고 끝.
이게 전부라고? 의아하겠지만 초심자는 연쇄적인 에러 메세지 탓에 이조차도 하루만에 끝내기 어려울 것이다. 충분히 큰 훈련이다. 지루하지도 어렵지도 않은 효과 좋은 훈련이다. 그리고 피트니스 클럽에 가서 늘 하듯이 같은 세트를 두 번 더 반복한다. 여러분의 IT 근력은 점차 증가한다.
예를 들면 어느 1학년의 운동 스케쥴은 이렇게 될 수 있다. 1일차 Ubuntu 설치 후 세팅 -> 2일차 golang 설치 후 hello world -> 3일차 NextJS 프로젝트 생성 후 hello page -> 4일차 Ubuntu 설치 후 세팅 -> 5일차 golang 설치 후 hello world -> 6일차 NextJS 프로젝트 생성 후 hello page -> 7일차 Ubuntu 설치 후 세팅 -> 8일차 golang 설치 후 hello world -> 9일차 NextJS 프로젝트 생성 후 hello page.
이까짓 걸로? 싶겠지만 저 1학년은 9일만에 2학년보다 뛰어나졌다. 장담한다. 6개월 뒤쯤에는 이 훈련이 효과가 있었음이 느껴질 것이다. 그리고 이 넓은 짐에는 해야할 운동기구도 많이 널려있다. python 써보고, pyenv 써보고, uv 써보고 무게 올리듯이 차츰차츰 해야할 튜토리얼이 잔뜩 기다리고 있다.
F코드를 짚을 줄 알게 되면 억지로 시키지 않아도 연주를 해보고 싶어진다. 성장의 영역은 다 그렇다. 정점에 다가갔을 때의 재능과 성장할 때의 재능은 서로 다른 말이다. 지금은 하고 싶고 시간 쏟고 싶어지는 게 재능이다. 프로그래머라면 성실하지 마라. 최대한 요령을 피워서 점점 더 재밌어 하라.
