|
Size: 1064
Comment:
|
Size: 3083
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 2: | Line 2: |
<<TableOfContents(2)>> |
|
| Line 6: | Line 9: |
| * | * do not mix logic and data construction == Proverbs == * [[http://www.agile-process.org/proverbs.html|Agile Process Proverbs]] |
| Line 9: | Line 16: |
| == Philosophy, viewpoint, Programmer == | == Philosophy, Viewpoint, Programmer == |
| Line 14: | Line 21: |
| * [[책/ApprenticeshipPatterns]] * 실용주의 사고와 학습 * Little Bets |
* LittleBets |
| Line 18: | Line 23: |
| * [[책/AreYourLightsOn]] last 5% automation craft, not science SoftwareArchitecture. [[AOSA]] prefaces. The Eisenhower Matrix Make it work, then make it better. problem space, solution space ... == Philosophy, Viewpoint, Programmer: Advanced == programming is to make a language system. make vocabulary. take a look at Peter Norvig's [[https://github.com/norvig/pytudes/blob/main/ipynb/Advent-2020.ipynb|code]] (pattern language, lisp hackers) * [[책/TheTimelessWayOfBuilding]] * SICP * 패턴, 위키, 그리고 XP |
|
| Line 21: | Line 49: |
공통점과 차이점 찾기. 공통점을 공유하고, 차이점을 처리할 수 있는 기법을 습득한다. (OOP 다형성, 고차함수 등) |
|
| Line 26: | Line 56: |
| * SICP | * Robert Martin, Agile Software Development |
| Line 29: | Line 59: |
| == TDD, Baby step == | == TDD, Baby step, Evolutionary Design == |
| Line 31: | Line 61: |
| Baby Step, Red bar / Green bar, TDD | Baby Step quickly step back to closest green-bar when you see red bar TDD is a design activity ([[https://www.youtube.com/watch?v=d5Y1B1cmaGQ|DbC]]: Design by Coding) |
| Line 37: | Line 71: |
| [[https://www.industriallogic.com/blog/whats-this-about-micro-commits/|micro commit]], one at a time isolation |
|
| Line 40: | Line 78: |
| * Specification by Examples | |
| Line 44: | Line 83: |
| eliminate intermediate layers | eliminate/reduce intermediate layers 넘겨짚지 말고, 마술의 동작과 동작 사이를 잘 들여다보기. |
| Line 47: | Line 88: |
[[가추법|abduction]] Here and now. recognize what's going on, inspect it, find root cause, and fix it. Don't wandering around searching web pages mindlessly. BDD, ATDD, SBE |
|
| Line 51: | Line 98: |
| take a look at extreme programming, not scrum, if you are a software developer. it includes a lot of effective technical principles. |
|
| Line 53: | Line 102: |
| To learn well from experts | [[http://agile.egloos.com/5904102|협업의 미신]] ([[https://www.youtube.com/watch?v=I4xkw_0XqAs|영상]]) pull request anti pattern: [[https://twitter.com/kentbeck/status/1375936309458464769|Kent's twit]]. [[https://jessitron.com/2021/03/27/those-pesky-pull-request-reviews/|Those pesky pull request reviews]]. [[기술문서모음/PR과 코드리뷰|PR과 코드리뷰]]. 책 * Kent Beck, [[책/ExtremeProgrammingExplained]] * [[책/피플웨어|Peopleware]] |
| Line 56: | Line 113: |
| == Books == | == Learning, Expertise == |
| Line 58: | Line 115: |
| * Kent Beck, Extreme Programming Explained * Robert Martin, Agile Software Development * [[책/피플웨어|Peopleware]] * [[책/TheTimelessWayOfBuilding]] * 패턴, 위키, 그리고 XP * Specification by Examples |
To learn well from experts (CTA, CDE) GaryKlein, AndersEricsson * [[책/ApprenticeshipPatterns]] * 실용주의 사고와 학습 * [[책/1만 시간의 재발견]] ---- See Also: [[프로그래밍 추천 도서]] |
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
SoftwareArchitecture. AOSA prefaces.
The Eisenhower Matrix
Make it work, then make it better.
problem space, solution space
...
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 (DbC: Design by Coding)
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
Here and now. recognize what's going on, inspect it, find root cause, and fix it. Don't wandering around searching web pages mindlessly.
BDD, ATDD, SBE
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
pull request anti pattern: Kent's twit. Those pesky pull request reviews. PR과 코드리뷰.
책
Kent Beck, 책/ExtremeProgrammingExplained
Learning, Expertise
To learn well from experts (CTA, CDE)
- 실용주의 사고와 학습
See Also: 프로그래밍 추천 도서
