2008년 4월 29일 화요일

개발자의 길을 걷는 대학원생의 자세

IMF가 오기전 96,97년도만 해도 대한민국은 벤처기업의 천국이었지요. 제가 갓 고등학교를 입학한 때로, 친구들끼리 나중에 벤처기업 하나 만들면 성공한다 라는 농담까지 나오던 시절이었습니다. 그런 트랜드를 이끌어 오던 많은 사람들 중 하나가 한글과 컴퓨터의 이찬진씨와, 안철수바이러스 연구소의 안철수씨죠.

저 같이 컴퓨터에 관심이 많았던 어린 아이들은 그런 사람들을 보면서 벤처기업 사장을 꿈꾸고 있었습니다.

그런 도중 IMF가 오면서 벤처기업 거품이 사라지고, 실속이 없던 벤처기업들은 추풍낙옆처럼 떨어지고 말았습니다. 한 때는 벤처기업 사장을 꿈꾸던 어린 학생들이 더 이상 벤처(Venture)랑 관련없는 안정적인 직장에 더 몰두하는 세대가 오고 말았습니다.

저 역시, 컴퓨터 관련 일을 해야겠다는 생각을 어디엔가 접어두고 사관학교를 갈려고 했었습니다. 지금은 물론 IT쪽 관련으로 일을 하고 있습니다. 그 때 사관학교에 낙방한것이 얼마나 다행인지 모릅니다.

저는 2000년도에 대학에 입학하였는데, 그 때까지만 해도 사회의 IMF여파가 대학까지 오지 않았을 때죠. 선배들은 늘 1학년때는 놀아도 돼! 라고 말하였고, 선배들 말대로 세월아 네월아 지내면서 군대가는게 1학년 남자들의 생활이었습니다.

지금은 상황이 많이 바뀌었는 것이, 1학년들이 밤 늦게 노는건 찾아볼 수 없고, 수업시간 중간 중간에는 당구장 대신 도서관에 가더군요. 세상이 어렵기 때문일거라고 생각합니다. 우리과 1학년 학생들에게 진로를 물어보면 20%정도는 공무원, 80%정도는 "삼성"이라고 말을 하는데, 선배의 입장으로써 가슴이 아픕니다. 어찌하여 저런 어린 애들에게 어려운 세상을 겪게 만드는지요.

우리과 학생들의 대부분의 진로를 살펴보면 50% 이상이 개발자로 일하는것이더군요. 물론 다른일을 할 수 있겠지만, 제가 봤을때는 개발자로 사는것이 다른일을 하는 것보다 전공을 살릴 수 있고 그에 따라 임금도 많이 받는것으로 보입니다. 간혹 선배들이나 친구들 중 개발자는 개고생하고 돈은 적게 받는다는 얘기를 하지만, 이런 사람들과는 개발자에 대해서 논하고 싶지 않군요.

2,3학년에 진급하게 되면 다른과도 마찬가지지만 컴퓨터공학과에서는 눈으로 볼 수 있는 무엇인가를 만들어내는 과제를 많이 하게 됩니다. 여기서 미래가 있는 사람과 없는 사람이 갈려지더군요. 제가 봤을 때는 이런 과제를 100% 소화시키는 학생은 전체의 20%도 되지 않는 것 같습니다. 100명이라면 20명정도죠. 하지만 여기서도 참 다행인것이 이 20명이 여러집단에 분산되어 분포되어있는 것이고요, 그런 학생들이 포함되어 있는 집단은 과제를 패스 할 수 있다는 것이지요. 무슨 말인지 이해가십니까?

대부분의 큰 과제는 3~4명 정도가 팀을 이뤄 진행을 하는데, 그 중에서 과제를 이해하고 과제를 수행할 능력이 되는 학생은 전혀 없거나 1명입니다. 오히려 교수들도 팀을 구성할 때 이런 부분을 고려합니다. 교수들의 의도야 1명이 나머지를 독려하며 가르치면서 과제를 진행하는 것이겠지만, 학생들의 입장에서는 자기팀에 "과제 능력자"가 없을까봐 조마조마한 눈치도 보입니다. 그런식으로 지내다가 4학년이 되고 4학년때도 그렇게 행동하면서 졸업해버리는거죠.

이런부분은 학부과정때만 있는것이 아니라는게 저에겐 더 큰 지탄으로 다가옵니다. 요즘같이 이공계가 멸시받는 시대에서는 그저 "대학 4년 공부하면서 학과 성적 잘 받아서 대기업에 취직하면 성공한 케이스"라는것이 널리 인식되고 있기 때문에, 대학원 과정에 진학하는 학생들이 5~6년전에 비해서는 엄청나게 적습니다.

