'개발'에 해당하는 글 4건

드리밍 인 코드 - 10점
스콧 로젠버그 지음, 황대산 옮김/에이콘출판

드디어 다 읽었다. 지난 1월 에이콘출판사 블로그에서 진행된 이벤트에 참여해서 받은 이 책에는 역자 황대산 님께서 직접 사인을 해주셨다. 그러고 보니 황대산 님에게 사인 받은 책이 루비온레일즈 세미나에 참석했을 때 받은 책을 포함해서 두 권이 되었다.

나름대로 큰 기대를 갖고 읽기 시작한 이 책은 사실 읽기가 쉽지 않았다. 그 이유는 출퇴근 지하철에서 밖에 책을 읽기 어려운 개인적인 상황도 있었지만 출퇴근길 지하철에서 읽더라도 엄청난 집중력을 끌어내서 페이지를 넘기게 하는 소설책과는 다르게 이 책은 페이지가 잘 넘어가질 않았던 이유도 있다. 중간중간 등장하는 설명들이 때론 이야기의 흐름을 끊어지게 만드는 부분도 있었고 이미 결말에 대해서 어느 정도 알고 시작해서 그런지, 그리고 초반부터 그런 암시가 있어서 그런지 결말에 대한 궁금증이 일반 소설과는 상대적으로 적었기 때문이라고 생각이 든다. 이 책을 IT와 관련이 없는 사람들이 읽기는 쉽지 않을 거라는 생각이 든다. 물론 그런 사람들을 대상으로 해서 구구절절 상세한 설명을 겻들이기는 하였으나 그러기엔 너무 재미가 없다는 생각이다.
하지만 이 책이 프로젝트 관리자나 개발자들에게는 자신들이 하고 있는 일들에 대해서 방법에 대해서 심각하게 고민할 수 있는 일종의 기회를 제공하고 있기 때문에 매우 고무적이라고 볼 수 있다. 더구나 이제 막 IT 프로젝트 등에 발을 들여놓은 개발자는 기본이고 기획자나 디자이너도 읽어보면 좋을 내용으로 가득하다.

챈들러 프로젝트에 대해서 이 책을 통해 처음 알게 되었다. 그동안 내가 참여해온 프로젝트와 비교해봤을 때 많은 차이점이 있지만 전혀 공감하지 못할 만큼은 아니었다. 책을 읽으면서 나 또한 챈들러 프로젝트에 동참하고 있는 듯한 느낌을 받았다. 그래서 더 답답하고 때론 짜증도 나고 왜 이러는가 싶은 마음도 들고 그랬던 것 같다. 그러나 나 역시 챈들러 프로젝트에 투입되었었다면 마찬가지가 아니었을까라는 생각을 한다.

책을 읽으면서 여러군데 밑줄을 그어놓고 나중에 다시 읽어봐야겠다고 생각했다. 지금 다시 읽어보니 여기에 옮길 만큼 딱히 와닿는 내용이 눈에 띄지 않는데 그나마 거의 끝 마무리 부분에 나왔던 이야기를 옮겨본다.

언제가 됐든 실제 세계에서 뭔가 유용한 것을 만들어내려면, 프로그래머들은 그들만의 동굴에서 나와 외부인과 소통해야만 한다. (중략) 즉, 소프트웨어의 근본적인 어려움은 인간의 자유 의지와 예측 불가능성이 기술의 진전에 미치는 영향에 있다. (중략) 사람은 프로그래밍의 대상이 되기 어렵다. 사람들이 어떤 행동을 할지는 상상력이 아무리 뛰어난 프로그래머라도 결코 예측하지 못한다. 그리고 사람들은 항상 프로그래머의 상상을 뛰어넘는 무언가를 원한다. - p.414 에필로그 중에서

프로젝트를 수행하는데 있어서 중요한 요소는 일정과 사람이다. 때론 기술이나 도구가 포함될 수도 있을 것이다. 하지만 아무리 최신 기술과 도구를 사용한다고 해도 프로젝트는 제대로 수행되지 않을 수 있다. 바로 일정과 사람 때문에... 일정과 사람을 제대로 관리하려면 원활한 의사소통이 아니면 불가능하다. 원활한 의사소통을 위해서는 항상 열린 마음과 열린 사고를 가지고 있어야 한다.

이벤트 선물로 받은 책이므로 더 좋은 서평 내지는 후기를 적어야 해야한다는 부담감은 있지만 그러기엔 너무 부족한 느낌이다. 기회가 되면 나중에 원서로 다시 도전해보고 싶기도 하다. 어떻게 다른지 좀 비교해보고 싶은 마음이 든다. 물론 번역이 안 좋았기 때문에 그런 것은 아니다.


트랙백  0 , 댓글이 없습니다.
사랑하지 않으면 떠나라! - 10점
차드 파울러 지음, 송우일 옮김/인사이트

책을 다 읽었다고 해서 그 책의 내용을 모두 이해하고 숙지하고 실천하고 있다는 것은 말도 안되는 일이다. 더더구나 이런 실천서의 경우엔 말이다.

