코딩은 즐거우나 리뷰는 결코 즐겁지 않아.

오늘 아침에 코드 리뷰 결과를 확인했는데…. 1000라인이 넘는 diff코드에 코딩 컨벤션을 맞춰 달라는 수많은 코멘트를 확인하고 충격에 빠졌다. C++ 로 코딩을 하면서 사실 네이밍 이슈에 많은 신경을 쓰지 못했지만 이 정도의 코멘트를 받을 정도로 엉망이지는 않았다. 특히 많은 것은 다른 변수명과 통일성이 없다. 이 변수가 의미하는 바를 이름이 표현해 주지 못한다.. 그리고 변수명을 좀더 짧게 […]

계속 읽기

C++ 그리고 Machine Learning 프로젝트

요즈음은 C++을 좀더 심도 깊게 공부하려고 틈틈히 책을 보고 있다. 내년에 어떤 프로젝트를 하게 될지 모르고 지금 하는 프로젝트가 C++을 심도깊게 다루는 처음이자 마지막 프로젝트가 될지 모른다는 느낌에 이번 기회를 최대한 활용하려고 한다. 사실 국내에서 C++관련 책은 많이 나와 있지만, 이 언어를 이용해서 실제 프로덕트를 만드는 프로젝트는 그리 많지 않다고 알고 있다. 그래도 다들  C++ […]

계속 읽기

thanks for 김효경

최근 한글 처리를 주로 하게 되서 처음으로 한글 관련 논문을 봤다. 임교수님 밑에서 수학을 했지만 한글 처리보다는 검색과 스팸관련해서만 공부해온 터라.. 이쪽으로 상당히 문외한 이다. 이 논문을 보고 오늘 본사에서 k-phone에 대해서 잠깐 회의 시간에 설명을 해줬다. 게다가 이것을 우리 모듈의 어느 곳에 사용하면 되는지 까지.. PM 분 등이 꽤 긍정적인 반응을 보였다. 이미 한국에서 […]

계속 읽기

3주째 코드리뷰 중…

주수로만 3주째 코드 리뷰 중이다. diff로 4천 라인 가까운 코드라 좀 오래 걸릴거라 예상을 했지만, 이정도로 오래 걸릴 줄은 몰랐다. ㅠㅠ 그래도 diff 업데이트 하면서 점점 코드가 튼튼해 지는 것을 피부로 느낄 수 있어서 기분 좋기는 하지만, 내 코드를 누군가에게 보여주고 오류를 발견해 달라고 요청하고 그 오류 리포트를 받는게 과히 기분 좋지만은 않은게 사실이다.하지만 다음 […]

계속 읽기

Probabilistic data-driven Development

내가 본 글에서는 ‘확률적 데이터 드리븐 개발(Probabilistic data-driven Development)’ 이라고 언급하고 있고 내가 에자일 개발방법론은 잘 모르지만 그가 쓴 글에서 이 방법이 궁극의 에자일 프로그램 개발 방법이라는 이야기까지 언급이 되어 있었다. Peter Norvic이라는 구글 리서치 디렉터가 만는 100라인밖도 안되는 Spell Checker 프로그램을 보면 과연 그 말이 허언이 아님을 알 수 있다. 대신 그가 프로그램과 함께 […]

계속 읽기

제가 좋은 기술을 가졌다구요? 하지만 여러분 덕분입니다.

3일동안 회사 메일을 들여다 보지 않다가 지금 들여다 보고 너무 기분 좋은 메일을 받아서 어쩔줄 모르며 메일 쓴다. 지난 4개월동안 한가지 프로젝트에 매달려서 많은 경험을 했다는 사실은 이미 블로그에 이야기 한지 오래다. 전혀 새로운 개발 환경과 프로세스에 매달리며 동시에 성과도 내야 하는 그런 프로젝트를 하면서 같이 일하는 분들에게 누가 되지 않도록 정말 많은 노력을 하고 […]

계속 읽기

6개월 남았다…

본사 개발자하고 일하다 보니 멋진 개발자, 멋진 개발 팀 리더가 어떤건지 아주 피부로 실감을 하게 해준다. (어떤게 멋진 개발자이고 팀 리더인지는 나중에 따로 기회 있으면 자세히 포스팅 하겠다) 사실 내 경력 6년을 통틀어 봐도 이 정도의 프로젝트를 해본 경험이 거의 전무했다. 한 분야에 수십년을 해온 백발이 성성한 최고 고수부터 나처럼 처음 이런 프로젝트에 참여한 신출내기까지, […]

계속 읽기

EM 클러스터링 알고리즘 코드

정확한 코드는 이곳에서 제공하고 있습니다. —————————————————–얼마만의 코드 관련 포스팅인지 모르겠다. 휴우~~~  어제 boost/math 라이브러리에 확률관련 모듈이 있는걸 보다가 문득 생각이 들어 EM 클러스터링 알고리즘을 구현해 봤다. EM 알고리즘은 k-means알고리즘과 접근 방식이 100% 동일하나 단 확률과 통계 관련 지식이 조금 필요하다. 특히나 likelihood 관련 개념 이해는 구현을 위해 필수적이다. 이 알고리즘의 구동 과정은 아래와 같다. 1. […]

계속 읽기

내가 현재 생각하는 최고의 C++책은?

금번 C++프로젝트를 하면서 집에 이렇게 내가 많은 C++책을 가지고 있었나 할 정도로 다시 한번 놀랐다. 뭐 그저 그동안은 공부하기 위한 C++이였다. 그리고 밥 먹고 살기위한 C++은 아니였으니 말이다. 내가 최근에 이렇게 C++ 노래를 부르는 이유는 따로 있다. 언어를 언어답게 쓰는 프로젝트를 처음 만났기 때문이다. 그래서 C++을 처음부터 끝까지 다시 리뷰를 하는게 필요했다. 사실 리뷰라고는 하지만 […]

계속 읽기

글로벌 프로젝트를 하면서 느끼는 점 몇 가지

3개국의 개발자들이 모여서 개발을 함께하는 프로젝트를 참여하고 있는데 이에 대해서 느끼고 있는 점 몇 가지를 올려본다.한국에서 한국 개발자들과 일하는 것과는 사뭇 많이 다르다. 1. 개발을 하는 전체 작업중에 코드 리딩이 50% 정도 되는 듯 하다. svn update를 하면 전날 코드의 업데이트가 줄줄 되는 것을 볼 수 있다. 이들 코드를 살펴보고 어떤 점이 내 모듈에 영향을 […]

계속 읽기