대학원에 진학하는 학생들을 보면 그래도 자기 신념이 있고, 학부생때 날던 애들이 많습니다. 저 역시 대학원에 진학하기 위해서 "SSM(Samsung Software Membership)"을 박차고 나올 정도로 저에 대한 신념이 굳은 사람이었습니다. 대학원에 와서도 항상 신념을 지키려고 노력했고요...

근데 세상 어디를 가나 어느 집단에 포함되나 Pure는 없다는 생각이 들더군요. 그런 대학원생들 와중에도 "취업이 안되서", "두 발자국 나가기 위해서 한발자국 쉬자"라는 논리를 가진 학생들도 대학원에 온다는거죠. 참 우울해지기 시작합니다.

대학원에서는 학부때 하던 과제보다 스케일이 큰 과제를 진행하는데, 여기 역시도 과제 제출하기 몇일전부터 오만 연구실을 뛰어다니면서 과제의 답을 찾는 학생들이 많이 있었습니다. 서로 얼굴 붉히는 일이 싫어서 그냥 그런갑다 하고 넘어갔는데, 기분 나쁜건 어쩔수가 없었습니다.

결국 대학원 석사과정 2년을 보내면서 C 언어 하나 제대로 익히지 못하고, 어디서 배껴 쓴 논문 하나 들고 나가는게 고작인 학생들이 존재하는 겁니다. 제가 이 글을 쓰는 이유가 빠졌군요. 몇일전 참 어이없는 상황을 겪고 어찌할바를 모르겠습니다.

저는 학부/석사과정을 거치면서 대한민국 개발자의 미래를 지켜보고 있습니다.

대학원에서 실적이라면 바로 논문인데요, 서른살이 가까워지는 이마당에 자존심 없이 행동하는 몇명 이들이 보였습니다. 다른 사람 논문을 자기 이름으로 발표하고 그걸로 학교에서 지원을 받습니다.

지금 사회적으로 큰 문제가 되고 있는 어떤 현상의 원인을 보고 있는것 같습니다. 학교에서 그 나라의 미래를 본다는 말이 이렇게 정확하게 매칭되기도 힘들군요 ㅎㅎ.

제가 "난 정말 자존심 상해서 그런짓 못하겠다."라고 얘기하면 "세상이 그래 다른 사람 다 그러는데 나만 안그러면 바보 되잖아" 이런 뻐꾸기를 날립니다. 제가 바보였던 것이었습니다. 과제가 나오면 2~3명을 이끌고 과제를 수행하고, 학위 논문을 쓰기 위해서 몇날 몇일 잠을 못자고, 학교에서 논문에 대한 지원을 받기 위해서 돌머리에서 나오는 영어단어 찾아가며 논문 쓴것이 다 바보같은 짓이었다는 것입니다.

그리고 더욱 큰 문제는 주변 사람들이 오히려 그런걸 당연하다라고 생각하는 것이 절 더 바보스럽게 만들고 있습니다. 어쩌다가 이런 세상에서 살아가야 하는지 모르겠습니다.

더 깊게 생각해본다면 이런 문제는 학교에서만 발생하는 일이 아니고, 사회 전반적인 문제라는 점에서 저에게 "바보"라는 단어를 말했던 사람들을 처단하여 더러운 싹을 짤라버리고 싶군요. 하지만 전 문화인이고, 지식인이기 때문에 상상으로만 처단하고 있습니다.

이런 행태를 만들어낸 건 누굴까요... 혹자들은 얘기합니다. 사회가 문제이고, 학교가 문제이고, 기업들이 문제이다.

예, 예 다 옳으신 말씀입니다. 이런말을 하는 사람들에게 몇마디 전해주고 싶군요, "우리가 이런 세상에 사는 건 당신 부모가 당신을 낳았기 때문이다."라고요.

제 생각으론 "니 탓이오"라는 문제가 고쳐지지 않는한, 대한민국 개발자나 아니면 또 어떤 문제라던지 개선되지 않을 겁니다. 가장 중요한건 당사자인 우리의 생각을 바꾸는 것이라고 생각합니다.

어짜피 공대, 컴퓨터공학과를 오는 것 자체는 행정직원이 되기 위해서 오는건 아닐겁니다. 나름대로 목표가 정해져있었겠지요. 만약 목표도 없이 대학을 선택하고 공부하는 것이라면 그런 사람들은 우리 사회의 잉여인간으로 놔두고 싶습니다.

제 생각을 요약하자면, 일단 개발자의 길을 걷기로 마음먹은 우리 학생들은 근성이 부족합니다. 자기가 무엇인가를 해내고 다른 사람을 이끌 수 있으며, 열심히 하고자 하는 학생을 바보로 만들지 않는 마음을 가져야 할겁니다.

