린 분석 - 성공을 예측하는 31가지 사례와 13가지 패턴 한빛미디어 IT 스타트 업 시리즈
앨리스테어 크롤 외 지음, 위선주 옮김, 박태웅 외 감수 / 한빛미디어 / 2014년 1월
평점 :
장바구니담기


 이제 스타트업과 린은 서로 떼어놓을 수 없는 단어가 되었다. 그런 시류속에 다수의 린스타트업 책이 나왔고, 한동안 클라우드와 소셜이 들어간 책들이 지배를 했었던 것을 생각해 본다면 이 책도 그런 시류에 속한 급조된 책이 아닌가 하는 의구심이 들었다. 하지만 알찬 구성, 그리고 꼭 스타트업이 아닌 고객과 서비스를 하는 회사라면 참고할만한 내용으로 가득차 있었다.

 

 데이터를 스타트업 성공의 핵심 요소로 받아들일 수 있게 지침과 도구와 근거를 제시하는 데 이 책의 목적이다. 그리고 궁극적으로는 훌륭한 스타트업을 빨리 구축하기 위해 데이터를 어떻게 사용하는지 보여주고자 한다. 린 분석은 사업을 구축하는 훌륭한 방법이며, 단순한 프로세스가 아니라 사고방식이다.  모든 것에 질문을 던지도록 만들고, 다른 무엇보다 학습에 초점을 두며 폭넓은 사고와 탐색, 실험을 통해 상황을 진정으로 이해하고 새로운 가능성에 대해 열린 자세를 가지는 것이다. 이렇게 하는 이유는 시장이 원하지 않는 것에, 아니 자신외에는 원하는 것이 없었던 제품과 서비스에 매달리느냐 인생과 자원을 낭비하고 싶지 않기 때문일 것이다.

 

 책의 초반에 언급된 경영학의 대가 피터 드러커의 "측정할 수 없는 것은 관리할 수 없다"는 말은 제대로 된 결정적 증거도 없이 자신의 사업을 사람들에게 설득하고, 자신의 현재 상황을 냉철히 보기 어려운 스타트업에 더욱 더 데이터의 측정과 분석이 중요함을 일깨워주는 말로 사용하지만 마무리는 로이드 S. 넬슨의 "경영에서 가장 중요한 숫자는 알려지지 않거나 알 수 없는 숫자다. 그러나 경영을 잘 하려면 어렵겠지만 이런 숫자를 고려해야 한다." 한다는 말을 언급한다. 데이터만 이야기 한다고 해서 꼭 숫자만이 옳다는 것은 아니다. 린 분석은 직감을 무시하는 것이 아니라 직감이 옳은지 틀린지 검증하는 것이다. 직관과 육감이면 충분하다는 사람들의 생각을 데이터 주도적인 소규모 실험으로 균형을 잡아주면서 직관의 유용성을 배제하지 않는 동시에 분석의 가치를 입증하는 것을 권장한다.

 또한 고객을 이해하려는 노력을 해야 하는 사례를 통해 고객 및 사용자와 직접 부딪혀 보는 것보다 더 좋은 방법은 없으며 이 세상의 어떤 숫자도 어떤 일이 발생하는 이유를 설명해주지는 않는다고 한다.

 

 얇은 책은 아니지만 책을 꼭 끝까지 읽어야만 한다. 책의 필요한 일부분만 발췌독하면서 정보를 얻을 수 있겠지만, 짜임새 있는 구성으로 함께 자신에게 왜 데이터가 필요한지, 지표가 필요한지를 생각해 볼 수 있고, 해당 지표를 어떻게 해석해야 할지, 해당 업계 별 어떤 지표가 유용한지, 그리고 그 지표의 수치는 어느정도가 정상수치인지 까지 알려주고 언급해주고 있다. 400페이지가 넘는 책이지만 정말 군더더기가 없는 '린' 한 책이었다.

 

 이 책의 핵심은 데이터에 대한 분석이겠지만, 사실은 자신의 사업을 꾸준한 학습과 지속적인 개선의 관점에서 생각하고 데이터로 의견을 뒷받침해야 하는 습관과 자세를 갖게 하는 것이 아닌가 싶다. 


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
뉴 노멀 - 디지털 혁명 제2막의 시작
피터 힌센 지음, 이영진 옮김 / 흐름출판 / 2014년 1월
평점 :
절판


 윗 그림은 책 뒷표지이고, 해당 내용은 본문에 나오는 질문이다. 아날로그의 시대를 거쳐 디지털의 시대에 진입한 사람과 처음부터 디지털의 시대에서 시작한 세대의 차이를 바로 알 수 있는 간단하면서도 놀라운 물음이다. 

 미래 세대들, 아니 현재의 어린세대들은 세상이 디지털화되었다는 사실조차 인식하지 못한 채 살아갈 것이다. 이렇듯 신기술, 디지털이 일반화가 되는 것을 저자는 뉴 노멀이라고 칭한다. 더이상 디지털이라고 제품이나 기술 앞에 붙히는 것은 시대에 뒤떨어지는 일이 될 것이다.


 시장적으로 볼 때도 2000년대 초의 인터넷 버블, 열광기를 지난 황금기로서 디지털이 일반화 되어 기술의 진정한 영향력이 발휘 될 것이기에 뉴 노멀 시대에 맞는 사고의 전환이 필요하다. 

 책에서 언급된 몇가지 이야기를 이야기 하면 아래와 같다.