일부 양심있는 개발자들이 이 책을 읽다보면 심하게는 자괴감에 빠져 그동안 이력서나 자기 소개서에 개발자, 프로그래머라고 적어 온 것에 대해 매우 챙피한 생각이 들 수 있다. 그만큼 저자의 프로그래머에 대한 기준은 매우 높다. 하지만 나는 그의 생각에 동의한다. 그리고 그 기준을 뛰어넘기 위해서 노력해야 한다고 생각한다.

매년마다 수많은 전산학도들이 대학을 졸업하지만 그중에 일부는 대학원으로 진학하고 일부는 사회로, 실무로, 프로젝트로 뛰어들고 있지 않나 싶다. 물론 그 중에 몇몇은 전공과 관련된 창업을 시도하기도 할 것이다. 하지만 이 책에서 말하는 개발자로서 갖춰야할 기본적인 자질이나 태도 등을 갖춘 사람은 찾아보기 힘들 것이라고 생각한다.

해외의 경우엔 역할이 매우 세분화되어 있다. 하지만 우리나라의 실정은 아직 그렇지가 못하다. 단순 코더가 프로그래머로 구분되는 경우도 많고 프로그래머인 줄 알고 고용했지만 일을 시켜보면 코더인 경우가 많다. 본인 스스로를 코더라고 지칭받는 것을 꺼리는 사람들도 많다. 어쨌든 자신이 코더가 아닌 프로그래머가 되고자 한다면 그만한 노력을 해야 한다고 생각한다.

과거로부터 지금까지 프로그래머가 갖춰야 할 자질이나 덕목에는 어떤 것들이 있다고 나름대로 생각해온 것들이 있을텐데 이 책에서는 그동안 없던 것들이 추가되고 있고 그동안 있던 것들 중에서 제외시키는 것도 있다고 생각한다.

예를들어, 그동안 개발자는 예술이라고 불릴 수 있을 정도로 설계와 코딩을 할 수 있어야 한다고 생각해왔다. 남들이 전혀 알 수 없는 자기만의 독특한 스타일과 창의력으로 매우 월등한 성능을 내는 알고리즘을 짜내는 것이 훌륭한 개발자의 몫이라고 생각해 왔지만 이젠 달라졌다. 단지 분석과 설계를 잘하고 코딩을 잘한다고 끝나는 게 아니다. 그것을 넘어 또 무엇인가를 갖춰야 한다고 저자는 말하고 있다.

어느새 개발이란 일을 시작한지 6년이라는 세월이 흘렀다. 그리고 회사에서는 내게 팀장이라는 직함을 주었다. 매우 부담스런 일이 아닐 수 없다. 하지만 그렇다고 피할 수도 없는 노릇이다. 물론 나보다 더 빠르게 달려가는 사람들도 있다. 더구나 전산을 전공한 친구들 중에은 이미 대형 프로젝트 관리자의 역할을 수행하고 있기도 하다. 또는 세미나에서 강연을 하기도 하고 책을 쓰기도 한다. 그만큼 노력했기 때문이라고 생각한다. 나름대로 자신의 경력을 관리하고 개발해 왔기 때문이라고 생각한다. 물론 다른 사람과 비교하는 것보다는 현재 지금 내가 있는 이 위치에서 앞으로 어떻게 나아갈지를 고민하는 게 중요하다고 생각한다.

IT기술은 하루가 다르게 발전하고 변화하고 있다. 6년 전의 기술이 지금은 아예 쓰이지 않거나 엄청난 발전을 하고 있기도 하다. 따라서 5년 뒤 10년 뒤를 내다보는 것은 결코 쉽지 않은 일이다. 하지만 이 책을 읽고 나서 5년 뒤 10년 뒤의 내 모습에 대해서 조금이나마 그림을 그려볼 수 있게 되었던 것 같다.

처음에는
한국적인 상황과 많이 동떨어진 이야기가 아닐까라는 생각을 했었지만 매우 중심을 잡고 있으며 직접 경험한 것을 바탕으로 쓰고 있기 때문에 그가 제시하는 실천목록들은 대부분 공감하지 않을 수 없었다.

아래 링크를 따라가보면 스프링노트에 이 책의 매 장(Chapter) 끝에 있는 '실천하기'라는 부분을 모아봤다. 혹시 궁금한 분은 이것만 봐도 이 책이 담고 있는 이야기가 어떤 건지 대충 알 수 있을 것 같다.

사랑하지 않으면 떠나라! (차드 파울러 지음 | 송우일 옮김, 인사이트) 실천하기 모음

이제 곧 대학을 졸업하고 프로그래머가 되기 위해 준비 중이거나, 아직까지도 프로그래머가 될지 말지 고민하고 있거나, 5년 미만의 경력을 가진 개발자로서 앞으로 계속 프로그래밍을 할 것인지를 고민하고 있는 사람들에게 좋은 길잡이가 될 수 있을 것이라고 확신한다. 어쩌면 개발업체에서는 개발자를 고용할 때 이 책을 읽어봤는지에 대해서 확인해보는 것도 좋은 평가 기준이 될 수 있다라고 생각한다.


