Media Log

이스트소프트 블로그에 반가운 글이 올라왔다.
한 때 흠모했던, 내게 많은 영향을 주었던 어떤 분의 이야기.

프로그래머 민영환 부사장을 만나다.
 
 

저작자 표시 비영리 동일 조건 변경 허락
신고

submit

마이크로소프트가 OS 업그레이드시 고의로 기존 응용 프로그램들이 동작하지 않도록 만든다는 비난을 받을 때면 나는 정말 화가 난다. 만약 어떤 프로그램이 윈도우 95에서 실행되지 않는다면 나는 이를 개인적인 실패로 받아들였다. 나는 수 많은 밤을 새어가며 윈도우 95에서 응용 프로그램들이 제대로 동작할 수 있도록 써드 파티 프로그램들의 버그까지 디버깅했다.

저작자 표시 비영리 동일 조건 변경 허락
신고

submit
이거 당황스럽군요.

몇 일전 Going Native 2012 키노트 발표에서, 적절한 자료구조와 알고리듬을 사용하라는 이야기를 하던 중 준비한 프리젠테이션 자료가 한장 빠진 것을 깨닫고서는.

비야네의 예기치 못한 방송사고(?)에 긴장해서 지켜보다가 그의 대처에 폭소하여 쓰러질 뻔했다.

저작자 표시 비영리 동일 조건 변경 허락
신고

submit

세상은 점점 더 좋아져간다. 빨리 빨리 재미있고 편리한 것들이 잔뜩 나오길.

http://www.h-online.com/open/news/item/Canonical-announces-Ubuntu-for-Android-1439874.html
http://www.ubuntu.com/devices/android
저작자 표시 비영리 동일 조건 변경 허락
신고

submit
C++에서 함수 이름이 맹글링 되는 것은 다들 알고 있는 사실일 것이다.
링커 오류를 만나게 되면 원인을 분석하기 위해 때때로 함수의 오리지날 이름이 알고 싶을 때가 있다. 마이크로소프트의 도구로 만들어진 함수들에 대해서는 undname 이라는 프로그램이 바로 그런 일을 해준다.

레이몬드 첸의 한 포스트를 읽다가 그는 단순한 함수들에 대해서는 undname을 사용하지 않고도 한눈에 척 알아볼 수 있는 것 같다는 느낌을 받았다.
어떻게 그런 일을 할 수 있는지 알아보다가 강성훈씨가 쓴 이 포스트를 보게 되었다. 그가 말하는 것처럼 아마 현재까지 가장 잘 정리된 자료라는데 동의한다. 어린 나이에 정말 대-_-단 하다고 밖에는 말할 수 없다.

...하지만 나는 한참 살펴보다가 결심했다.
'빌어먹을. 나는 그냥 undname이나 써야겠다.'

흐아, 생각처럼 간단한 일이 아니었다.
그런데 레이몬드 첸은 정말 간단한 함수 정도는 추측할 수 있는 것일까? 아직도 잘 모르겠다.
저작자 표시 비영리 동일 조건 변경 허락
신고
  1. gcd at 2012.02.22 06:38 신고 [edit/del]

    msvc로 mangling 당한 이름에 처음 접했을 때 꽤나 당황했었지요.
    저 룰도 컴파일러마다 다른 모양이라 (거기에다 msvc 9.0부터 규칙-이라기보단 인코딩-이 바뀌었다고 하고...) 링크 시간에 호환이 되긴 하나 하는 의문도 들더라구요.
    여튼, 저 암호(?)를 풀 수 있다는 사실을 알았던건 Dependency walker를 써보면서였군요. 포스트와 다르게 DLL 파일의 export/import된 함수들을 볼 수 있지만, C++ 로 만든(그것도 msvc로 컴파일 한) 몇 비공개 라이브러리에 들어있는 멤버 함수들을 다 볼 수 있어서 신났던 기억이 나네요.

    Reply
    • Favicon of http://www.benjaminlog.com BlogIcon 김재호 at 2012.02.22 10:22 신고 [edit/del]

      저는 9부터 바뀐줄 몰랐습니다. 그런데 그런 걸 바꾸면 부작용이 엄청날텐데. 호환성은 어떻게 맞춰줬을지 궁금하군요.

    • gcd at 2012.02.22 21:19 신고 [edit/del]

      룰이 바뀌었다기보단, 인코딩 처리하는 방법이 ANSI에서 UTF-8로 바뀌었다고 하더라구요.
      대부분 영문 명칭을 쓰기 때문에 임팩트가 거의 없을 것입니다.
      아니, 임팩트가 없었으면 좋겠는데, 8.0 이전에 만든 obj와 이후에 만든 obj 사이에서 가끔 링크 오류가 나긴 하나보더라구요. msvc 8.0용으로 땜빵(?) 패치가 나왔었고(이것도 주로 일본어권의 요구사항으로... 그러고보니 바뀐건 9가 아니라 8부터였네요.) 9.0 이후로는 지원 계획이 없다고 하네요.

      적고보니 mangling이랑 별로 상관 없네요. 헷갈리게 한 것 같아서 죄송합니다.

