Differences between revisions 1 and 90 (spanning 89 versions)
Revision 1 as of 2022-09-14 10:35:40
Size: 16
Editor: 정수
Comment:
Revision 90 as of 2023-05-09 05:12:16
Size: 2965
Editor: 정수
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:

<<TableOfContents(2)>>


use data to make logic simple

 * make DSL
 * do not mix logic and data construction

== Proverbs ==

 * [[http://www.agile-process.org/proverbs.html|Agile Process Proverbs]]


== Philosophy, Viewpoint, Programmer ==



 * [[책/실용주의 프로그래머|Pragmatic Programmer]]
 * LittleBets
 * [[책/천 개의 성공을 만든 작은 행동의 힘]]
 * [[책/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


== 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 ([[https://www.youtube.com/watch?v=d5Y1B1cmaGQ|DbC]]: Design by Coding)

short feedback cycle (loop)

bowling kata by robert martin

[[https://www.industriallogic.com/blog/whats-this-about-micro-commits/|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, inpect it, find root cause, and fix it. Don't wandering aroud web pages mindlessly.


== 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


[[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, Extreme Programming Explained
 * [[책/피플웨어|Peopleware]]


== Learning, Expertise ==

To learn well from experts (CTA, CDE)

GaryKlein, AndersEricsson

 * [[책/ApprenticeshipPatterns]]
 * 실용주의 사고와 학습
 * [[책/1만 시간의 재발견]]


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

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, inpect it, find root cause, and fix it. Don't wandering aroud web pages mindlessly.

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, Extreme Programming Explained
  • Peopleware

Learning, Expertise

To learn well from experts (CTA, CDE)

GaryKlein, AndersEricsson


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

기술문서모음/ToJuniors (last edited 2025-09-18 05:17:18 by 정수)