1 minute read

10 Papers Every Programmer Should Read (At Least Twice)란 글을 봤다. 패기 좀 보소. 꼭 읽어! 두 번 읽어! 시간이 중요하다. 과연 투자할 가치가 있을 것인가? 하지만 2009년에 읽은 책 중 최고였던 Working Effectively With Legacy Code 저자. 믿는다. 추천한 거 한 번 읽어보자.

단순히 이거 읽어라는 식이 아니라 각각 글에 대한 짤막한 주석을 달았다. 자꾸 뭐 봐라. 이렇게 되도 않게 소개하는 것보다 짤막하더라도 생각을 공유하니 읽을 때 확실히 도움이 된다. 게다가 이거 읽을지 말지 빨리 판단할 수도 있고. 나도 짤막한 주석을 공유.

On the criteria to be used in decomposing systems into modules - David Parnas

  • 정보 은닉을 모듈화 기준으로 하자.
  • ’모듈화가 짱이야’하는 글은 많지만, 모듈화 기준에 대한 글은 찾아보기 어렵다.

A Note On Distributed Computing - Jim Waldo, Geoff Wyant, Ann Wollrath, Sam Kendall

  • 과도한 추상화는 캐망
  • distributed computing 에서 명심해야 할 사항들을 배움
  • 간단 정리

Reflections on Trusting Trust - Ken Thompson

  • 전체를 직접 다 짜지 않은 코드는 신뢰할 수 없다는 뻔한 교훈을 던지는 아티클.
  • ’c 컴파일러는 믿을 수 있다고 생각했지?’라며 예제를 c 컴파일러로 들었다.

Lisp: Good News, Bad News, How to Win Big - Richard Gabriel

  • ’the right thing’, ’worse-is-better’ 디자인 철학에 대한 글. 리스프에 관심이 없어도 괜찮아.
  • ’worse-is-better’로 점유율을 높이고 난 후 ’the right thing’의 일정 수준을 목표로 하는 것이 좋은 전략.

An experimental evaluation of the assumption of independence in multiversion programming - John Knight and Nancy Leveson

  • N-version programming에 대한 소개와 실험.
  • 해보지도 않았고 필요성을 느끼지도 않는다. 이런 것도 있구나 하면서 흥미롭게 읽었다.

Arguments and Results - James Noble

  • Patterns about Arguments, Patterns about Results
  • 별 도움이 안 됐으나 부를 수 있는 패턴 이름을 여기서 찾은 건 수확.

A Laboratory For Teaching Object-Oriented Thinking - Kent Beck, Ward Cunningham

  • object-oriented design을 가르칠 때, 사용한 CRC 카드 소개

읽어보니

읽는데 어렵고 너무 머리에 안 들어온다. 다른 사람이 리뷰한 걸 줏어 먹거나 나중에 보자.

  • The Next 700 Programming Languages – P. J. Landin
  • Can Programming Be Liberated from the von Neumann Style? – John Backus
  • Programming as an Experience: the inspiration for Self – David Ungar, Randall B. Smith

소개한 글들 대체로 만족. 이런 글들을 많이 안 읽으니깐 확실히 시간이 오래 걸린다. 꾸준함이 필요하다.