😃책에서 기억하고 싶은 내용을 써보세요 스스로 자꾸 물어보라. ‘내가 방금 한 일이 전체 시스템을 바꾸기 쉽게 만들었을까, 어렵게 만들었을까?’ 파일을 저장할 때마다 물어보라. 테스트를 쓸 때도, 버그를 수정할 때도 물어보라. 아무 실마리가 없을 경우 다음 두 가지를 해보라. 첫 번째로, 언제건 궁극의 ‘바꾸기 쉽게’라는 길을 선택한다. 두 번째는 이런 경우를 여러분의 직관을 발전시키는 기회로 삼으라는 것이다. 엔지니어링 일지에 현재 상황과 여러분의 선택, 그리고 변경 사항에 대한 추측을 정리해 둬라. 그리고 소스 코드에 이에 대한 표시를 남겨 둬라. 나중에 이 코드를 바꿔야 하는 시점이 왔을 때, 뒤를 돌아보고 자신에게 피드백을 줄 수 있을 것이다. 그러면 비슷한 갈림길에 다시 섰을 때 도움이 될 것이..
😃책에서 기억하고 싶은 내용을 써보세요 쉬운 정답은 없다. 도구든, 언어든, 운영 체제든 최고의 해결 방안 같은 것은 없다. 오직 특정한 환경 조건들마다 가장 적절한 시스템들이 있을 뿐이다. 바로 이것이 실용주의가 필요한 이유다. 어떤 특정 기술에 매이면 안 된다. 개별 상황마다 그 상황에서 좋은 해결 방안을 고를 수 있도록 충분한 배경지식과 경험을 쌓아야 한다. “우리가 단지 돌을 자를지라도 언제나 대성당을 마음속에 그려야 한다.” 실용주의 프로그래머의 특징 얼리 어댑터 또는 새로운 것에 빨리 적응하는 사람 호기심 많은 사람 비판적인 사고의 소유자 현실주의자 다방면에 능숙한 사람 자신의 기예에 관심을 가지는 사람 문제를 고치기 위해 노력하라. 하지만 너무 오랫동안 노력하지는 말라. 기술에 뒤쳐지는 ..