use data to make logic simple
- make DSL
- do not mix logic and data construction
Proverbs
Philosophy, Viewpoint, Programmer
책
- 실용주의 사고와 학습
- Little Bets
Philosophy, Viewpoint, Programmer: Advanced
- SICP
- 패턴, 위키, 그리고 XP
Programming fundamental
programming is to make a language system (pattern language)
책
- Refactoring 2/E
- Kent Beck, Implementation Patterns
- Robert Martin, Agile Software Development
TDD, Baby step
Baby Step, Red bar-Green bar, TDD
short feedback cycle (loop)
bowling kata by robert martin
책
- Kent Beck, Test Driven Development
- Specification by Examples
Testing & Debugging
eliminate intermediate layers
regression test
Collaboration
pair programming: perform outstanding with other juniors
To learn well from experts
책
- Kent Beck, Extreme Programming Explained