그리고 그런 생각이 없는 사람들은 사회를 위해서 제발 조용히 있어줬으면 합니다. 자기가 하는 행동이 떳떳한양 열심히 하는 사람을 비난하게 만들고, 사회를 거꾸로 돌리는 ... 이런 말을 몇백번 해봐야 그런 사람들은 자기가 그러고 있는지도 모를겁니다. 제 등뒤에서요... 또 욕이 나올려고 하는군요.

어째뜬, 가장 중요한건 자신의 마음가짐이라고 생각합니다. 사회가 아무리 엉망이 되더라도 "나 하나라도 열심히 하자"라는 생각... "노력은 배신하지 않는다"라는 생각... 이런 생각만이 이 썩은 사회의 치료제가 될 것 같습니다.

저 역시 이 글을 쓰면서 저의 마음을 새로 추스리려 합니다. 언젠가는 결실이 맺어지겠지요..

노력하는 사람이 바보가 되지 않는 세상을 위해서...

TCPMP 스킨 프로젝트에 관해서...

언젠가 TCPMP 소스 수정에 대한 글을 포스팅 하고, 아무 생각없이 세월을 보내고 있었습니다.

역시 인터넷이 좋은것이라면, 내가 쓴 별거 아닌 정보도 다른사람에게는 도움이 될 수 있다는 것입니다.
많은 분들이 TCPMP에 스킨을 넣은 그림을 보셨고, 몇몇 분들이 프로젝트에 참여하고 싶다고 의사를 밝히셨습니다.

저도 워낙 바쁘게 하루하루를 사는지라 블로그에 글 한자 올릴시간이 없고, 간혹 블로그에 들어와서
방문자 수 확인하는게 전부라 막상 댓글을 달아놓으신 분들을 보면 괜히 미안한 생각도 듭니다. 몇분 안되지만요...

저는 이미 TCPMP에 스킨을 넣어서 과제로 제출해놓은 상태입니다...

중요한건 스킨을 동적으로 바꿀수 있는 기능을 넣는 것인데요... 이왕 시작하려고 마음 먹은거 제대로 해볼려고
몇일전부터 준비중입니다.

근데 엄청난 문제에 봉착하게 되었습니다. 많은 분들이 알고 계시다시피, TCPMP는 CorePlayer로 이름이 바뀌어서 사용화 되고 있고요, 오픈 소스 프로젝트는 BetaPlayer로 진행된다던데 BetaPlayer 프로젝트 홈페이지에는
언제인지 부터 모르게 계속 Comming Soon 만 나와있습니다. 아무래도 시작할 마음이 별로 없어 보입니다.

일단 프로젝트를 진행할려면, 플레이어를 전체 다 만들지 않는 이상 TCPMP 소스를 수정해서 사용해야 할 것 같은데, 문제는 라이센스죠... 정말 TCPMP의 소스는 하나도 건들지 않고 플러그인만 만들어서 배포하는 거라면, 라이센스에 큰 문제가 없겠지만, 인터페이스를 바꾸는 것이라 TCPMP 소스를 만져야 합니다.

그래서 몇일전에 Picard 님에게 라이센스에 관한 메일을 보냈더니... (license@corecodec.org) 존재하지 않는 e-mail 주소라고 답변이 왔네요... 일단 프로젝트를 진행 할려면 라이센스 문제 해결이 최 우선이라 보고요,
라이센스만 해결된다면 그 이후의 상황은 간단하게 풀릴 것 같습니다.

혹시라도 TCPMP 제작자인 Picard님의 e-mail 주소를 아시는 분이나, contact이 가는하신분은 댓글 부탁드립니다. 그리고 조만간에 프로젝트를 진행 할 수 있도록 준비하겠습니다.

2008년 4월 6일 일요일

툴팁이 작업표시줄 뒤로 숨어버릴 때...(tooltip that hidden behind taskbar)

요즘 공부하랴 일하랴 정말 정신이 없습니다.

몇일전 연구소장으로 부임한 연구소에서 개인용 노트북을 하나 지급받았는데요,
후지쯔라이프북 E8140 이 바로 그놈이지요...
적당한 사이즈에 좋은 성능까지... 그리고 후지쯔의 컨셉인 다양한 포트지원 등등...
개발자가 들고다니기에는 더나위 없이 좋은 노트북이라고 할 수 있죠...
그런데 이놈도 치명적인 문제점이 있었으니... 기본 OS 가 Vista 더군요.. 큭..
뭐 Vista에서도 개발은 충분하겠지만, 대략 XP에서 안정적으로 돌아가는것이 더 많고...
윈도우즈 메모리쪽을 연구하는 우리팀에서는 Vista 위에서 작업하기에는 문제가 좀 있더군요...
그래서 XP를 깔려고 시도를 했습니다. 근데 산넘어 산이라고 했나요...
오리지날 XP 설치 시디는... 최신 SATA 드라이버가 없어서... 아예 설치 단계에서 하드를 못잡더군요...
그래서 Fujitsu 홈페이지에 가봤더니... 플로피 디스크를 이용해서 드라이버를 먼저 설치 하랍니다.
근데, 노트북에는 플로피 디스크 드라이버가 없었습니다. 그래서 Black Edition 이라는 Repacking 된
XP를 깔아봤더니 잘 깔리는 겁니다.

