미키 17
미키 17. 절반 정도는 원작의 훌륭한 구현. 나머지 절반은 커다란 아이디어를 자잘한 유머와 함께 과장된 화법으로 이야기하는 봉준호 스타일. 마크 러팔로 트럼프 연기하느라 고생하신 듯.
미키 17. 절반 정도는 원작의 훌륭한 구현. 나머지 절반은 커다란 아이디어를 자잘한 유머와 함께 과장된 화법으로 이야기하는 봉준호 스타일. 마크 러팔로 트럼프 연기하느라 고생하신 듯.
Richard Rumelt의 Good Strategy Bad Strategy의 번역서인 좋은 전략 나쁜 전략이라는 책을 읽었다.
트위터에서 박상민 님의 강력한 추천으로 이 책을 알게되었고 아마존 평도 굉장히 좋고, 마침 올해 첫번째 책으로 무엇을 읽을까 하던 차여서 바로 주문해서 읽게되었다.
저자인 리처드 루멜트에 관해서 몰랐지만, 책을 읽으면서 경영 및 전략에 대해 깊게 연구했으며, 기업 뿐만 아니라 군사나 외교 전략에 대해 조언을 해온 분이라는 것을 알게되었다. 또한, 책에서 다루는 다양한 케이스 스터디들이 필연적으로 기술이나 이에 기반한 경쟁력에 관해 다룰 수 밖에 없는데, JPL 엔지니어 출신이라는 것도 신뢰감을 주었다.
이 책에서 가장 중요하고 강렬한 메시지는 1부에서 등장하는데, 바로 기업들이 좋은 전략을 가지지 못하는 이유는 그 자리를 나쁜 전략이 차지하고 있기 때문이라는 것이다. 자연스레 무엇이 나쁜 전략인가에 관한 이야기로 넘어가고, 나쁜 전략의 전형들을 제시하는데, 실은 목표에 해당하는 것을 세우고 이것이 전략이라고 착각하는 경우, 전략이 목표로 하는 문제를 제대로 정의하지 않는 경우, 비현실적인 전략적 목표를 세우는 경우 등을 들고 있다.
이러한 나쁜 전략이 만연하는 이유들도 설명하고 있는데 좋은 전략을 세우기 위해서는 서로 상충하는 목표들 사이에서 어느 하나에 집중하는 고통스러운 결정을 해야하지만 사람들은 그러한 어려운 결단을 회피하려는 경향이 있다는 것이다. 또한 비전, 가치, 전략과 같은 템플릿에 칸을 채우는 방식으로 전략이 정해지거나, 열심히 하면 또는 정신력으로 해낼 수 있다는 근거없는 믿음 등을 들고 있다.
기업들의 나쁜 전략들의 유형이나 그것이 발생하는 이유들은, 내가 그동안 일해오면서도 어렵지 않게 관찰할 수 있었고, 나조차도 그 일부에 해당햇던 것 같아서 깊이 공감이 되었다.
그렇다면 좋은 전략이 무엇인가라는 질문으로 이어지게 되는데, 이 책의 두번째로 중요한 메시지는 좋은 전략의 핵심 구성요소들에 관한 것이며, 1. 문제의 진단, 2. 추진 방침, 3. 일관된 행동 계획 이라는 3가지로 이루어진다.
문제의 진단이 없이 전략을 세웠을 때 어떤 일이 일어나는지, 문제의 진단과는 동떨어진 추진 방침을 세우는 경우들, 타당한 방침까지 세웠지만 실제로 행동 계획은 모호하거나 실행하기 어려운 경우들을 사례들을 통해 설명하면서 왜 이 3가지가 전략의 핵심 구성요소인가를 명확하게 드러내주고 있다.
아마도 내가 대학교를 나온 후 회사에서 본격적으로 일을 하기 전에 이 책을 읽었다면, 너무나 당연한 얘기를 하고 있네 정도로 받아들였을 것이다. 하지만, 이 책에서 이야기 하고 있는 것처럼, 좋은 전략을 세우기 위해서는 가장 본질적인 문제를 파악하기 위한 매우 어려운 작업들을 해야하며, 서로 상충하는 목표들 사이에서 설득하고 결단을 내리는 것과 같은 고통스러운 일을 해야한다. 그래서, 그 어떤 기업이라고 하더라도 좋은 전략들만 보유하고 있지는 않을 것이고, 기업에 따라서 나쁜 전략의 비중이 얼마간 차지하고 있을 것이다.
지금 일하고 있는 회사에서는 3개월마다 우선순위를 제안, 검토하고 경영진이 결정하는 구조를 가지고 있는데, 물론 완벽하지는 않겠지만, 문제의 진단과 방침, 구체적으로 어떤 일을 할 것인지를 정의하기 위한 작업들로 구성되어있다. 물론, 여기서도 상충하는 목표들이 공존하는 상태에서 명확한 결정에 시간이 걸린다든가, 문제의 진단을 위해서는 너무 많은 비용이 들어가기 때문에, 피상적인 진단인 경우, 때로는 어떻게 실현할 것인가에 대한 계획이 뚜렷하지 않은 경우 등이 종종 발생한다. 다만, 그럴 때마다 올바른 궤도로 돌아가기 위해서 여러 사람들이 지적을 하고 수정을 해나간다는 사실이 중요한 것이 아닐까 싶다.
책의 2부와 3부에서는 행동과 자원의 집중을 통한 레버리지의 활용, 현실성 있는 근접 목표를 제시하는 것, 여러요소를 통합해서 전략을 설계하는 것, 경쟁우위를 확보하는 것, 변화의 디테일을 이용하는 것 등 좋은 전략을 세우기 위한 구체적인 주제를 다루고 있다. 다만, 1부에서의 내용의 경우에는 아마도 누구나 따라해볼 수는 있는 내용이라면, 여기서부터는 깊은 고민과 노력, 통찰력이 필요한 영역이라고 느껴졌다. 한번 읽는 것만으로는 완전히 체화하거나 반복하기 어려운 내용들이기 때문에, 앞으로 주기적으로 다시 읽어보면서 그때 고민하는 전략의 영역에서 통찰을 얻어가는 것이 좋을 것 같다.
엔지니어링 조직의 헤드로서 전략을 세우고 이를 조직 내의 사람들이 인식하고 행동에 반영할 수 있도록 노력하고 있다. ‘비전’이나 ‘방향성’, ‘목표’라는 단어로 표현될 때가 있지만, 실은 ‘전략’이어야 한다는 생각이 든다. 이를 위해서 앞으로 추구해야하는 방향에 대한 고민과 생각들을 전사적인 발표 등에서 얘기하려고 노력하고 있다. 이 책을 읽고나서 크게 깨달은 한가지는 이러한 고민과 생각들을 얘기하는 것만으로는 부족하다는 것이다. 문제의 진단과 추진 방침이 있다고 하더라도 구체적인 행동 계획이 있어야만, 조직 내의 다른 사람들이 자발적으로 실천에 옮길 가능성이 높아진다는 생각이 들었다. 그래서, 앞으로는 방향성과 함께 구체적으로 어떠한 기술을 확보해야하고, 첫단추로 어떤 작업으로 시작해야하며, 근접 목표는 무엇으로 잡아야하는가를 정의하고 이야기에 포함시켜야겠다는 결론을 얻었다.
회사 또는 조직 차원에서의 전략, 방향성, 목표를 고민하고 결정하고 이끌어나가야 하는 사람들에게는 이 책을 강력하게 추천하고 싶다. 그렇지 않다고 하더라도 앞으로 회사나 조직에서 올바른 전략을 세우도록 하기 위해서 자신의 자리에서 어떠한 기여를 해야할지 고민하시는 매우 훌륭한 분들에게도 추천하고 싶다.
Silo season 2가 나온 걸 이제야 알게되어서 season 1을 다시 봤다. 이 드라마가 대중적으로 인기가 있을지는 모르겠지만 서두르지 않고 비밀을 조금씩 드러내면서 진행하는터라 세계관을 즐기는 맛이 있다. 특히 ep 8에서 부녀가 화해하는 장면이 너무 감동적이었다.
Sheriff인 주인공 측과 사일로의 헤게모니를 쥐고 있는 Judicial이 대립하는 이야기가 season 1의 주요한 뼈대에 해당하는데, 강력하고 무서운 적인 Judicial의 실권자가 정당한 체포에 순순히 응하는 장면이 나온다. 특별한 장면도 아닌데 현재의 한국 상황에서는 너무나 당황스러운 장면이었다.
Edward Sciore의 Database Design and Implementation을 읽었다. Database Design and Implementation 북 클럽 참여기에서 다루었던 책이고, 10월 초에 읽기 시작해서 출퇴근 길에 틈틈이 읽다 보니 약 3개월 만에 완독할 수 있었다. 바쁘거나 의욕이 떨어졌을 때에도 이메일 북클럽에서 Chapter별 오프닝 이메일이 와서 훌륭한 페이스메이커 역할을 해주었다.
이 책은 학부 수준의 텍스트로, 내용 면에서 어렵지 않았다. 초반에는 기본 개념을 다루다가, 후반부로 갈수록 앞에서 다룬 개념들이 결합되어 복잡한 구현이 가능해지는 부분이 특히 재미있었다.
이 책의 가장 큰 장점 중 하나는, 데이터베이스의 기본 개념과 구성 요소를 실제 코드로 설명한다는 점이다. 개념만 설명할 경우, 실제 구현 방식을 충분히 이해하지 못한 채 모호하게 넘어갈 수 있지만, 이 책은 코드를 통해 각 요소의 역할과 구현 방법을 구체적으로 이해할 수 있도록 도와준다. 흔히 텍스트에서 개념 설명과 코드의 제시가 따로 노는 경우가 많은데, 이 책은 개념 설명과 코드의 설명이 자연스럽게 연결되어있다. 또한, 코드의 설명도 매우 정성스럽게 이루어져 있어 코드의 이해도 쉬웠다.
다른 중요한 장점은, 데이터베이스의 요소에 대한 단순하고 직접적인 구현을 제시한 뒤, 이를 이용해 다음 장에서 한단계 위의 구성요소를 만들어 올리는 방식이다. 이를 통해 데이터베이스의 모듈화된 구조를 명확하게 보여준다. 추가적인 개념이 도입이 되면, 단순한 구현의 단점을 보완하는 개선된 구현을 제시해 점진적인 학습이 가능하도록 돕는다.
굳이 단점을 꼽자면, 각 Chapter 별로 현대 데이터베이스에서 흔히 사용되는 테크닉들과의 연결고리를 제시하는 Advanced Topic이 있었다면 더 보편적인 텍스트가 되었을 것이라는 아쉬움이 있다. 그러나, 이 책이 단순성과 이해 가능성을 우선시한 접근이었기 때문에 이는 큰 단점이라기보다는 방향성의 차이로 볼 수 있다.
특히 재미있게 읽었던 Chapter들은, 데이터베이스의 핵심이라고 할 수 있는 Transaction과 Recovery, Concurrency를 다루는 Chapter 5, 데이터베이스의 빌딩 블럭들을 이용해서 쿼리의 실행과 플랜을 구현하는 Chapter 8과 Chapter 10, 인덱스와 Materialization, Sorting, Buffer 활용, 기초적인 Query 최적화를 다루는 Chapter 12 – 15들이었다. 이렇게 적고 보니 확실히 후반부를 더 흥미롭게 읽었던 것 같다.
2019 – 2020년 경에 데이터베이스 논문들을 읽으면서 현대적인 데이터베이스의 테크닉들을 재미있게 공부했었는데, 이번에 이 책을 읽으면서 기본적인 개념 및 구현과 현대적인 테크닉 사이의 갭을 바라볼 수 있는 시각을 얻게 되었다. 우연한 기회에 북클럽을 통해서 이 책을 읽게되었는데, 생각보다도 공부의 방향을 잡는데 큰 도움이 되었다.
단순히 코드를 읽는 것보다 직접 작성하는 것이 학습에 더 효과적이라고 생각하기 때문에, 시간이 나는대로 이 책의 Programming Exercise 중 중요한 문제들을 풀어볼 계획이다. 앞으로는 이 책에서 다루는 데이터베이스의 기본 개념들과 현대적인 데이터베이스의 테크닉들 사이의 갭에 해당하는 영역을 공부해보고자 한다.
며칠 전에 PD수첩 ‘서울의 밤, 비상계엄사태’를 아내와 보면서 얘기를 하고 있으니, 첫째가 이게 뭐냐고 물어온다. (요새 아내랑 진지하게 얘기하고 있으면 항상 끼어들고 제대로 대답안해주면 화를 낸다.) 계엄령은 전쟁과 같이 나라가 위험한 상황에서 발령할 수 있는 것이고, 평소와는 달리 말을 하거나 돌아다닐 수 있는 자유도 제한할 수 있는 것이라고 대충 설명했더니, ‘지금 왜?’라고 한다.
다음날 급식 노동자 파업이 있어서 도시락을 뭐 싸갈까 얘기를 나누는 도중에 왜 그러냐고 묻는다. 노동자들이 일하는 환경을 더 낫게 만들기 위해서 파업할 권리가 있다고 설명해주었는데, 잘 이해했는지는 모르겠다.
이러한 일들에 관심을 가지고 질문하는 것만으로도 성장한 것이 느껴져서 대견하다. 언젠가 스스로 세상 일들을 이해하고 판단할 수 있는 나이가 될 때까지 이렇게 들려줬던 설명의 조각들을 조금이라도 기억해줄 것이라는 기대도 된다.
관심 가는 소프트웨어 북클럽이 종종 있다. 그런데 대부분 미국 중심이다 보니, 주기적으로 모이는 시간대가 보통 새벽이다. 그래서 참여하기가 힘들고, 참여를 못 하면 북클럽의 의미도 없어진다. 그런데 최근에 Software Internal 관련 이메일 북클럽이 있다는 소식을 듣고, 기대가 되어 바로 참여해보기로 했다. 책은 Edward Sciore의 Database Design and Implementation. 잘 모르는 책이지만, Software Internal 북클럽이니 믿고 일단 신청하고 주문부터 했다.
이메일 북클럽 운영 방식은, 참가자들이 Google Group에 가입해 매주 정해진 디스커션 리더가 새 챕터별로 쓰레드를 여는 형태였다. 특별히 큰 의무감이 따르지 않는 방식이었는데도, 매주 열리는 디스커션이 일종의 페이스메이커 역할을 해주었다.
요즘 공부 의욕이 높지 않아서 많은 시간을 들인 것은 아니고, 주로 퇴근길 버스에서 틈틈이 읽고 있다.
Chapter 1, 2, 3이 각각 Database Systems, JDBC, Disk and File Management 주제를 다루는데, 학부 수준의 내용이라 흥미가 생기지 않아 괜히 시작했나 싶기도 했다. Software Internal 북클럽인데 왜 하필 이 책을 고른 건지 의문이 들었다.
그러나 Chapter 3 마지막에 이 책의 가치를 조금 이해하게 되었다. 이 책은 Java로 만든 매우 단순한 데이터베이스 구현체인 SimpleDB를 함께 설명하면서, 각 장 마지막에 코드 레벨로 개념을 다룬다. Excercise에는 이 코드를 개선해보는 과제들도 있다.
어제 퇴근길에 Chapter 4 Buffer Management까지 읽었다. 데이터베이스의 핵심 구조이다 보니 집중해서 읽게 되었고, 코드까지 함께 다뤄볼 수 있어 흥미로웠다. 아침에 시간을 내어 오래된 SimpleDB 코드를 빌드하고 실행할 수 있게 만들었다.
처음 시도해보는 소프트웨어 북클럽이라 약간 망설임도 있었지만, 시간이 갈수록 생각보다 많은 것을 배우고 있다. 단순히 읽기만 하는 것과 달리, 직접 코드를 만져보며 책 속 개념들이 어떻게 구현되는지 더 깊이 이해하게 된다. 이제는 다른 언어로 포팅해보는 것도 하나의 도전으로 삼고, 앞으로도 꾸준히 참여해보려고 한다.
더이상 뉴스를 볼 필요가 없다.
내 삶에 영향을 미칠만한 중요한 뉴스는 어차피 지인들을 통해서 듣게 된다. 그 중에서도 매우 급박한 소식은 트위터를 통해서 듣는 것이 훨씬 빠르다. 모두를 위한 뉴스가 꼭 나에게 유익한 것은 아니다. 뉴스 기사들은 사건사고라든가 내가 응원하는 정당이나 스포츠팀의 패배와 같이, 오히려 불안감이나 스트레스를 주는 경우도 많다. 그래서 예전에는 뉴스 소비를 최소화하려고 노력하고, 또 지인들도 설득하기도 했다.
하지만, 언젠가부터 아침에 일어나자마자 정치적인 뉴스 영상을 보는 게 습관이 되어버렸다. 지난 총선 무렵이었던 것 같은데, 정확히는 기억나지 않는다. 정치 현안과 논점들에 대해서 이해하는 것도 재미가 있다. 이렇게 30분에서 1시간 정도 뉴스 영상으로 하루를 시작하는 게 자연스러워졌고, 인과관계는 불확실하지만, 그 후로 공부를 포함한 다른 생활 습관까지 느슨해진 것 같다.
이런 나 자신을 인지하고 기억을 되돌아보니, 아침에 30분에서 1시간 정도는 내가 하고 싶은 일들을 하는 것으로 루틴을 만들고 실행한 적이 있었다. 예를 들어, 아침 공부를 하거나 가벼운 근력 운동을 하거나, 아니면 조용히 명상을 하기도 했다. 오늘부터 다시 뉴스 없는 아침을 시작한다. 1일차, 그리고 앞으로 계속.