- 디지털은 기술과 관련이 있는 게 아니라 사용 방법과 관련이 있다.

- 이제 소비자는 잠재적 콘텐츠 생산자로 봐야 한다.

- 마셜 맥루한의 유명한 '미디어는 메세지다' 라는 말을 넘어 '반응(Interaction)이 메세지다' 인 시대이다.

 인터넷 초창기에 '거리의 소멸'이라는 유명한 글이 있었는데, 이제는 '거리의 소멸'을 넘어 '시간의 소멸'까지 진행되고 있다고 한다.

 

 지금의 경영자층이나 일부 사람들은 현재까지의 디지털, 신기술들을 따라가기 벅차하고 있기에 인텔의 부사장인 래트너의 "우리가 디지털 혁명의 지난 시간이 매우 대단하다고 여긴다면 앞으로 맞이할 40년은 그보다 더 압도적이어서 지난 40년을 매우 보잘것없는 것으로 만들어버릴 것" 발언은 정말 무서운 말일 수 밖에 없다. 지금까지 잘 따라가고 있던 사람들도 빠른 혁명과 진보앞에 발걸음이 느려질지 모를 일이다.

 니콜라스 네그로폰테의 비트 기업과 원자 기업으로분류를 예를 들면서 물질적인 재료가 이동하는 원자 기업들은 그나마 뉴 노멀의 타격을 덜 받았다고 한다. 하지만 언제까지 디지털의 변화와 혁신에서 자유로울 수 없을 터이다.


 현재 간신히 따라가고 있는 사람, 기업들이 간신히 디지털 세계에 발을 디뎠으면서 안착했다고 생각할 수 있지만, 지금은 디지털 혁명의 절반인 첫 번째 여정을 마치고 가슴 설레는 두 번째 여정에 이제 막 오른 셈이며, 앞으로 펼쳐질 새로운 디지털 혁명, 기대해볼 만하다는 저자의 글은 뉴 노멀시대에 대한 대비가 없다면 결코 반길 수 없는 시대일 것이다.




댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
Effective Unit Testing - 클린 코드와 좋은 설계를 이끄는 단위 테스트, 한국어판
라쎄 코스켈라 지음, 이복연 옮김 / 한빛미디어 / 2013년 11월
평점 :
절판


 테스트 코드의 목적은 제품 코드를 작성하는 즉시 정확하게 구현했는지 검사하는 것과 그 후에 코드베이스가 커져도 계속 잘 동작하는지 지속해서 확인하는 것이라 할 수 있다. 

 그럼 바로 확인할 수 있는 테스트 코드가 필요한 이유는 무엇인가? 바로 비용의 문제이기 때문이다. 단순히 한 개발자의 야근 문제가 아니라 회사 차원에서 큰 비용이 든다. 구글의 측정결과 즉시 수정하면 $5가 들지만, 전체 빌드때 발견 $50, 통합테스트 $500로 높아지고, 시스템 테스트에 발견되면 $5,000의 비용이 든다고 한다. 그러니 문제는 가능한 한 빨리 발견해야 하기에, 빠르게 실행하고 정확한 테스트 결과를 내놓을 수 있는 신뢰할 수 있는 테스트 코드가 필요 한 것이다.


 이 책은 읽어야 할 대상이 너무나 명확한, 잘 타케팅된 책이다. 

 테스팅의 중요성과 필요성에 대해 가볍게 언급을 하긴 하지만 프로그램을 작성하면서 테스트를 왜 해야 하는지 모르는 프로그래머에게는 테스팅 기본 책을 읽고 읽는 것이 좋을 것이다. Java언어 프로그래머를 위한 테스팅 이야기책이지만 JUnit의 사용법이 부록 형태로 가볍게 다루어질 정도로, 자세한 툴의 사용법을 알고 싶을 때 보는 책이 아닌, 테스트 코드 자체의 품질을 높이기 위한 책이다.


 책에서는 테스트 코드도 제품 코드를 다루듯이 하고, 믿고 의지할 수 있을 만큼 철저하게 리팩토링하고 높은 품질을 유지하도록 많은 노력을 기울여야 한다고 말한다. 

 테스트 코드 작성을 권장수준의 커버리지만 넓히려고 하고, 수치만 달성하려는 태도가 아닌, 실제 코드와 같이 보라는 관점의 전환을 이야기하는 것이다.

 그렇기에 테스트 코드를 개선하는 과정에서 언급하는 테스트 냄새라던가, 여러 가지 원칙들은 테스트 코드가 아닌 제품 코드를 작성할 때에 적용하는 가독성, 유지 보수성을 높이는 리팩토링들과 같다고 할 수 있다. 특히 마틴 파울러의 리팩토링 책과 비슷하게 테스트 냄새와 그에 따른 카탈로그를 제공한다.
 하지만 테스트 코드 작성만의 다른 점도 적지 않게 있기에 그 점에는 유의해야 할 것이다. 일례로 테스트 코드에서 어떤 방식으로 의도를 표현할지 결정할 때, 코드 중복이나 성능보다 가독성과 명료성이 더 중요하다.

 책 중간에 정치인이 지키지도 못할 공약을 남발하는 경향을 비유하며, 지키지 못할 약속이라는 3가지 테스트 코드들을 언급한다.
- 아무 '일'도 안 하는 테스트
- 무언가 일은 하지만, 정작 '검증'은 전혀 하지 않는 테스트
- 이름값 못하는 테스트
 이런 테스트들은 모두 자신은 물론 동료까지 위험에 처하게 한다. 테스트는 자신이 명시한 동작에 문제가 생기면 실패해야 하는 것을 잊지 말아야 하며, 이 책을 통해 제품 코드를 작성하는 것 만큼의 노력을 테스트 코드에 쏟게 되면, 그를 통해 제품 코드 작성의 효율과 실력도 향상되리라 생각한다.

 개인적으로 테스트 코드에서 테스트 코드 중 할당문이나 메서드 호출 등에 박혀 있는 숫자로 된 값(매직 넘버)를 적시하는 경우가 있는데, 이를 의미가 분명한 이름의 상수나 변수로 대체해서 읽기 쉬운 코드로 만들거나, 가독성이 있게 작성해 우회하는 버릇을 들이도록 해야겠다.



댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
배명진 교수의 소리로 읽는 세상
배명진.김명숙 지음 / 김영사 / 2013년 11월
평점 :
장바구니담기


 사물을 볼 수 있게 해주는 눈에 대한 고마움, 시각에 대한 중요성은 매우 크다.

청각, 시각을 동시 잃었던 헬렌컬러는 에세이 '사흘만 볼 수 있다면'(Three days to see)에서 '사흘만 볼 수 있다면, 내가 마지막으로 눈을 감아야 할 시간이 되면 나는 지난 사흘 동안 만이라도 이 세상을 볼 수 있게 하여준 하나님께 감사 하다고 기도를 드리고 다시 영원한 암흑의 세계로 돌아가겠다.'라 쓴 이야기는 사람들에게 많이 알려져 그녀가 시각에 대한 부분만 아쉬워했다 생각하기 쉽지만, 청력을 상실한 그녀가 소리를 내기 위해 손의 촉각만으로 성대의 떨림과 입 모양을 확인하며 하루에 한 단어도 배우지 못할 때가 있을 정도로 힘들게 노력한 것과 역시 촉각으로 LP 음반의 노랫소리를 듣기 위해 시도했던 사실은 잘 알지 못한다.

 시각 못지 않게, 청각은 매우 중요하고 청각을 통해 들리는 소리는 언제나 우리 주변을 가득 채우고 있다. 

 

 이 책을 통해 소리에 대해서 몰랐던 지식을 알 수 있었고, 오해를 풀 수 있었다. 특히 책에서도 여러 번에 걸쳐 언급되는 백색소음은 소음(Noise)라고 하면 무조건 안 좋은 소리라는 오해에 대한 편견을 거둘 수 있었다.

 '백색소음'(white noise)은 우리가 평상시에 듣는 소리가 아니라 여러 소리들이 한데 합쳐져 분명하지 않은 채 들려오는 소리이며, 대부분의 사람들은 엄마 배 속에서 소리를 처음 듣는데, 이때의 소리가 백색소음이다. 얼핏 듣기에는 아무런 의미가 없는 소리라고 생각되지만 실제로는 자연에서 익숙하게 듣는 바람소리, 물소리와 같아서 우리 마음을 진정시켜주고 한 가지 일에 집중하게 만드는 효과가 있다. 과학적으로도, 여러가지 실험결과로도 실제 효과가 있음을 알 수 있었다.

 이미 이를 이용해서 많은 서비스들이 있는데, 카페의 소리, 빗소리등을 제공하는 무료 홈페이지들은 아래와 같다. PC작업을 할때, 효과가 있는지 한번 시도해보면 좋을 것 같다.