사실 전 Repacking 된 XP를 별로 안좋아합니다. 만든 사람의 말로는 성능을 최대화 했다는 둥...
필요한 프로그램을 미리 설치했다는 둥.. 말이 많지만 이부분에 대해서는 상당한 논쟁의 여지가 보이고요
그 중에서도 레지스트리를 마음대로 건들여 놨다는건 정말 이해할 수 없는 부분입니다.

어떤 레지스트리를 건들이던간에 side effect를 고려하지 않는다는것이 큰 문제점이지요...

그래서 불안 불안 했습니다.

기본적인 프로그램을 설치하고 개발도구.. 워드 프로세서 등 거의 세팅이 끝나갈려는 마당에 문제가 또 터진거지요
사실 제 성격이 지랄 맞은지라... 뭐 하나라도 제대로 동작하지 않는다면 계속 신경이 쓰이고...
어떻게 하든 문제를 해결할려고 삽질합니다. 문제점이 뭔고 하니...

태스크바의 툴팁이 글쎄.. 뒤로 숨어서 안보이는 겁니다. 툴팁 말고도 벌룬팁까지 안보이니깐....
그다지 자세히 볼 필요는 없는데 눈에 거슬렸다는 거죠...

그래서 역시... repacking은 안돼라고 생각하면서도.. 이방법 외에는 XP를 깔방법이 없다고 생각했습니다.
괜히 열이 받더군요...  그렇다고 어떤 삽질을 해서라도 깔끔한 XP를 설치하기에는 정신적 문화적 충격이
너무 컸습니다. 그동안 삽질을 생각하니 눈에 물이 차는군요..

이 글을 보시는 많은 프로그래머님들은 다들 한 영어 하실거라고 믿고 있습니다. 물론 이런 엄청난(?) 문제에
직면했을때는 네이버 지식님한테 물어보는 것이 그 첫번째 방법입니다.

제가 네이버에 검색어로 넣었던 것이 "작업표시줄 툴팁" 이었죠... 결과는 아주 만족했습니다.
참 어처구니 없는 결과들이 쏟아져 나오더군요.. 네이버는 왜그런지 몰라도 신문기사에서 검색을 먼저하고
검색하는 사람들에게 정신적 데미지를 입히는것이 전문이더군요... 그래서 전문적인 지식을 검색할 때는
잘 안씁니다.

그래서 찾는것이 구글인데... 이놈의 구글의 문제점이라고 하면 한글 검색을 할경우에... 네이버보다 못하다는거죠
결론적으로 영어 검색을 해야하는데... 저같이 영어 무능력자에겐 참 이럴수도 없고 저럴수도 없고...
대충 아는 영어 때려 넣었다가 이상한 결과를 보게되면 구글의 신뢰도가 떨어질수도 있고요...

그래서 넣었던 검색어는 "tooltip behind taskbar" 였습니다. 참 간결하고도 멋진 검색어가 아닐 수 없네요..
쉬운단어 이면서 저의 문제점을 이렇게 잘 표현한것도 없을듯 하네요...

이제 본론으로 들어가야겠네요... 사설이 너무 길었지요...

먼저 마이크로소프트에 포스팅 된 글이 있었습니다. 참 개발자를 난감하게 하는 글이었지요..
원인 : 시작메뉴에서 마우스 오른쪽 버튼을 누름
해결 : 로그오프 하던지 재시작하던지

하하하.. 웃음밖에 안나옵니다.

그래서 다른글을 찾아봤습니다.
다양한 의견의 글들이 있던데 그중에 가장 마음에 드는 답변이 있었습니다.
tooltip은 항상 topmost로 동작해야 하는데 어찌되서 그렇게 되지 않았다. 그래서 tooltip을 topmost로
만들어줘야 한다라고 얘기하고 간단한 C# 소스가 나와있었습니다.
저같은 C# 무능력자에겐 소용없어서 찾아보니 컴파일한 소스가 있더군요

이 글에 걸려있는 파일을 다운로드 받으시면 tooltip fix 라는 파일이 있습니다. 받으시면 되겠고요..
이 파일을 실행하니 간단하게 되네요

tooltipsfix.rar

tooltipsfix.rar 다운로드


그래서 아주 만족하고 있습니다.

본론을 쓰기 위해서 사설이 길어졌는데요, 읽어주셔서 감사하고...

다음에도 더 좋은 정보를 포스팅 하겠습니다.