Differences between revisions 76 and 112 (spanning 36 versions)
Revision 76 as of 2022-10-21 14:51:21
Size: 2531
Editor: 정수
Comment:
Revision 112 as of 2025-07-24 13:18:54
Size: 3717
Editor: 정수
Comment:
Deletions are marked like this. Additions are marked like this.
Line 23: Line 23:
 * [[책/AreYourLightsOn]]
Line 28: Line 29:
SoftwareArchitecture SoftwareArchitecture. [[AOSA]] prefaces.
Line 32: Line 33:
Make it work, then make it better.

problem space, solution space

...
Line 35: Line 41:
naming itself is a design practice. it makes abstraction. programming is to build a language system of a business domain.
Line 36: Line 44:

[[책/Antifragile|Antifragile]]: asymmetry, real option
Line 55: Line 65:
[[TinyExperiment]] - 작은 가설을 빠르게 검증할 수 있는 실험 환경 만들기
Line 59: Line 71:
TDD is a design activity TDD is a design activity ([[https://www.youtube.com/watch?v=d5Y1B1cmaGQ|DbC]]: Design by Coding)
Line 68: Line 80:

use abduction.

piecemeal growth, center first (EssenceOfAgile)
Line 79: Line 95:
넘겨짚지 말고, 마술의 동작과 동작 사이를 잘 들여다보기.

do not guess far. when you guess, validate it.
Line 83: Line 103:
Here and now. recognize what's going on, inpect it, find root cause, and fix it. Don't wandering aroud web pages mindlessly. 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 88: Line 110:
take a look at extreme programming, not scrum, if you are a software developer. it includes a lot of effective technical principles. If you are a software developer, you should consider extreme programming instead of scrum. It has many technical principles that can improve your work.
Line 93: Line 115:
[[http://agile.egloos.com/5904102|협업의 미신]] [[http://agile.egloos.com/5904102|협업의 미신]] ([[https://www.youtube.com/watch?v=I4xkw_0XqAs|영상]])
Line 95: Line 117:
[[https://twitter.com/kentbeck/status/1375936309458464769|pull request anti pattern]] 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과 코드리뷰]].

Yes, but / Yes, and
Line 99: Line 123:
 * Kent Beck, Extreme Programming Explained  * Kent Beck, [[책/ExtremeProgrammingExplained]]
Line 105: Line 129:
To learn well from experts (CTA, CDE) To learn well from experts (CTA, [[CollaborativeDevelopmentOfExpertise|CDE]])
Line 113: Line 137:
[[개발실력 키우기]]

== Cognition ==

ReflectivePractice, ReflectionInAction

RecognitionPrimedDecisionModel

[[정수/일기/2024-07-29]]

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

naming itself is a design practice. it makes abstraction. programming is to build a language system of a business domain.

programming is to make a language system. make vocabulary. take a look at Peter Norvig's code (pattern language, lisp hackers)

Antifragile: asymmetry, real option

Programming fundamental

공통점과 차이점 찾기. 공통점을 공유하고, 차이점을 처리할 수 있는 기법을 습득한다. (OOP 다형성, 고차함수 등)

  • Refactoring 2/E
  • Kent Beck, Implementation Patterns
  • Robert Martin, Agile Software Development

TDD, Baby step, Evolutionary Design

TinyExperiment - 작은 가설을 빠르게 검증할 수 있는 실험 환경 만들기

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

use abduction.

piecemeal growth, center first (EssenceOfAgile)

  • Kent Beck, Test Driven Development
  • Specification by Examples

Testing & Debugging

eliminate/reduce intermediate layers

넘겨짚지 말고, 마술의 동작과 동작 사이를 잘 들여다보기.

do not guess far. when you guess, validate it.

regression test

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

Collaboration

If you are a software developer, you should consider extreme programming instead of scrum. It has many technical principles that can improve your work.

pair programming: perform outstanding with other juniors

협업의 미신 (영상)

pull request anti pattern: Kent's twit. Those pesky pull request reviews. PR과 코드리뷰.

Yes, but / Yes, and

Learning, Expertise

To learn well from experts (CTA, CDE)

GaryKlein, AndersEricsson

개발실력 키우기

Cognition

ReflectivePractice, ReflectionInAction

RecognitionPrimedDecisionModel

정수/일기/2024-07-29


See Also: 프로그래밍 추천 도서

기술문서모음/ToJuniors (last edited 2025-07-24 13:18:54 by 정수)