소프트웨어 개발 업계 종사자를 위한 현장감 있고, 삐딱하고, 대담한 조언들
튜링상 수상자 도널드 E. 커누스 추천 도서
15년 넘게 수많은 코더와 IT 업계 종사자들에게 현장의 날카로운 통찰력을 공유해 온 Kode Vicious는 프로그래머들이 현업에서 겪는 중차대한 문제들에 관한 핵심적인 조언을 전한다. ACM Queue와 Communications of the ACM에 게재된 KV의 칼럼들 중 가장 인기 있는 주제를 꼽아 수록한 첫 번째 칼럼집에서 그는 여전히 개발 업계에서 논쟁을 일으키고 있는 주제들, 코드부터 사람 사이의 관계까지 폭넓게 다루며 문제 해결의 실마리를 제공하고 있다.
KV의 오랜 경험에 기반한 이 실용적인 조언들은 시스템 세부사항과 기능 확장 방법을 탐구하는 열정적인 프로그래머, 실무를 위한 프로그래밍 및 협업에 관한 조언을 얻고자 하는 이들을 비롯해 코딩을 평생의 업으로 삼고 있는 모든 개발자들이 반드시 알아야 할 내용들로 구성되었다.
Contents
도널드 E. 커누스의 추천사
서문
감사의 말
역자의 말
저자 및 역자 소개
베타 리더의 말
[CHAPTER 1] 손 안의 코드
1.1 자원 관리
1.2 크고 아름다운 메모리
1.3 친절한 코드
1.4 코드 남용
1.5 중첩 경향
1.6 질식할 것만 같은 변경사항들
1.7 저주받은 코드
1.8 강요된 예외
1.9 누워서 떡 먹기... 아니 코드 보기
1.10 무언가 썩었는데...
1.11 로그 남기기
1.12 분실물
1.13 복사하기
1.14 코딩할 때 짜증나는 다섯 가지
1.15 언어들 속에서 길을 잃다
1.16 체크인 주석
[CHAPTER 2] 코딩 수수께끼
2.1 메서드를 위한 찬가
2.2 C++는 얼마나 +된 건가?
2.3 세련되고 모던한 무언가
2.4 캐시 미스가 뭐죠?
2.5 코드 동굴탐험
2.6 입력 검증
2.7 문서화 흥정하기
2.8 Foo 필드에는 뭐가 있는 거야?
2.9 성깔 있는 테스터
2.10 테스트 방법
2.11 테스트 모드를 그대로 두세요!
2.12 유지보수 모드
2.13 일찍 머지하기
2.14 멀티코어 만티코어
2.15 이건 제품이 아니야
2.16 하이젠버그(Heisenbugs)
2.17 나는 당신의 PDF 따위 원치 않습니다
2.18 PIN 코드 관리
2.19 재부팅
2.20 코드 스캐너
2.21 하드웨어 디버깅
2.22 분별성 vs. 가시성
[CHAPTER 3] 시스템 디자인
3.1 추상화
3.2 내몰리다
3.3 재방문 유도
3.4 가역적 변경(Changative Changes)
3.5 바늘에 실 꿰기(thread the needle)
3.6 스레드는 여전히 안전하지 않은가?
3.7 인증 vs. 암호화
3.8 다시 인증으로
3.9 예시로 보는 인증
3.10 크로스 사이트 스크립트
3.11 피싱(phishing)과 감염
3.12 UI 디자인
3.13 안전한 로그 남기기
3.14 Java
3.15 P2P 보안
[CHAPTER 4] 기계에서 기계에게
4.1 발가락 밟기
4.2 부족한 포트
4.3 프로토콜 디자인
4.4 뭐가 먼저야?
4.5 네트워크 디버깅
4.6 지연 시간(latency)
4.7 장거리 주행
4.8 네트워크는 컴퓨터다
4.9 확장 실패
4.10 포트 대기열
4.11 야생의 네트워크
4.12 의미없는 PKI
4.13 표준 위에 표준
[CHAPTER 5] 사람과 사람
5.1 오만과...
5.2 무슨 색깔이게...?
5.3 깨진 빌드
5.4 지능이란?
5.5 디자인 리뷰
5.6 호스트 이름 짓기
5.7 면접 진행
5.8 미신
5.9 구닥다리 코더
5.10 큰 힘에는...
5.11 편지
5.12 티켓에 있어
5.13 드라이버와 망치
5.14 보안 리뷰
5.15 다시 일하기
5.16 오픈소스 라이선스
5.17 너무 많은 표준들
5.18 책들
5.19 (한 번 더) 책들
5.20 최신 정보 유지
5.21 마지막 조언
색인
크레디트
Author
조지 V. 네빌-닐,황건구
보안, 네트워크, 운영체제를 해킹하고, 글을 쓰고, 학생들을 가르치고, 현업자의 문제에 대한 컨설팅을 하고 있다. 2004년부터 Kode Vicious를 써온 그는 FreeBSD 재단의 이사이자, ACM Queue의 편집진이며, Usenix 협회, ACM, IEEE의 회원이기도 하다. 공동 집필한 도서로 『The Design and Implementation of the FreeBSD Operating System, Second Edition』이 있다.
보안, 네트워크, 운영체제를 해킹하고, 글을 쓰고, 학생들을 가르치고, 현업자의 문제에 대한 컨설팅을 하고 있다. 2004년부터 Kode Vicious를 써온 그는 FreeBSD 재단의 이사이자, ACM Queue의 편집진이며, Usenix 협회, ACM, IEEE의 회원이기도 하다. 공동 집필한 도서로 『The Design and Implementation of the FreeBSD Operating System, Second Edition』이 있다.