Contents
use data to make logic simple
- make DSL
- do not mix logic and data construction
Proverbs
Philosophy, Viewpoint, Programmer
책
last 5% automation
craft, not science
The Eisenhower Matrix
Philosophy, Viewpoint, Programmer: Advanced
programming is to make a language system. make vocabulary. take a look at Peter Norvig's code (pattern language, lisp hackers)
- SICP
- 패턴, 위키, 그리고 XP
Programming fundamental
공통점과 차이점 찾기. 공통점을 공유하고, 차이점을 처리할 수 있는 기법을 습득한다. (OOP 다형성, 고차함수 등)
책
- Refactoring 2/E
- Kent Beck, Implementation Patterns
- Robert Martin, Agile Software Development
TDD, Baby step, Evolutionary Design
Baby Step
quickly step back to closest green-bar when you see red bar
TDD is a design activity
short feedback cycle (loop)
bowling kata by robert martin
micro commit, one at a time
isolation
책
- Kent Beck, Test Driven Development
- Specification by Examples
Testing & Debugging
eliminate/reduce intermediate layers
regression test
Collaboration
take a look at extreme programming, not scrum, if you are a software developer. it includes a lot of effective technical principles.
pair programming: perform outstanding with other juniors
책
- Kent Beck, Extreme Programming Explained
Learning, Expertise
To learn well from experts (CTA, CDE)
- 실용주의 사고와 학습
See Also: 프로그래밍 추천 도서