E D R , A S I H C RSS

Do It Again To Learn

같은 것을 λ‹€μ‹œ ν•΄λ³΄λŠ” κ²ƒμ—μ„œ μš°λ¦¬λŠ” μ–Όλ§ˆλ‚˜ λ§Žμ€ 것을 배울 수 μžˆλŠ”κ°€.


μ™œ λ™μΌν•œ λ¬Έμ œλΌ μ—¬λŸ¬λ²ˆ ν’€κ³ , μ™œ 같은 λ‚΄μš©μ˜ μ„ΈλΈλ‚˜μ— λ˜λ‹€μ‹œ 참석을 ν•˜κ³ , 같은 ν”„λ‘œκ·Έλž¨μ„ κ±°λ“­ μž‘μ„±ν• κΉŒμš”?

훨씬 더 많이 배울 수 있기 λ•Œλ¬Έμž…λ‹ˆλ‹€. ν™”μˆ  κ΅μœ‘μ—μ„œλŠ” 같은 μ£Όμ œμ— λŒ€ν•΄ ν•œλ²ˆ 말해본 연사와 λ‘λ²ˆ 말해본 μ—°μ‚¬μ—λŠ” μ²œμ§€μ°¨μ΄κ°€ μžˆλ‹€κ³  λ§ν•©λ‹ˆλ‹€. 같은 일에 λŒ€ν•΄ λ‘λ²ˆμ˜ κΈ°νšŒκ°€ 주어지면 λ‘λ²ˆμ§Έμ—λŠ” μ²«λ²ˆμ§Έλ³΄λ‹€ 잘 ν•  κΈ°νšŒκ°€ μžˆμŠ΅λ‹ˆλ‹€. κ²Œλ‹€κ°€ 첫번째 κ²½ν—˜ν–ˆλ˜ 것을„°λ„μ„ λ²—μ–΄λ‚˜μ„œ" λ‹€μ†Œ 객관적인 μž…μž₯μ—μ„œ λ³Ό 수 있게 λ©λ‹ˆλ‹€. μ™œ μžμ‹ μ΄ μ €λ²ˆμ— 이걸 잘 λͺ»ν–ˆκ³ , μ €κ±Έ μž˜ν–ˆλŠ”μ§€ μ•Œκ²Œ 되고, μ–΄λ–»κ²Œ ν•˜λ©΄ κ·Έκ±Έ 더 μž˜ν•  수 μžˆμ„λŸ°μ§€ κΉ¨λ‹«κ²Œ λ©λ‹ˆλ‹€. μ €λŠ” λ˜‘κ°™μ€ λ¬Έμ œλΌ μ—¬λŸ¬λ²ˆ 풀더라도 맀번 μ‘°κΈˆμ”© λ‹€λ₯Έ 해닡을 μ–»μŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ©΄μ„œ μ—„μ²­λ‚˜κ²Œ λ§Žμ€ 것을 λ°°μ›λ‹ˆλ‹€. "λΉ„μŠ·ν•œ λ¬Έμ œλ“€"을 λͺ¨λ‘ ν’€ λŠ₯λ ₯이 μƒκΈ°κ²Œ λ©λ‹ˆλ‹€.