submit


윈도 인터널 6판이 곧 나오는 것 같다. 이번에는 2권으로 분리되어 나오는 것 같은데 내용도 많이 보강이 될 것 같아서 기대가 된다. 이번에 번역은 누가 하려나. 빨리 번역되었으면 좋겠다.
저작자 표시 비영리 동일 조건 변경 허락
신고

submit
조엘 온 소프트웨어 - 10점
조엘 스폴스키 지음, 박재호.이해영 옮김/에이콘출판
2006년도에 이 책을 읽은 적이 있다. 사실 나는 그 때 조엘을 마이크로소프트에서 잠깐 일했던 평범한 엔지니어 정도로 알고 있어서 그랬는지 몰라도 이 책에서 별로 감동을 받지 못했다. 지금은 조엘이 얼마나 똑똑하고 대단한 사람인지 잘 아는데다가 얼마전에 레이몬드 첸의 블로그에서 링크된 조엘의 추상화의 함정에 대한 글을 따라가서 읽다가 예전에 이 책을 너무 대충 읽은 것이 아닌가하는 생각이 들어 다시 한번 읽기 시작했다.

책을 몇 페이지 읽은 순간부터 정말 그랬다는 것을 알았다. 당시에 나는 조엘의 프로그래밍과 소프트웨어 관리에 관한 철학, 농담 따먹기들을 이해하기에는 너무 햇병아리였다. 이번에 다시 읽을 때는 또 놓치고 지나가는 내용이 있을까봐 아주 주의 깊게 읽었다. 언젠가 조엘의 책 4권 중에 조엘이 엄선한 블로그 베스트 29선이 가장 재밌었다고 말한 적이 있는데 이제 그 말을 바꿔야겠다. 1등은 두말할 것도 없이 오리지날 조엘 온 소프트웨어라고 말하고 싶다.

이 책에 나오는 내용들은 10년쯤 전에 쓰여졌는데 모든 좋은 책들이 그렇지만 여전히 그 내용이 유효하다. 오히려 지금 다시 읽어보니 더욱 재미있는 것 같다. 어떤 기술들은 망한다 어떤 회사들은 망한다 했는데 지금 와서 보니 대부분 맞아 떨어졌으니 어찌 재미가 없겠는가.

조엘의 공격적인 성향에 대해서는 뭐라고 해야할지 모르겠다. 실명을 거론하면서 바보라고 말하는 것을 서슴치 않는데 상대방들은 얼마나 기분이 나쁠까. 그 바보들 중에는 진짜 stupid 들도 있겠지만 켄트 백이나 에릭 레이몬드 같은 유명하고 실력있는 해커들도 있다. 1,2년 전 쯤 언젠가는 조엘이 스택오버플로 팟캐스트에서 TDD 욕을 신나게 하다가 정말 켄트 백하고 심하게 싸움이 붙었던 적도 있다. 이런 성향을 좋다고 할 수는 없지만 이런 것들이 그의 책을 읽는 독자들을 더욱 즐겁게 해줬다는 것은 분명하다. 싸움 구경만큼 재밌는게 없다는 말이 있지 않는가.
저작자 표시 비영리 동일 조건 변경 허락
신고
  1. 후니 at 2012.02.12 22:29 신고 [edit/del]

    조엘이 그렇게 뛰어난 사람이었나요? ㅎ 재호님 글을 읽고나니 다시 한번 보고 싶어지네요 ^_^

    Reply
  2. Favicon of http://blog.naver.com/empty_wagon BlogIcon 주의사신 at 2012.05.14 09:07 신고 [edit/del]

    그 책에 "차세대 Windows API는 HTML입니다"라는 내용이 있는데, 처음 읽을 때 설마 그럴라고 하면서 읽었지만, 지금 Windows 8에 HTML5로 앱 개발이 가능한 세상이 되어서 참 놀랐습니다...

    사무엘님 블로그 타고 왔습니다. 반갑습니다.

    Reply