- 미국 오전, 점심시간 카페, 대학교 카페의 소리 제공

http://coffitivity.com/

- 카페소리와 빗소리를 섞어서 조절해서 들을 수 있는 서비스 제공

http://rainycafe.com/

- 커피숍, 빗소리, 파도소리, 장작불타는 소리, 새소리를 섞고, 조절해서 들을 수 있는 서비스 제공

http://soundrown.com/

- 우리나라 홍대, 강남, 신사동 카페의 소리를 들을 수 있는 서비스 제공

http://wheresound.com/

 

 이 외에도 우리의 소리를 지켜나가는 수많은 명창의 득음 과정이 무척 치밀하고 과학적이었다는 이야기, 세계 3대 바이올린의 이야기, 살인사건의 해결한 이야기 등 소리와 관련된 흥미로운 이야기들을 많이 있는데, 가장 놀라운 이야기 중 하나는 말하는 코끼리 코식이였다.

 해당 부분을 읽으며, 직접 들어보고 싶다는 생각에 찾아보니 잘 정리된 영상이 있었다. 게다가 생각지도 않았는데 저자인 배명진 교수님이 나와 더 재밌게 볼 수 있었다.

http://www.youtube.com/watch?v=Lx7vtljoyvk

 

 소리를 이야기하면 빼놓을 수 없는 것이 목소리 일것이다. 목소리를 잘 관리하는 것이 다른 사람에게 첫인상에 큰 호감과 신뢰를 줄 수 있음을 알 수 있었다. 하지만 아래의 구절을 통해 목소리 관리는 다른 사람이 아닌 나 자신을 위해서도 필요할 수 있음을 생각하게 되었다.

'내가 가지고 있는 목소리를 잘 관리하자. 내가 하는 말은 내 귀가 제일 먼저 듣는다. 내게 좋은 목소리는 다른 사람에게도 듣기 좋은 소리일 것이다.'


 끝으로 책을 읽고나니 무라카미 하루키의 유럽 에세이 먼북소리에서 그가 언급한 구절이 생각나면서, 역시 작가는 범상치 않은 감각을 지녔구나 하는 생각이 들었다.

 해당 구절을 옮기며 마무리해본다.

 '나는 외국을 방문하면 종종 소리를 통해 가장 첨예하게 그 이국성을 인식하곤 한다.

시각이며 미각, 취각 또는 피부 감각이 채 감지하지 못하는 무언가를, 소리를 통해서는 알 수 있을 것 같다.

어딘가에 앉아서 내 몸을 조용히 가라앉히고, 귓속으로 주위의 소리를 빨아들인다.

그러면 그들-어쩌면 나 자신의-이국성이 부드러운 거품처럼 둥실 떠오르는 것이다.'


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo
 
 
 
