일요일, 5월 30, 2010

[독서광] 슬랙: 변화와 재창조를 이끄는 힘



책장을 보면 종종 원서와 한국어판 책이 나란히(엄밀히 말해 바로 옆(?)이라고 보기 어려운 상황이 일상다반사다) 자리를 잡은 경우가 있다. 원서와 번역서 사이에 출간 시차가 벌어져서 미리 원서를 사놓고 보니 번역서가 나왔는데 마침 출판사에서 보내주더라... 뭐 대충 이런 시나리오가 대부분이다. 이번에 소개할 "슬랙: 변화와 재창조를 이끄는 힘"도 원서로 이미 읽어본지 오래된 책이지만 인사이트 출판사에서 보내줬기에 기억을 되살릴겸 다시 한번 꼼꼼하게 읽어봤다. 초 간단 결론: 한번 더 읽어봐도 역시 재미있는 책이다.



슬랙이라는 단어가 익숙하지 않은 독자 여러분을 위해 구글 사전 서비스에서 검색 결과를 정리해보았다. 슬랙이 뭐냐 하면...



slack - 〈로프·새끼 등이〉 늘어진, 느슨한(loose), 〈말고삐 등이〉 느즈러진;〈규율 등이〉 해이된, 힘이 없는, 맥이 빠진;〈걸음 등이〉 굼뜬, 되는대로의, 부주의한(careless), 태만한


이미 화들짝 놀란 독자들도 계시겠지만, 정시 출근, 절도와 규율을 강조하는 높으신 분이 보시기에 발톱이 쑥 나오는 불경스러운 단어가 아닐 수 없다. 이 책이 국내에서 찻잔 속의 태풍으로 끝날 것 같다는 걱정은 예사롭지 않은 제목부터 시작되었다. T_T



이 책은 빨리빨리에 길들여진 기업 문화를 바꾸지 않고서는 생산성을 절대 높이지 못한다는 주장을 펼치기 위해 '여유'를 의미하는 '슬랙'을 중심으로 기업 스트레스의 영향, 변화와 성장, 마지막으로 리스크 관리를 설명한다. 슬랙은 출간한지 제법 되었기 때문에, 톰 디마르코가 쓴 후속 작품인 소프트웨어 프로젝트에서의 리스크 관리데드라인 : 소설로 읽는 프로젝트 관리를 비롯해 가장 최신 작품인 프로젝트가 서쪽으로 간 까닭은을 함께 읽어보면 더욱 이해가 쉽지 않을까 싶다.



'슬랙'을 처음 들어본 사람을 위해 설날과 추석 때 꽉 막힌 고속도로 상황을 들 수 있다. 고속도로를 최대로 _효율_적으로 활용하려면 단위 면적당 차량을 가장 많이 수용하도록 주차장으로 사용하면 된다. 하지만 최대로 _효과_적으로 활용하려면 차량 간격을 최소 100m(고속도로 100km 구간에서 안전 거리) 정도로 유지해야 한다. 여기서 100m는 낭비가 아니라 슬랙이다. 슬랙이 없다면 차량이 고속으로 주행하지 못하기 때문이다. 많은 회사는 '효율'과 '효과'를 크게 혼동한다. 항상 빠듯하게 경우에 따라서는 부족하게 사람을 유지하며 '효율'을 높였다고 자화자찬한다. 하지만 일이 집중되며 문맥 전환이 일어나면서 일대 혼란이 벌어진다. '효과'적이지 못한 작업 지연, 재작업, 품질 저하가 튀어나오기 때문이다. 푼돈 아껴 목돈을 잃어버리는 현상은 너무나도 자주 목격하기에 크게 놀랄만한 일도 대단한 일도 아니게 되어버린 슬픈 현실이다.