트랙백  1 , 댓글이 없습니다.

WPF/E

NOW(現)/I.T. 2007.03.21 11:10
chin179님의 블로그 Chin179에서 와우! 윈도우비스타에서 WPF/E기반의 웹 쇼핑몰 영상이라는 포스트를 보면서 작년 12월 홍대 클럽에서 개최했던 d2:MIX 세미나가 생각났다.
잠시 잊고 있었는데...

과연 마이크로소프트에서 준비중인 아니 어쩌면 이미 비스타를 통해서 선보이고 있는 WPF(Windows Presentation Foundation, NET 3.0의 새로운 표현 기술)가 현재 화두가 되고 있는 미투데이플레이톡, 태터툴즈스프링노트과 같은 텍스트 기반 웹2.0 서비스에 사용된 기술들 뿐만 아니라 Adobe의 Flash와 Flex를 따라잡을 수 있을지 궁금하다. 어쩌면 전혀 다른 영역을 비교하는 건 아닌지 싶기도 하다.

태오님은 WPF Everywhere라는 강좌를 통해 WPF/E를 아래와 같이 정의하고 있다.
"WPF/E"란 무엇인가? 이를 한 문장으로 정의하자면 다음과 같다.

"풍부한 기능과 화려한 비주얼, 인터렉티브한 UX를 가능하게 하며, 크로스 플랫폼 및 크로스 브라우저를 지원하기에 어디서나(everywhere) 실행이 가능한 새로운 웹 표현 기술"

류한석 님의 RIA(Rich Internet Application) 트렌드를 따라가지 못한 마이크로 소프트라는 포스트를 보면 MS는 대역전을 꿈꾼다고 한다.
훔... 솔직히 기존의 MS 진영에 속해 있던 개발자들은 자연스럽게 WPF/E라는 기술을 이용하여 매력적인 웹서비스를 만들어낼 가능성이 높다. 하지만 기존에 Flash나 Flex 등을 이용해서 UI를 디자인했던 디자이너들까지 아우를 수 있을지는 좀 두고 봐야하지 않을까 싶다.

사용자들에게 있어서 크로스 플랫폼 및 크로스 브라우저를 지원하는 것은 정말 매력적인 일이 아닐 수 없다. 하지만 개발까지 다른 플랫폼에서 할 수 있을지는 모르겠다. MS진영에 속한 개발자는 윈도우라는 플랫폼에서 개발할 수 밖에 없다. 물론 그렇기 때문에 MS진영에 속한 개발자라고 말하는 것일테지만 자바나 루비와 같은 언어의 경우 특정 플랫폼에 종속되지 않고도 개발이 가능하다. 솔직히 나는 MS에서도 그런 개발툴을 제공하는 세상이 좀 빨리 왔으면 좋겠다. 애플의 OSX든 리눅스든 윈도우든 어느 플랫폼에서든지 개발이 가능한 프로그래밍 언어와 툴을 사용해서 개발하고 싶다. 결국 오픈 소스 진영으로 움직여야 하는 걸까?

나는 아무리 벗어나려고 해도 벗어나기 힘든 MS진영에 속한 웹개발자이다. 하지만 기회만 있다면 MS진영을 벗어나 오프소스 진영으로 움직이고 싶은 충동을 자주 느꼈었고 아직도 느끼고 있다. 아마도 윈도우용 어플리케이션 개발이 아닌 웹개발자이기 때문일 수도 있다. 하지만 차마 그럴 용기도 기회도 없었기 때문은 아니었는지 자문해본다.
.



트랙백  0 , 댓글이 없습니다.
저는 당신이 저보다 훌륭한 개발자가 될거라고 생각합니다.
왜냐고요? 저보다 훨씬 젊기 때문이지요.
하지만 직접 코딩해서 디버깅 해보지도 않고 포기해버리면 안됩니다.
절대로...
그런 유혹에 넘어가기 시작하면 더이상 개발은 그만 둬야하는 건지도 모릅니다.

저는 책이나 데브피아 등의 레퍼런스도 좋지만
저와 같은 ms 진영의 개발자에게는
msdn만한 레퍼런스는 없다고 생각합니다.

정말 안될 것처럼 보이는 것도 msdn에 나온 자습서를 따라 해보면 되는 경우가 종종 있거든요.ㅋ

한가지 더...
내가 풀지 못하는 문제는 다른 사람이 풀 수 있지만
다른 사람이 풀지 못하는 문제는
나도 풀지 못할 수도 있습니다.
때문에 도전해볼 가치가 있는 거라고 생각합니다.

원하든 원치 않든 간에 같은 팀이니깐
서로 풀리지 않는 문제가 있으면 같이 머리 맞대고
고민할 수 있으면 좋겠어요^^
그래야 서로 발전할 수 있으니깐... 화이팅~


트랙백  0 , 댓글이 없습니다.