"We do it again -- to do it, to do it well, and to do it better." --JuNe (play on Whitehead's quote)

μ œκ°€ 개인적으둜 μ‘΄κ²½ν•˜λŠ” μ „μ‚°ν•™μž Robert W. FloydλŠ” 1978년도 νŠœλ§μƒ κ°•μ—° The Paradigms of Programming(일독을 μ΄ˆκ°•λ ₯ μΆ”μ²œ)μ—μ„œ λ‹€μŒκ³Ό 같은 말을 ν•©λ‹ˆλ‹€. --κΉ€μ°½μ€
Seminar:TheParadigmsOfProgramming DeadLink? - μ €λŠ” μž˜λ‚˜μ˜€λŠ”λ°μš”. λ„μž„μ„œλ²„ μ„정이 잘λͺ»λœκ±΄ μ•„λ‹ˆμ‹ μ§€.. - μ•„λ¬΄κ°œ
Seminar에 λ‘œκ·ΈμΈμ„ μ•ˆ ν•΄μ„œ μ—¬κΈ°λ‹€ DeadLink λ”±μ§€λΌ λ‹¬μ•˜μŠ΅λ‹ˆλ‹€. μ•ˆμ— λ‚΄μš©λ¬Όλ„ λ°›μ•„μ§€μ‹œλ‚˜μš”? --Leonardong
그러λ„μš”. λ³΄κ³ μ‹ΆμœΌμ‹  뢄이 κ³„μ‹œλ©΄ μž„μΈνƒμ—κ²Œ 말씀해 μ£Όμ„Έμš”.

In my own experience of designing difficult algorithms, I find a certain technique most helpfult in expanding my own capabilities. After solving a challenging problem, I solve it again from scratch, retracing only the insight of the earlier solution. I repeat this until the solution is as clear and direct as I can hope for. Then I look for a general rule for attacking similar problems, that would have led me to approach the given problem in the most efficient way the first time. Often, such a rule is of permanent value. ...... The rules of Fortran can be learned within a few hours; the associated paradigms take much longer, both to learn and to unlearn. --Robert W. Floyd

George PolyaλŠ” μžμ‹ μ˜ μ±… NoSmok:HowToSolveItμ—μ„œ 이런 말을 ν•©λ‹ˆλ‹€:

Even fairly good students, when they have obtained the solution of the problem and written down neatly the argument, shut their books and look for something else. Doing so, they miss an important and instructive phase of the work. ... A good teacher should understand and impress on his students the view that no problem whatever is completely exhausted. --George Polya

μ €λŠ” ACM의 ICPC 문제 쀑에 μ–΄λ–€ λ†ˆμ„ μ΄μ œκΉŒμ§€ μ—΄ λ²ˆλ„ λ„˜κ²Œ ν’€μ—ˆμŠ΅λ‹ˆλ‹€. λŒ€λΆ€λΆ„ PairProgrammingμ΄λ‚˜ μ„ΈλΈλ‚˜μ—μ„œ ν”„λ‘œκ·Έλž˜λ° μ‹œμ—°μ„ ν–ˆλ˜ 것인데, 제 μ„ΈλΈλ‚˜μ— μ—¬λŸ¬λ²ˆ μ°Έμ„ν•œ μΉœκ΅¬κ°€ λ¬Όμ—ˆμŠ΅λ‹ˆλ‹€. "μ‹ κΈ°ν•΄μš”. μ°½μ€μ”¨λŠ” κ·Έ λ¬Έμ œλΌ ν’€ λ•Œλ§ˆλ‹€ λ‹€λ₯Έ ν”„λ‘œκ·Έλž¨μ„ μ§œλŠ” 것 κ°™μ•„μš”. ν˜Ήμ‹œ μ€λΉ„λΌ μ•ˆν•΄μ™€μ„œ κ·Έλƒ₯ λ‚΄ν‚€λŠ” λŒ€λ‘œ ν•˜λŠ” 건 μ•„λ‹ˆμ£ ? :)" μ €λŠ” 카였슀 μ‹œμŠ€ν…œκ³Ό λΉ„μŠ·ν•˜κ²Œ 초기치 λΌκ°λ„κ°€ ν”„λ‘œκ·Έλž˜λ°μ—λ„ μž‘μš©ν•˜λŠ” 것 κ°™λ‹€λŠ” λŒ€λ‹΅μ„ ν•΄μ€¬μŠ΅λ‹ˆλ‹€. μ € 슀슀둜 λ‹€λ₯Έ 해법을 μ‹œλ„ν•˜κ³  싢은 마음이 있으면 κ·Έλ ‡κ²Œ 좜발이 쑰금 λ‹€λ₯΄κ³ , 또 κ±°κΈ°μ„œ λ‚˜μ˜€λŠ” 진행 λ°©ν–₯도 λ‹€λ₯΄κ²Œ λ©λ‹ˆλ‹€. 그런데 μ€‘μš”ν•œ 것은 μ΄λ ‡κ²Œ 같은 λ¬Έμ œλΌ λ§€λ²ˆ λ‹€λ₯΄κ²Œ ν‘ΈλŠ” λ°μ—μ„œ λ°°μš°λŠ” 것이 μ—„μ²­λ‚˜κ²Œ λ§Žλ‹€λŠ” μ μž…λ‹ˆλ‹€. μ €λŠ” 맀번, 전보닀 κ°œμ„ ν•  것을 μ°Ύμ•„ λ‚΄κ²Œ 되고, 또 μƒˆλ‘œμš΄ 것을 λ°°μ›λ‹ˆλ‹€. 마치 마λ₯΄μ§€ μ•ŠλŠ” μƒ˜λ¬Όμ²˜λŸΌ 계속 생각할 κ±°λ¦¬λΌ μ€λ‹€λŠ” 점이 μ°Έ λ†€λžμŠ΅λ‹ˆλ‹€. --JuNe

TDD λΌ μ—°μŠ΅ν•˜κ³ , μ›Œν¬μƒ΅ μ€λΉ„ν•˜κ³  κ΄€λ ¨ 기사글 μž‘μ„±ν•˜λŠλƒκ³  VonNeumannAirport λ¬Έμ œμ™€ kwic λ¬Έμ œλΌ κ°κ° 5번 이상 ν’€μ–΄λ³΄κ²Œ λ˜μ—ˆλ‹€. (Python 으둜, CPlusPlus 둜, Java둜..) ν•˜μ§€λ§Œ, ν’€ λ•Œλ§ˆλ‹€ 맀번 κ·Έ κ²°κ³Όκ°€ λ‹€λ₯΄κ²Œ λ‚˜μ™”λ‹€. 같은 λ¬Έμ œλΌ κ³„μ† ν’€λ‹€ λ³΄λ‹ˆ, 더 쉽고 더 κ°„λ‹¨ν•˜κ²Œ ν•΄λ‹Ή λ‹¨κ³„λΌ λ›°μ–΄λ„˜λŠ” 법이 λ³΄μ΄λŠ” 것이닀. 그리고 JuNe ν˜•κ³Ό Pair λΌ ν•˜λŠ”μ€‘ μ²«μ§Έλ‚ λ•Œμ˜ 진행방법이 λ‹¬λžκ³ , λ‘˜μ§Έλ‚ , μ…‹μ§Έλ‚ .. 더 쒋은 방법듀이 계속 λ³΄μ΄λŠ” κ²ƒμ΄μ˜€λ‹€. κ·Έ 문제 μ‚¬μ΄μ¦ˆκ°€ 크건 μž‘κ±΄, μ—¬μœ λΌ κ°€μ§€κ³  λ‹€μ‹œ ν•΄λ³΄λŠ” κ²ƒμ—μ„œ μ–»λŠ” 점이 λ§ŽμŒμ„ 느끼게 λ˜μ—ˆλ‹€. --1002

Seminar:SoftwareDevelopmentMagazineμ—μ„œ OOP의 λŒ€κ°€ Uncle Bob은 PP와 TDD, λ¦¬νŒ©ν† λ§μ— λŒ€ν•œ κΈ°μ‚¬λΌ μ—°μž¬ν•˜κ³  μžˆλ‹€. A Test of PatienceλΌλŠ” κΈ°μ‚¬μ—μ„œλŠ” λͺ‡ μ‹œκ°„, ν˜Ήμ€ λͺ‡ 일 κ±Έλ € μž‘μ„±ν•œ μ½”λ“œλΌ μ¦κ²κ²Œ λ˜μ Έλ²„λ¦¬κ³  μƒˆλ‘œ μž‘μ„±ν•  μˆ˜λ„ μžˆλ‹€λŠ” DoItAgainToLearn(ν˜Ήμ€ ~cpp DoItAgainToImprove)의 κ°€λ₯΄μΉ¨μ„ μ „ν•œλ‹€.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:09
Processing time 0.0203 sec