'효율'을 높여 '효과'를 줄이는 선에서 끝나면 천만 다행이다. 일을 열심히 해도 '효과'가 떨어지는 조직에서 자부심을 품고 일하는 직원을 찾기란 쉽지 않다. 아니 불가능하다고 봐야 한다. 효율만 강조하는 회사에서는 '초과 근무'를 너무나도 자연스럽게 생각한다. 하지만 장기간에 걸친 '초과 근무'는 생산성을 떨어뜨리는 주범이며, 개인의 영혼을 갉아먹는 독약이다. OECD 국가 중에서 대한민국의 노동 시간이 1위지만 생산성은 결코 노동 시간에 따라가지 못하는 이유가 바로 여기에 있다. 하지만 정량적인 평가에 익숙한 관리자 입장에서 출퇴근시간 만큼 좋은 평가 수단은 없다. 게다가 주말 특근까지 곁들이면 실패에 대한 훌륭한 변명거리까지 확보한 셈이 된다. "매일 오전 9시 출근 밤 12시 퇴근에 주말 모두 반납하고 모두 열심히 했습니다. 하지만 애당초 불가능한 일정이었습니다."



'슬랙'이 존재하지 않는 가장 큰 이유는 두려움과 공포가 지배하는 문화 때문이다. 애플이 하청을 준 폭스콘에서 벌어진 노동자들의 집단 자실 소동은 바로 '슬랙'이 부족하면 어떤 현상이 벌어지는지 극명하게 보여준다. 하지만 두려움과 공포는 전염성이 강하며 한번이라도 이를 사용해 효과를 얻으면(아니 솔직히 말하면 효과를 얻었다고 생각이 들면), 무자비한 일정 단축과 극단적인 인력 감축을 동원하게 된다. 결국 강도는 점점 더 심해지며 결국에는 파멸에 이른다.



지금 여유라고는 눈꼽만큼도 찾아보기 어려운 프로젝트 때문에 거의 떡실신할 지경에 놓인 개발자라면, 잠시 발걸음을 멈추자. 그리고 이 책을 한번 읽어보고 어떻게 처신할지 고민해보자. 지금까지 불합리한 방식으로 일해왔다고해서 앞으로도 계속 그럴 필요가 있을까? 성공한 조직이 규율과 유연함을 어떻게 조화시키는지 살펴보고 현재 몸담고 있는 조직이 이런 변화를 수용할만한 그릇이 되지 못한다면 그릇을 박살내고 나오자(그래도 세상은 절대로 안 망한다). 인생은 삽질하기에는 너무나 짧고 소중하기 때문이다.



EOB

목요일, 5월 20, 2010

[독서광] iPhone Advanced Projects: 아이폰 개발자를 위한 실전 프로젝트 개발서



1등만 기억하는 더러운 세상이 아니라 아이폰과 안드로이드만 기억하는 더러운 세상에서 살아남기 위해 아이폰 책을 하나 읽어보았다. 오브젝티브 C 문법은 어느 정도 알고(C+스몰토크. ㅋㅋ), 매킨토시 프로그래밍도 아주 약간을 알고 있기에 입문서를 건너 뛰고 실전 프로젝트 개발서로 직행했다.



"iPhone Advanced Projects: 아이폰 개발자를 위한 실전 프로젝트 개발서"은 아이폰 개발자들이 앱을 개발하는 과정에서 얻은 노하우를 정리한 책이라고 보면 틀림없다. 물론 전체 원시 코드와 개발 과정을 담았으면 국내 독자들이 환호성을 질렀겠지만, 지면 관계상 필요한 부분만 집중해서 설명하는 방식을 따르고 있기에 그리 친절하지는 않다. 하지만 "Hello, world"에서 맴도는 독자라면 실제 앱 프로젝트를 시작하기에 필요한 좋은 힌트가 되리라는 생각이다.



목차를 보면 알겠지만, 예제를 위한 억지 예제가 아니라 실제 앱에서 사용하는 각종 기술들을 정리하고 있다. 각 장에서 파티클 시스템, 체스를 위한 통신 시스템, 웹 라디오용 오디오 스트리밍 기법, 아이폰 디버깅 기법, 데이터베이스 접근을 위한 SQLite, WebObject를 연상하게 만드는 데이터 모델인 코어 데이터, 와이파이 네트워킹, 반응성 향상 기법, 푸시 알람 서비스, OpenGS ES 기법을 사용한 실제 예를 소개한다.