submit

뭔가 의심이 갈 때면 프로세스 모니터를 실행시켜 확인해 봐라.
데이비드 솔로몬은 그의 제자였던 마크 러시노비치에게 종종 이 말을 했다고 하는데, 마크 러시노비치는 이를 마치 하나님의 말씀처럼 신봉했다고 한다. 심지어는 자기 딸이 학교 숙제를 가져와서 아빠 이거 모르겠어요 할 때도, "프로세스 모니터로 확인해보거라." 라고. -_-; 아마 딸도 컴퓨터공학을 배우나 보다. 마크 러시노비치를 닯았다면 예쁘겠지.

나도 이 말을 잘 지키고 있다. 프로세스 모니터는 사람들이 잘 모르는 디버깅 도구 중 가장 유용한 하나이다.
저작자 표시 비영리 동일 조건 변경 허락
신고

submit
C++에서는 멤버 함수에 const 키워드를 사용할 수 있다. 이는 메서드 내에서 멤버 변수들의 값을 바꾸지 않겠다는 약속이다.
void Clazz::foo() const
{
}
위의 const 변경자는 해당 인스턴스의 this 포인터에 영향을 끼치게 된다. 즉 멤버 함수 내에서 this 포인터의 타입은 const Clazz* 가 된다. 그러므로 해당 멤버 함수 내에서 멤버 변수의 값을 바꾸려고 하면 컴파일 에러가 발생한다.

static void Clazz::boo() const
{
}
하지만 static 멤버 함수에 대해 const를 붙일 경우에는 컴파일 에러가 발생한다. 그 이유는 static 멤버 함수는 this 포인터를 가지고 있지 않기 때문이다. this가 없는데 어떻게 this를 const로 만들겠는가.
그래서 질문에 대한 답은 '아무런 의미가 없는 짓이기 때문' 이라고 할 수 있겠다.
저작자 표시 비영리 동일 조건 변경 허락
신고

submit
티몬이 간다 - 9점
유민주.티켓몬스터 지음/이콘
나는 그루폰이라는 회사 때문에 소셜 커머스라는 아이디어에 대해서 처음 알게 되었다. 하지만 크게 관심은 갖지 않았다. 그루폰이 한국에 처음 서비스를 시작했던 날에 한번 들어가보고는 이메일 주소를 입력하라길래 바로 꺼버렸던 기억이 난다. 티켓 몬스터는 작년과 재작년 귀가 닳도록 이름을 들었지만 거의 일년 가까이 그냥 애들 딱지 스티커나 만들어주는 뭔가인줄로만 알았다.

그 후 티켓 몬스터가 무슨 회사인지 알게되고 얼마전에 블로그 어디선가 이 책을 소개하는 글을 보고 한번 읽어보고 싶다는 생각이 들었었는데 어제와 오늘 종일 방구석에 누워서 재밌게 읽었다.

85~86년생의 어린 친구들이 만든 회사. 게다가 1년 남짓한 새 직원수가 700명으로 늘어난 놀라운 회사. 그들이 어떻게 창업을 하고 회사를 운영해왔는지에 대해서 재밌게 쓰여있다. 좋은 학교에 다녔고 에너지도 넘치는 친구들이지만 너무 순진하기도 해서 와 이렇게 해도 회사가 클 수 있기는 하구나 하는 생각마저 들었다.

창업자 중 한 친구가 옛날 텍스트큐브의 노정석 대표가(지금은 아블라 컴퍼니) 혼자 카페에 있다는 트윗을 날린 것을 보고 땀을 뻘뻘 흘리고 달려가서 창업 아이템에 대해서 조언을 구한 열정은 정말 멋지다고 생각했다. 후배들과 몇 번 대화해보고는 그 가능성을 일찌감치 알아보고 선뜻 5천만원을 투자해준 노정석씨도 참 대단하다.

조그만 사무실에서 책상도 없이 아무대나 기대어 앉아 밤새가며 함께 서비스를 만들어가는 젊음들이 왜 이렇게 부러웠는지 모르겠다. 작은 회사에 다닐 때는 항상 큰 회사가 부러웠는데 막상 큰 회사로 오니 다시 작은 회사가 부러워진다. 사람 마음은 어째 이렇게 청개구리 같은가.

