3장 기본 도구
도구는 재능을 증폭하고 생산성을 높인다.
아무리 흐린 먹물일지라도 가장 훌륭한 기억력보다 낫다.
16. 일반 텍스트의 힘
일반 텍스트는 그 자체만으로 의미를 드러낼 수 있다.
HTML, JSON, YAML 등은 모두 일반 텍스트
+) 유닉스 철학: 작고 예리한 각각의 도구가 한 가지 일만 잘하도록 만들자
17. 셸 가지고 놀기
텍스트 파일을 다루는 프로그래머에겐 명령어 셸이 작업대이다.
GUI보다 작업 자동화와 가용한 역량을 온전히 사용하는 데에 장점이 있다.
GUI는 설계자가 의도한 범위 내에 제한된다.
개발자도 셸을 자기에게 맞추어야 한다.
- 색 조합
- 프롬프트 설정
- alias와 셸 함수
- 명령어 자동 완성
18. 파워 에디팅
에디터를 여러 개 쓸 거라면 각각에 유창해지도록 해라
유창하다는 건 검색, 편집, 이동 등의 과정을 마우스나 트랙패드 없이, 생각하지 않고 사용할 수 있는 것
필요한 기능이 없다면 확장 기능을 찾아보고, 만들어진 것이 없다면 직접 만들어 봐라
19. 버전 관리
버전 관리 시스템은 일종의 거대한 실행 취소 버튼
소스 코드가 아닌 문서나 메모, 셀 스크립트 등도 버전 관리 아래에 두어라.
20. 디버깅
디버깅의 1법칙: 당황하지 말라
버그가 발생하는 상황을 다른 것들에서부터 분리해 본다.
22. 엔지니어링 일지
진행 중인 작업과 직접적인 관계가 없는 발상을 일단 쌓아놓을 수 있다.
새로운 생각을 잊어버릴 걱정 없이 지금 하는 일에 집중할 수 있다.
'TIL' 카테고리의 다른 글
실용주의 프로그래머 5장: 구부러지거나 부러지거나 (0) | 2024.07.20 |
---|---|
실용주의 프로그래머 4장: 실용주의 편집증 (0) | 2024.07.04 |
실용주의 프로그래머 2장 (0) | 2024.06.22 |
[Docker] Docker 기본 개념 (0) | 2024.01.09 |
Docker Container (1) | 2024.01.05 |