일반 데스크탑 클라이언트 응용이나 웹 프로그래밍, 서버와 시스템 프로그래밍과는 상당히 다른 앱 프로그래밍 나름의 모형을 아이폰 환경에 맞춰 제시하기 때문에 아이폰스러운 앱을 만드는 과정에 힌트가 되리라는 생각이다. 전문적인 프로그래머가 어떻게 앱을 설계하고 구현했는지 그리고 구현 과정에서 어려움을 어떻게 극복했는지 훔쳐볼 수 있으므로 이미 어느 정도 기초적인 지식을 습득하고 자신만의 뭔가를 만들어보려고 이리저리 시도해보는 앱 프로그래머가 보기에 적당하다. 입문서로 처음 읽으려고 구입한 독자라면 1장부터 바로 좌절 모드로 돌입할지도 모르겠다.



번역 상태는 중간이고((비록 완결된 예제는 아니지만) 코드가 상당한 부분을 차지하고 있으므로 오브젝티브 C 프로그래밍에 익숙한 독자라면 뭐... 못읽을 수준은 아니다), 역자주 상태는 최악이다. 보통 본문에서 사고가 터지는데 이 책은 어떻게 된 영문인지 역자주에서 대형 사고가 몇 개 터졌다(한 두 개라면 실수라고 치고 넘어갔을거다). 같이 읽어보자.



레이스 컨디션의 예를 들어보자. 스레드를 말이라 가정하자. 1번 말과 2번 말 두 마리가 경주를 한다. 1번 말이 항상 우승해야 정상 동작이라고 할 때, 만약 2번 말이 우승하게 된다면 무언가 잘못된 것이다. 이런 결과가 프로그램에서 나타나면 크래쉬될 수 있다. 비실비실한 2번 말이 우승할 확률은 굉장히 적기 때문에 크래쉬를 재현할 수 있는 확률도 낮다. 이러한 경우를 레이스 켠디션이라 하며, 레이스 컨디션은 늘 발생하는 게 아니므로 수정하기가 어렵다.


B급 프로그래머 촌평: 그냥 삶에 찌들린 불쌍한 프로그래머들을 마구 웃기려고 이렇게 썼다고 믿는다. 정말 심각하게 고민해서 (나름 독자를 위해) 저런 역자주를 달았다면, 뭐 여기서 더 할 말이 없다.



SQL을 어셈블리 언어에 비유한다면, 고수준 도메인 모델은 C 언어를 이용한 접근 방법이라 생각하면 된다.


B급 프로그래머 촌평: SQL을 어셈블리 언어에 비유한 책은 처음 봤다. 앞으로도 찾아보기 어려울 것 같다.



스텁 함수란 내용이 없는 빈 함수를 의미한다.


B급 프로그래머 촌평: dummy랑 stub이랑 햇갈렸나?



픽사의 스타트랙에 나오는 우주선의 이름을 기억하는가? 그 이름이 바로 기업(enterprise, 엔터프라이즈)이다.


B급 프로그래머 촌평: 스타트랙은 픽사가 아니라 파라마운트에서 만든 시리즈물이다. 그리고 굳이 기를 쓰고 번역한다면 '기업'이 아니라 '모험'이겠지.



EOB

일요일, 5월 16, 2010

[독서광] 나쁜 사마리아인들



국방부에서 지정한 군내 반입 금지 품목으로 일약 베스트셀러에 오른 이 책은 너무나도 유명해서 굳이 서평으로 남길 필요가 있을까 잠깐 고민을 하다가 그냥 재미로 독후감을 한번 정리해보았다. 장하준 교수야 이미 이 블로그에서 [독서광] 쾌도난마 한국경제라는 제목으로 소개한 바 있으므로 참고하기 바라며, 오늘은 나쁜 사마리아인들의 정체를 밝혀보기로 하자.



장하준 교수가 지목한 나쁜 사마리아인들은 이미 경제적인 성과를 거둬 소위 말하는 선진국 대열에 낀 국가와 이 국가들이 뒤에서 조정하는 각종 국제 기구(예: 호랑이 곶감에 버금가는 공포의 I/M/F)를 일컫는다. 나쁜 사마리아인들은 온갖 나쁜 짓을 일삼은 다음에 이를 망각한 채로 후발 주자에게 자신들이 이상향이라고 여기는 관례를 따르도록 만들어 진입장벽을 쌓는 특징이 있다. 물론 선구자니까 그 만큼 시행착오도 있었고 수업료도 내었으니 후발 주자들에게 입장료를 받아 챙기겠다는 마음은 이해가 가지만 그 결과 벌어지는 눈물나는 현실은 인정하지 못하겠다.



