2022/08 4

구글 엔지니어는 이렇게 일한다

책의 도입부가 인상적인데 ‘시간 위를 걷는 프로그래밍’이라는 멋진 말과 함께 소프트웨어 엔지니어링을 ‘흐르는 시간 위에서 순간순간의 프로그래밍을 모두 합산한 것이다’라고 이야기한다. 시간의 무서움에 대한 이야기와 하이럼의 법칙 이야기가 계속된다. 개발해오면서 여러 개발 조직에서 봤던 패턴의 상당수는 ‘일단’ 구현하고, ‘나중에’ 수정하자. ‘일단’ 돌아가니, ‘나중에’ 개선하자. 등이 누적된 세월의 흔적들이 유령의 묘지와 더불어 매우 많다. 코드는 자산이 아니라 부채이므로, 불필요한 코드를 줄여 관리 비용을 줄여야 한다. 그리고, 코드의 일관성은 매우 중요하다. 매우 공감한다. 지금 몸담고 있는 팀에서도 내가 하는 작업의 상당 부분은 방치된 레거시를 정리하고 구조를 리팩토링하면서 그동안 쌓여있던 기술 부..

Dev 2022.08.28

다른 의견

이런저런 비슷한 책들을 봤고 머리로 이해했다고 생각했으나, 매번 어렵다. 아니라고 생각하는 것에 동조해서 논쟁을 피하는 성격도 아니라서 의견을 개진하고 강한 저항이 등장하면 강 대 강으로 부딪쳤었다. 까칠하던 어린 시절보다는 많이 나아졌다고 자평하지만, 여전히 부드럽게 설득하지 못한다. 하여, 다시 이견 조율을 다룬 책을 또 하나 집어 들어봤다. 도서 미리 보기 기능으로 본 책의 도입부에 등장하는 ‘논쟁하는 법을 모르니 의견이 충돌하면 거기에 걸려서 앞으로 나아가지 못한다.’라는 문장이 와 닿아서 구매한 이 책은 계속 비슷한 논거가 반복되고, 심리학자분들이 참 다양한 이름 붙이기를 좋아하는 것을 다시 깨닫게 되지만, 재밌게 읽었다. 책 뒤에 요약편이 있으니 서점에선 요약편을 보고 읽을지 덮을지 판단하는 ..

Book Shelf 2022.08.23

하위 버전 CentOS Linux에 배포할 때의 glibc, libstdc++ 라이브러리 버전 문제

배경 최근에 읽은 ‘구글 엔지니어는 이렇게 일한다.’에서 컴파일러 버전업에 대한 이야기가 나와서 예전에 작업했던 GCC 컴파일러 버전업에 대한 내용을 정리해본다. 몇 년 전 새로운 팀에 합류했을 때 서비스 중인 서버군들 중에서 C++ 구현된 서버군이 GCC 4.4.7을 사용하고 있었고, 컴파일러 버전이 낮아서 모던 C++의 시작인 C++ 11를 사용할 수 없었다. GCC 4.4.7은 C++ 0x까지 지원한다. C++ 11을 사용하려면 최소한 gcc 4.7 이상이 필요하다. 버전업 타깃은 CentOS 7 Base repo에 있는 GCC 4.8.5 버전으로 맞추고 진행했었다. 작업 당시 오랜 세월의 흔적으로 개발, 배포, 서비스 환경 등 각각 OS 버전이 달랐다. OS 버전이 다르다는 것은 OS가 기본적으로..

Dev 2022.08.17

그림은 위로다 (개정판)

책을 읽고 독서 후기를 정리하다가 언젠가부터 그냥 읽기만 하고 정리를 안 했네. 올해도 벌써 8월이구나. 현재까지 20여 권을 읽었는데 이 책 후기를 적은 김에 하나씩 정리해봐야겠다. 아무튼, 동네 독서 모임의 지정 도서로 선정되어 읽은 이 책은 ‘그림은 위로다’라는 제목과 함께 표지에 ‘곁에서 친구처럼 위안이 되어주는 그림 이야기’라고 적혀있다. 평소 내 독서 취향에서 손이 가지 않았을 책이지만, 그림을 전혀 모르는 입장에서 그림에 대한 소개와 설명 등을 기대하고 읽었다. 읽으면서 이 책은 그냥 작가의 에세이인데 직업이 미술 쪽이라 그림 이야기가 부수적으로 등장하는구나 했는데, 다 읽고 보니 에세이 형식의 자기 계발서 같다. 개정판은 아직 eBook으로 출간되지 않아서 도서관에서 대출하여 읽었더니 글귀..

Book Shelf 2022.08.06
반응형