[실용주의 프로그래머] 1장_실용주의 철학

szlee·2022년 5월 20일
0

1장을 읽었을 때, 단순히 프로그래머를 넘어 한 사람의 인생에도 적용될 수 있는 글이 많다고 느껴졌다.
'프로그래밍 서적 + 자기개발서' 의 느낌이랄까?
그도 그럴 것이 첫번째 토픽의 주제는 '당신의 인생이다' 이다.




📚 당신의 인생이다

당신에게는 스스로의 행동을 직접 결정할 수 있는 힘이 있다.
업무 환경이 엉망인가? 하는 일이 지루한가? 문제를 고치기 위해 노력하라.
이 업계는 여러분에게 놀랄 만큼 다양한 기회를 준다.
주도적으로 행동해서 그 기회를 잡아라.

'주도적으로 행동' 하는 것은 지금 내가 있는 회사에서 중요한 키워드인 것 같다.
회사의 문화 자체가 '내가 충분한 시간을 줄테니 알아서 공부해보고 무엇이든 질문해' 여서,
처음에는 무엇을 공부해야하는지, 어디까지 알아보고 질문을 해야하는지도 깜깜했다.
사실 지금도 마찬가지...

스프링부트, JPA, AWS 와 같은 최신기술을 공부하다가 입사한 회사에서는 스프링, iBatis, Oracle을 쓸 때, 구글에 검색했을 때 게시물이 죄다 5년전 이상일 때 솔직히 의욕이 떨어졌던 것도 사실이다.

하지만 나는 주도적으로, 적극적으로 이를 변화시키려는 노력을 하지 않았다.
시스템 자체를 변경하기에 리소스가 너무 많이 든다는 말씀에 수긍할 수 밖에 없었던 것도 있지만, 괜히 일벌이다가 사고치지 말고 주어진 것이나 잘하자 마인드였다.

쿼리를 직접 작성하며 쿼리 공부를 할 수 있다는 장점이 분명 존재하지만 계속 아쉬움이 느껴진다면
개인 프로젝트, 개인 공부로 채우기 vs 이를 충족시켜 줄 회사로 이직하기
둘 중 하나일 것 같다.
그리고 이 둘 중 어느 것을 선택하든 '주도적으로 행동해서 기회를 잡는' 행위일 것이다.





🙀 고양이가 내 소스 코드를 삼켰어요

약점을 보이는 것에 대한 두려움이 가장 큰 약점이다. - J.B.보쉬에

실용주의 철학의 초석 중 하나는 자신과 자신의 행동에 대해 책임을 지는 것이다.
실용주의 프로그래머는 자신의 경력에 대해 책임을 지고 자신의 무지나 실수를 주저 없이 인정한다.

변명 말고 대안을 제시하라. 안된다고 하지 말고 상황을 개선하기 위해 무엇을 할 수 있는지 설명하라.

모르는 것을 모른다고 말하고, 나의 실패를 인정하는 것은 쉬운데 어려운 일이다.
모른다고 하면 나를 형편없게 보지 않을까 바보로 보지 않을까 두려웠다.
그러나 아는 척을 하는게 훨씬 형편없는 일이라고 생각한다. 아는 척은 아는게 아니기 때문에 금방 탄로나버리기 때문이다.





🤯 소프트웨어 엔트로피

엔트로피 : '무질서'한 정도를 나타내는 물리학 용어.
소프트웨어의 무질서가 증가할 때 = 소프트웨어의 부패 = 기술 부채
-> 은연중에 언젠가는 갚을 수 있다는 뉘앙스를 풍기나 아마 갚지는 않을 것.

깨진창문.
절망감이 전염. 부정적인 생각이 팀원들 사이로 퍼져서 악순환을 만듦.
다른 사람들이 아무도 주의를 기울이지 않는다는 걸 알기에 사람들이 엔트로피에 대항해 싸울 의지를 잃는다.
-> 깨진 창문을 내버려 두지 말라. 나쁜 설계, 잘못된 결정, 혹은 형편없는 코드 등이 모두 깨진 창문이다. 발견하자마자 바로 고쳐라. 시간이 없다면 일단 판자로 덮는 것만이라도 하라.

사내 프로젝트의 코드를 보면 현재 쓰지 않는 듯 뭉탱이로 주석처리 된 코드, 알 수 없는 테이블명, 알 수 없는 변수명, 알 수 없는 컬럼명이 너무 많았다.
이를 알아내는 데까지 시간이 너무 많이 걸렸고 매우 비효율적인 과정이었지만 어느 순간 기존의 코드 기조와 비슷하게 코드를 작성하고 있는 나를 발견했다.
개발자는 변수명 지을 때 가장 고민을 많이 한다던데 나는 조금의 고민도 없었다.
'깨진창문'이 그대로 적용되고 있었다.





🪨 돌맹이 수프와 삶은 개구리 🐸

돌맹이를 내놔라. 큰 무리 없이 요구할 수 있을 만한 것을 찾아라. 그리고 그걸 잘 개발하라.
일단 무언가 생기면 사람들에게 보여 주고 그들이 경탄하게 하라. 그러고는 "물론....를 추가하기만 하면 더 나아질 수도 있겠죠." 라고 말하면서 그다지 중요하지 않은 척 가장하라. 물러나 앉아 여러분이 애초에 원했던 그 기능을 추가해 달라고 사람들이 부탁하기 시작할 때까지 기다려라.
계속되는 성공에 합류하기란 쉽다. 미래를 살짝이라도 보여 주면 사람들은 도와주기 위해 모여들것이다.

차가운 물이 든 냄비에 개구리를 넣고 조금씩 물을 덥히면 개구리는 온도가 서서히 오르는 것을 감지하지 못할 것이고, 결국은 삶아질 때까지 그냥 그대로 있을 것이다. -> 변화를 감지하지 못하는 개구리.
큰 그림에 늘 주의를 기울여라. 당장 하고 있는 일에만 정신을 쏟지 말고, 주변에서 무슨 일이 벌어지는지 늘 살펴보라.

돌맹이 수프, 개구리 이야기는 삶 자체에도 적용되는 이야기.
대화의 스킬은 언제나 중요하고, 변화를 감지하지 못하고 외곩수처럼 하나를 죽어라 파는 것도 문제가 될 수 있다.

profile
🌱

0개의 댓글