이 책은 선진국들이 전가의 보도로 휘두르는 자유 무역 주의, 평평한 운동장 이론, 중앙 경제 계획의 부정과 중앙 은행의 독립성 강화, 외국인 투자 자유화, 공기업 매각, 지적 재산권 보호, 재정 건정성 강화, 부패 척결과 같은 화려한 미사여구에 맞서 허상을 파해친다. 그러다보니 부패하고 비민주적인 나라를 옹호하고, 박정희 식의 중앙 경제 개발 정책을 지지하고, 보호 무역을 주장하고, 공기업을 선호한다는 인상을 주게 되어 오른쪽(?) 왼쪽(?)에서 동시에 두드려 맞는 기현상을 빚기도 했다. 하지만 이 책은 아름다운 과거가 아니라 추악한 현실을 다룬다는 점에서 샌드위치가 되어버린 대한민국의 현실을 파악하는 과정에 많은 도움을 주리라 생각한다.



몇 가지 기억할만한 문구를 살펴보자.



'자유' 무역 정책은 역설적으로 그 정책을 실행에 옮기는 개발 도상국의 '자유'를 축소시킨다.


자유 무역주의 경제학자들은 반대론자들의 기를 꺾기 위해 자유 무역에 반대하는 사람들은 진보에 반대하는 사람들이라고 암시하는 교묘한 속임수를 효과적으로 이용해왔다.


초국적 기업들은 어느 정도 '원하는 곳이면 어디든지 갈 수 있는' 상태가 되었기 때문에 '마음에 들지 않으면 발을 빼는 방식'으로 외국인 투자를 규제하는 나라에게 본때를 보일 수 있다. 이런 주장에 대해 당장 이렇게 반문할 수 있다. 나쁜 사마리아인들은 기업의 이동성이 높아져 국가의 규제가 무력해졌다고 하면서, 어째서 개발도상국들로 하여금 외국인 투자를 규제하는 능력을 제한하는 국제 협정에 빠짐없이 서명하게 하려고 기를 쓰는 것인가?


자본에 의해 착취당하는 것보다 나쁜 딱 한가지는 자본에 의해 착취당하지 않는 것이다.


언론은 전쟁, 자연재해, 전염병, 기근, 범죄, 파산 따위의 나쁜 사건들만 보도하는 경향이 있다. 좋은 성과를 내고 있는 국영 기업들 역시 상대적으로 언론의 관심을 끌지 못한다.


정부가 국영 기업 내의 부정부패를 통제하거나 일소할 능력이 없다면, 민영화를 한다 해서 갑자기 부정부패를 막을 능력이 생기지는 않는다.


신자유주의자들은 물가 상승이 일반 대중에게 피해를 준다고 떠벌이고 있다. 그러나 이와 같은 대중을 향한 수사는 낮은 물가 상승률을 유지하는 데 필요한 정책이 취업 전망과 임금 수준을 낮춤으로써 대다수 노동자들의 미래 소득을 줄일 수 있다는 사실을 은폐하는 것이다.


미국 작가 고어 비달이 미국 경제 쳬제를 "가난한 사람들의 입장에서 보면 자유 기업. 부자들의 입장에서 보면 사회주의"라고 묘사한 것은 매우 유명하다.


어떤 사람들은 항상 민주주의의 미덕을 칭송하면서도 '우방'인 나라가 비민주적일 경우에는 침묵을 지킨다. 이런 견해는 프랭클린 루즈벨트가 니카라과의 독재자 아나스타시오 소모사에 대해 "그는 개자식인지도 모른다. 하지만 그는 우리의 개자식이다."라는 유명한 말로 대표되는 실리주의 정책의 전통을 따르는 것이다.


실제로 19세기 자유주의자들은 대부분 민주주의에 반대했는데, 그것은 민주주의는 자유 시장과 양립할 수 없다는 생각 때문이었다.


경제 발전에 확실하게 좋거나 확실하게 나쁜 문화란 존재하지 않는다.


세계는 평평하다 따위의 어설픈 책에 질린 분들이라면 이 책을 꼭 읽어보기 바란다. 참고로 이 책 1장 제목은 "렉서스와 올리브나무 다시 읽기: 세계화에 관한 신화와 진실"이다.



