학교에서 누구나 코딩을 배워야 한다: 는 질 낮은 개발자를 회사에 많이 공급해서 개발자 급여를 낮추고 이를 통해 회사가 이익증가 이유다 - 라는 논리
프로그래밍을 배웠지만 깊이 부족으로 불만스러운 사람들을 위한 책
프로그래밍의 단계
우주를 이해한다
3살짜리 아이에게 설명한다
현재 교육은 2번에 초점. 하지만 첫번째가 수반되어야함!
"대부분의 코딩 스쿨에서 프로그래머라면 꼭 배워야 하는 것처럼 가르치고 있는 애플리케이션 프로그램 개발은 다른 사람이 만든 기본 요소를 임포트 하는 방법과 이를 서로 붙이는 방법일 뿐이다. 이 기술만 사용해도 오랫동안 직업을 유지할 수 있지만, 각 블록을 붙이는 풀을 실제로 이해하면 훨씬 더 좋을것이다"
비트부터 시작하자
0과 1로 어떻게 온갖 큰 수와 소숫점과 마이너스값을 표현하는지 알려줌.
최적화에 최적화를 거듭한다 (e.g. 맨 왼쪽 비트는 1일테니 이를 생략해서 1비트를 더 사용하기, 특정 표현법이 0을 표현하는 방법이 2가지니 이를 더 빈틈없이 쓸 방법 찾기
)
이렇게 최적화에 대한 여러 사람들의 노력으로, 비트를 인코딩하는데 여러 표준이 있다.
컴퓨터가 0과 1을 어떻게 인식할까
근대에는 두 톱니바퀴를 돌려 상대적인 회전 속도로 곱셈, 나눗셈 등 계산함: 이를 통해 다이얼을 돌려 천문학 계산을 함. 복잡한 톱니바퀴를 통해 미적분 계산 가능.