Differences between revisions 94 and 95
Revision 94 as of 2023-05-29 08:49:15
Size: 3001
Editor: 정수
Comment:
Revision 95 as of 2023-06-02 11:47:06
Size: 3083
Editor: 정수
Comment:
Deletions are marked like this. Additions are marked like this.
Line 85: Line 85:
넘겨짚지 말고, 마술의 동작과 동작 사이를 잘 들여다보기.

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)

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

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

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과 코드리뷰.

Learning, Expertise

To learn well from experts (CTA, CDE)

GaryKlein, AndersEricsson


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

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