Skip to content
Merged
13 changes: 13 additions & 0 deletions 2026/Street_Coder/jongfeel/Chapter7_Opinionated_optimization.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
## Summary

- https://github.com/jongfeel/BookReview/issues/1693

## Review

- https://github.com/jongfeel/BookReview/issues/1693#issuecomment-4344676059

## 리뷰

한번쯤 봤었던 최적화 관련된 내용인데 소프트웨어 관련 내용뿐 아니라 하드웨어 관련 내용도 함께 다뤘다.
비동기와 블로킹 논의는 과거 좋은 면접 질문 중 하나였던 걸로 기억하는데, 여기서는 꽤나 디테일하게 설명해주고 있다.
아마 비동기와 블로킹 관련 내용으로 설명해주는 분량으로 치면 전공 서적을 제외하고 이 책이 제일 길고 자세할 것 같다.
33 changes: 33 additions & 0 deletions 2026/Street_Coder/jongfeel/Chapter8_Palatable_scalability.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
## Summary

- https://github.com/jongfeel/BookReview/issues/1696

## Review

- https://github.com/jongfeel/BookReview/issues/1696#issuecomment-4344748943
- https://github.com/jongfeel/BookReview/issues/1696#issuecomment-4344806192

## 리뷰

이 챕터의 내용도 이전 챕터와 마찬가지로 한 번씩 접해본 내용들의 리뷰였다.

- Lock / Thread safe
- DB connection pool

7장에서 언급했어도 될 내용의 연장인 비동기와 스레드 내용이 더 추가가 되었다.

모놀리스에 대해 짧게 언급하는데, 처음부터 마이크로서비스를 만들려고 하는 건 이 챕터에서 얘기하고 싶은 확장성에 대한 현실적인 얘기였던 것 같다.

## C#에 대한 생각

저자는 마이크로소프트에서 일을 오래 해서 그런지 C# 언어를 많이 좋아하는 게 느껴진다.
물론 나도 C#을 오래 써 왔기 때문에 좋아하는 언어인 건 맞다.

10년 전 쯤이었으면 책의 저자와 같이 C# 언어의 훌륭한 점에 대해 얘기를 막 했을 거고
5년 전 쯤에는 C# 언어의 스펙이 다른 언어에 미친 영향에 대해서도 대변했을 것이다. (async/await 관련 내용이다)

과거에도 어떤 프로그래밍 언어가 좋은지 논의하는게 무의미하다고 많이 느꼈지만
이제 2026년에는 어떤 프로그래밍 언어가 좋은지에 대한 떡밥조차도 무의미한 것 같다.

로버트 마틴이 < 우리 프로그래머들 > 책에서 최후에 살아남는 언어는 Lisp 이라고 예언했는데
향후 그렇게 된다고 해도 크게 문제되거나 하진 않을 것 같다.
26 changes: 26 additions & 0 deletions 2026/Street_Coder/jongfeel/Chapter9_Living_with_bugs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
## Summary

- https://github.com/jongfeel/BookReview/issues/1701

## Review

- https://github.com/jongfeel/BookReview/issues/1701#issuecomment-4344842812

## 리뷰

버그, 오류, 예외에 대한 일반적인 내용을 다루고 있다.
챕터별 소제목은 어그로성이 있는데 (버그를 수정하지 마라, 디버깅하지 마라 등) 실제로는 좋은 내용들이다.

## 논의주제

여기서 언급하는 여러 디버깅 기법 중에 실제로 적용해 보고 효과를 본 사례가 있는지 얘기해 보면 좋을 것 같습니다.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

최근에는 IDE의 디버거를 많이 사용하는 것 같습니다.
로컬이 아닌 k8s에 서비스를 띄어올려도 5005 포트로 Debug Remote Tomcat Server를 이용하면 로컬에서 하는 것 처럼 디버거를 사용할 수 있더라구요.

고무 오리 디버깅 같은 경우에는 다른 분에게 설명하다가도 혼잣말 하는 것과 비슷하게도 효과가 나타나서 종종 설명을 하거나 먼저 정리해보는 습관을 가졌습니다.


저는 두 가지인데 하나는 printf() 관련 내용입니다.
저는 대학에 다닐 때도 그랬고 주니어 개발자 시절에도 printf()를 쓰기 보다는 디버거를 통해 값을 확인하고 문제를 파악하는 방법을 더 좋아했습니다.
이건 학교 교수님이 디버거를 사용할 줄 아는 게 중요하다는 가르침 때문에 그런 것도 있습니다.
하지만 책의 내용대로 디버거는 번거로운 부분이 있는 건 사실이고 실행의 흐름을 끊고 파악해야 하기 때문에 개발자의 집중력을 요구하는 행동인 것도 맞습니다.
그래서 printf() (프로그래밍 언어별로 코드는 다르지만 로그 찍는 코드)를 통해 디버깅 하는 것도 좋다고 느낀 건 다른 개발자와 협업을 하면서 알게 되었습니다.

다른 하나는 고무 오리 디버깅입니다.
실제 고무 오리를 두고 대화를 하진 않았지만, 과거 디버거를 통해 디버깅을 할 때 혼잣말을 하면서 했던 버릇이 있었는데
이게 자신이 생각한 로직과 예외 상황을 검증하는 용으로 상당히 유용하다는 걸 많이 경험했기에, 한 번도 안 해보신 분은 해보면 좋은 방법이긴 합니다.