작년 이맘 때쯤, 다니던 회사를 그만두기 전에 한 임원과 대화를 하다가 자기는 회사에서 일하는 것이 하루하루 너무 즐겁다는 이야기를 들은 적이 있다. 그 때 그는 회사라는 것은 남자가 가지고 놀 수 있는, 세상에서 가장 정교한 장난감이라는 말을 했었는데 나는 그 말이 너무 마음에 들었다.
나도 언젠가는 창업을 한 번 해보고 싶다. 레고 블록을 맞추듯이 회사를 조립해 가면서 회사가 커나가는 것을 바라 보는 기쁨을 맛보고 싶다. 그 때를 위해서 지금은 열심히 실력을 길러놔야 한다.
저작자 표시 비영리 동일 조건 변경 허락
신고

submit

아니 이게 도대체 무슨 일이?

지금까지 화면 캡쳐시에는 오직 오픈 캡쳐라는 프로그램만을 사용하고 다른 프로그램에 눈길 한 번 준 적이 없었는데 오늘 실행을 시키니 자동 업데이트가 되면서 위와 같은 약관 동의 창이 나왔다. 아무래도 회사에서는 돈 내고 쓰라는 말 같다. 하이고, 그럼 이제 못 쓰잖아.


원래 오픈 캡쳐는 개발자 한 명이 혼자서 만들어 개발자의 개인 홈페이지에서 운영을 했었다. 나중에는 같이 개발하는 사람들 몇 명이 생겼고 그 때부터 자동 업데이트나 광고, 트위터로 보내기 같은 원하지 않는 기능들이 생겨나기도 했다.
이번에 오픈 캡쳐의 새로운 주인이 된 회사와 개발자간에 어떤 거래가 있었던 건지는 모르겠지만 나는 사용자 입장으로서 좋아하던 프로그램을 하나 잃어버리게 되었다. 오픈 캡쳐의 윈도우 자동 스크롤 캡쳐는 정말 좋아했던 기능인데 이제 뭘 써야하나.

오픈 캡쳐는 언젠가부터 소스 코드를 공개 했었는데 이제부터 그 라이센스는 어떻게 되는건지 모르겠다. 오픈 소스 버전을 사용하면 회사에서 계속 사용해도 되는 걸까.
저작자 표시 비영리 동일 조건 변경 허락
신고
  1. Favicon of http://winutil.tistory.com/ BlogIcon LuckySh at 2012.02.06 14:27 신고 [edit/del]

    오픈캡쳐가 기업에게 넘어간 다음부터 쓰레기가 되었네요.
    개인은 핸드폰 인증 하고 기업은 돈을 내시오?
    나참, 어이없어서... 개인이 제작할때는 모두에게 무료였는데...
    이만한 쓰레기가 세상에 하나라도 더 있을까 싶군요.
    옛날에는 좋은 프로그램이었는데 기업에 넘어간 다음부터 쓰레기네요.

    Reply
  2. 박정열 at 2012.03.23 10:11 신고 [edit/del]

    전 Picpick 이라는 프로그램 사용하는데, ^^: 함 고려해보시죠 :

    Reply

submit
글쓰기 정석 - 10점
배상복 지음/경향미디어
2010년에 이 책을 사두고는 책장에만 썩혀두었는데 얼마전에 김난도 교수의 '아프니까 청춘이다'를 읽고 그 글 솜씨에 큰 자극을 받아 다시금 꺼내게 되었다.
아프니까 청춘이다를 포함해서 많은 책들이 이 책을 통해 글쓰기 훈련을 하는 것을 추천 하였는데 실제로 도움이 많이 되었다.

이 책은 제목 그대로 글쓰기의 정석만을 가르친다. 수식어를 이용해 문장을 화려해 보이도록 만든다거나 강조해서 쓰는 법은 이 책에서는 좋지 못한 행동으로 취급받는다.
글에 리듬감을 불어넣는 방법이라든지 간결한 문장을 쓰는 요령 등 평소에 궁금해 해왔던 내용들을 배울 수 있었다.
8장 까지의 내용은 모든 단원마다 유익했지만 블로그 글이나 이메일을 쓰는 요령을 다루는 9장 이후의 내용은 인상적이지 못했다.
저작자 표시 비영리 동일 조건 변경 허락
신고

submit