TopCoder 탑코더 알고리즘 트레이닝
타카하시 나오히로 지음, 윤인성 옮김 / 한빛미디어 / 2013년 11월
평점 :
절판


 요사이 많은 앱, 웹 공모전과 해커톤등이 있지만, 개발자로서 오롯이 개발 능력만으로 승부를 할 수 있는 대회에서 좋은 성적을 거두는 것을 더 큰 영광으로, 성공으로, 더 값진 것으로 생각하는 이들이 있으리라 생각한다. 최소한, 나는 그렇게 생각을 하고 있으니 나와 같은 사람이 있지 않을까?


 그런 내게 탑코더는 초능력자들만이 존재한다고 생각하는, 마치 그리스 로마 신화의 최고 12신들이 있는 올림포스 산 정상의 판테온 같은 곳이었다.

 차마 참가해볼 생각도 하지 못했던 곳이지만 이 책을 보고 처음 계정을 만들었고, 이제 이 책을 바탕으로 차근차근 연습한 후, 도전을 해야겠다는 마음이 들었다.


 이 책의 구성은 탑코더 등록방법과 프로그래밍 기초 내용을 소개한 후, 초급, 중급, 상급의 실제 알고리즘 문제 풀이 과정으로 되어있다.

 실제 알고리즘 문제들을 제시하고 그 문제에 대한 해석, 접근방법을 언급한 후 해결 과정과 실제 소스를 C#, Java, C++의 언어로 보여준다.

 처음 문제가 너무 낯설어 문제만 봐서는 도통 감을 잡지 못하다가, 입력된 예시와 그의 결과를 보면 바로 감을 잡을 수 있었는데, 초반에는 전체탐색이라고 정의한 전부 for문을 이용해서 loop를 이용하는 방법을 이용하면 수학적 지식 없이도 거의 모든 문제의 해결이 가능했다.


 하지만 중급에서 프로그램의 실행 시간과 메모리 사용량이 있는 실제 탑코더의 환경을 언급하고 실행시간과 메모리 사용에 대해서 신경을 쓰게 된다.

 이를 위해 '한 번 계산한 것은 두 번 계산하지 않는다.', '하지 않아도 되는 계산은 처음부터 하지 말자.', '탐색 범위를 좁히자'의 3가지 핵심 방법을 제시하고 중요한 내용답게 많은 분량을 할애하여 설명한다.


 마지막인 상급이 되면 상당히 어려운 문제가 나오지만 지금까지 배운 알고리즘, 전체 탐색, 처리를 정하고 범위를 한정하는 것 등을 조합하면  반드시 풀 수 있기에 바로 답을 보고 싶은 마음을 참으며 여러 가지 방법을 깊게 생각하고 시도해 보는 것이 좋은 학습이 될 것이다.


 이 책에서 초반에 가장 강조하는 것은 프로그래밍과 관련된 기초 지식이 아니라 오히려 자신감, 도전정신을 갖는 것이다. 그러다 보니 자기계발서에서 볼 수 있는 듯한 구절들도 많이 보이지만, 어는 곳에서나 통용될 만한 진리임에는 틀림없는 것 같다.


수학적 지식과 어려운 알고리즘을 알아야 풀 수 있다는 생각은 이제 버려주세요.

Division 1 에서 높은 수준의 문제가 아니라면 특별한 지식이 없어도 풀 수 있습니다.

"어떻게든 당연히 풀 수 있어!"라고 생각하는 것이 프로그래밍 대회 공략의 첫걸음입니다. - p78


 그리고 그 다음에 필요한 것은 많은 문제에 도전하고, 풀어보는 노력으로 보인다. 아래와 같이 책에서 언급했다 싶이 한 번에 문제를 풀 수는 없을 것이다. 당연히 많은 실패를 겪게 되니 좌절하지 말고, 조금 더 생각하고, 도전해봐야 할 것이다.


만약 실수했어도 실망하지 말고 실수의 원인을 분석해보세요. 

실수를 반복하지 않도록 연습하면 이러한 수준의 문제는 쉽게 풀 수 있을 것입니다. - p78


실패를 겪다 보면 금세 계산량의 개념이 익혀질 것입니다. - p201


분명히 말하지만 법칙을 발견하는 정석 같은 방법은 없습니다.

가능한 많은 문제를 풀어보는 방법밖에 없습니다. - p333

 

 책의 내용은 대체로 만족스러웠지만 초반의 프로그래밍 기초는 실제 어느 정도 지식을 갖춘 사람에게는 의미가 없고, 전혀 모르는 초심자에게는 그리 쉬운 설명은 아니기에 큰 도움이 되지 않을 것 같다는 생각이 들었다.

 마지막 장에서 소수, 최대공약수 최소공배수의 간단한 수학적 지식을 언급하고 있는데 이 부분이 프로그래밍 기초에 이어나오는 것이 좀 더 어울리지 않을까 하는 생각이 들었다.

 또한, 이 책에는 C#, Java, C++ 의 언어들이 언급되기에, 이 점이 장점이자 한 언어만 사용하는 대부분의 개발자에게는 책을 보는 흐름을 해치는데 한 언어에만 집중에서 여러 언어 버전으로 나와도 괜찮을 것이라는 생각이 들었다.

 하지만 위와 같은 의견은 개인적인 의견이기에, 전체적으로 보기 좋은 책이라는 생각이다.


댓글(0) 먼댓글(0) 좋아요(3)
좋아요
공유하기 북마크하기찜하기 thankstoThanksTo