EOB

토요일, 5월 01, 2010

[영화광] 허트 로커(스포일러 주의)



머리도 아프고 일도 하기 싫어서 어떤 영화를 보러 갈까 잠깐 고민하다 아바타를 제쳤다는(?) '허트 로커'를 보러 갔다. 결론부터 이야기하자면 대단한 만족! 물론 편집의 문제인지 자금의 문제인지 중간에 조금 내용이 이어지지 않는 느낌이 잠깐 들기는 했지만 뭐 이 정도는 충분히 용서가 가능하리라 본다. 큰 화면에 빵빵한 사운드 시스템으로 봐야 제맛인데, 유감스럽게도 멀티플렉스 영화관에서 마구 푸대접을 받고 있으므로 볼 사람은 얼른 봐야 할 것같다.



이 영화의 각본을 맡은 마크 보울이 플레이보이에 연재한 내용을 영화로 만든 '엘라의 계곡'도 비행기 안에서 이미 보았기에 나름 의미심장한 영화라고 생각하고 갔는데, 완전히 허를 찔리고 말았다. 이 영화를 놓고 반전 영화니 미국 중심 영화니 하는 논의는 솔직히 무의미하다는 생각이다. 소재는 전쟁이되, 사실상 주제는 전쟁이 아니니까. B급 프로그래머가 생각하기에 이 영화의 최대 미덕은 사실성도 아니고 긴장감도 아니고 액션도 아니고 눈물샘을 자극하는 산파도 아니고 애국심을 불러일으키는 팍스 아메리카나의 강조도 아니다. 그러면 뭐냐고? 바로 '몰입'을 대단히 잘 묘사했다는 점이다.



우리의 진짜 주인공이 등장할 때까지 최첨단 디지털 시대에 걸맞게 로봇을 사용해 수색하고 폭발물을 해체하는 작업을 진행한다. 하지만 불의의 사고로 팀장이 전사한 다음에 새로 등장한 월리엄 하사(제레미 네너)는 처음부터 끝까지 철저하게 아날로그 방식으로 폭발물 처리 임무를 수행한다. 게다가 거추장스럽다고 두터운 방호복을 벗어던지고 팀원 조언이 시끄럽다고 통신용 헤드셋 까지 집어던진 다음에 오직 뇌관 해체에만 집중하는 장면은 상황 자체만으로도 긴장감을 부여하기에 충분하다. 가장 위험할 때 가장 평온함을 느끼도록 만드는 담백한 시각적인 연출은 긴장감을 배가하는 효과를 준다.



작전 지역에 출동해서 일단 작업(?)을 시작하면 월리엄 하사는 거의 무아지경에 빠져버린다. 사방에 숨어 있는 저격병, 탱크라도 잡으려고 만들었는지 한 두 개가 아니라 여러 개가 함께 연결된 급조 폭탄, 사람을 초조하게 만드는 구경꾼들, 촉박한 시간에서 순간적으로 자유로워지지 않으면 목숨을 담보로 하는 폭발물 제거 작업은 절대로 불가능한 듯이 보인다. 대의 명분 때문에 군인 정신으로 작업하는 대신 아무 생각없이 집중과 몰입에 빠져 문제를 해결해나가는 모습이 상당히 인상 깊었다. (이 영화에서는 성조기 휘날리는 배경에서 높으신 분이 애국심을 호소하기 위해 일장 연설을 하지 않는다. 그 대신 격려차 온 높으신 양반은 폭탄 몇 개 제거했으며, 많은 폭탄을 제거하는 비법이 뭐냐고 묻는다. 이에 윌리엄 하사는 '살아있기 때문'이라고 우문현답을 한다. ㅎㅎㅎ)



임무를 완수하고 본국으로 돌아간 월리엄은 슈퍼마켓에서 시리얼을 못 골라서 당황해한다. 전쟁의 아픔 때문에 망가지고 사회에 부적응한 나머지 사고를 치는 대신 월리엄은 평화롭고 고요한 일상에서 벗어나 다시 전장으로 폭발물을 제거하러 돌아간다. 자신에게 능숙하고 몰입에 빠질 수 있는 일을 하기 위해서 말이다.



EOB