2013년 7월 27일 토요일

C, C++ 프로그래밍.

산업공학과에서, 그 중에서도 최적화 관련 분야는 컴퓨터만 있으면 실험 준비 완료다. 실험이라기 보다는 시뮤레이션 이라고 하는게 더 적합하겠다. 알고리즘을 새로 개발하거나 기존에 있는 알고리즘을 새로운 문제에 적용해서 얼마나 잘 풀리는지 확인하는 것이 대부분의 실험의 목적이다. 이 때 프로그램을 할 줄 아는것이 큰 도움이 된다. 

나는 대학원에 들어 왔을 때 할 줄 아는 컴퓨터 언어가 하나도 없었다. 석사 졸업 연구를 시작하면서 메틀랩을 혼자 공부 했는데 생각보다 어렵진 않았다. C언어를 잘 다루는 한 친구는 메틀랩을 계산기라고 불렀다. 그만큼 다른 언어보다 쉽다는 거겠지. 하지만 단점은 수행 속도가 많이 느리다는 것이다. 물론 문제를 빨리 푸는것이 벼로 중요하지 않거나, 간단한 기능을 수행하는 프로그램이라면 메틀랩도 괜찮다. 그러나 문제를 빨리 푸는것이 중요하고 또 문제가 더 복잡해 지면 메틀렙으로 해결이 안된다. 그래서 다시 C언어를 공부해야 했다. 

C언어는 한국에 있을 때도 조금 배운적이 있었는데 제대로 이해하지 못했다. 언어를 잘 하는 친구들 말을 들어보면 혼자 오랫동안 공부해도 실력이 잘 늘지 않는다고 한다. 회사에 최직해서 한달 배우고 실습하는것이 혼자 일년 공부하는 것보다 훨씬 낫다고 하는 사람도 있었다. 이런 저런 책을 사서 혼자 공부하긴 했지만 책을 끝까지 보는것이 어려웠고, 이해가 안가는 부분들이 해결이 안되니 답답하기도 했다. 아주 많은 시행착오 끝에 지금에 이르렀는데 지금도 내가 아주 잘 한다는 생각은 들지 않는다. 다만 연구 하는데 부족하지 않을 정도라고나 할까. 

박사 과정이 끝나가는 마당에 돌아보면 시행착오를 줄일 수 있는 방법이 많이 있었을것 같은 생각이 든다. 혹시 나 처럼 혼자 C (or C++)을 공부해야 하는 사람이 있다면 강추하고 싶은 책이 있다. 

윤성우 열혈 C 프로그래밍
윤성우 열혈 C++ 프로그래밍

책을 사면 쿠폰이 들어 있는데 저자의 동영상 강의를 1년간 들을 수 있다. 저자의 강의는 한마디로 명품이다. 

강의가 꾀 많기 때문에 정상 속도로 들으면 시간이 너무 오래 걸릴것 같아서 나는 곰플레이어를 이용해서 1.5~1.8배속으로 들었다. 그래도 강의를 이해하는데는 별 문제가 없었다. 

C나 C++ 때문에 고생하는 사람들이 있다면 정말 강추다. 참고로 나는 책 저자와는 아무 상관이 없음을 밝혀둔다. 난 다만 저자의 펜일뿐. 

2013년 7월 26일 금요일

미국 사람들에게 포커와 맥주란?

작년에 인턴 하는동안 미국인 룸메와 두달을 살면서 신기하다고 생각했던게 여러가지가 있는데 그 중에 두가지만 꼽으라면 포커와 맥주다.

일단 룸메가 어떤 녀석이나면. 나이는 나보다 거의 10살 가까이 어린데. 장을 보러 가면 제일 저렴한 상표만 골라서 사는 녀석이다. 예를 들면, 이 놈이 탄산음료를 좋아 하는데 코카콜라나 펩시콜라 닥터 펩퍼 등 진퉁이 아닌 짝퉁 탄산음료를 산다. 요즘은 check 이라는 음료를 자주 마시는것 같다. 아무튼, 음료 뿐만 아니라 다른 물건들도 최대한 저렴한 것들로만 산다. 한번은 내가 유기농 우유를 샀더니, 다른 우유랑 맛 똑같은데 뭐하러 더 삐싸게 주고 사느냐고 이해할 수 없다는 표정으로 나를 쳐다봤다. 이런 녀석이 맥주에 만큼은 절대 돈을 안아낀다. 맥주는 항상 냉장고에 채워져 있어야 하고, 마시고 싶은 맥주가 있으면 주저없이 산다. 난 원래 맥주를 그리 즐기는 편이 아니니, 그의 행동이 조금은 이해가 안됐다.

인턴쉽을 하는 동안 주말에 가끔 다른 인턴들과 포커를 쳤다. 오래전에 한국에서 대학생 때 친구들과 몇 번 포커를 친적이 있는데 그 땐 7포커를 쳤는데 여기서는 Texas Holdem 이라는 게임을 한다. 재미로 하는 게임이기에 많이 잃어봐야 5불이다. 부담없이 즐길 수 있다. 물론 그래도 잃으면 기분은 나쁘다.

맥주를 마시면서 포커를 치는것이 남자들 끼리 노는데 꾀 괜찮다는 생각이 들었다. 한국에 있었으면 1차, 2차, 3차, 노래방, 4차... 하면서 계속 술만 마셨을 것 같은데 말이다.

Air force research lab - operations research summer intern

인턴을 온지도 벌써 두달이 넘게 지났다. 이번엔 50명이나 인턴을 와서 그런지 여기 보스랑 한번도 미팅을 안했다. 작년에 여기서 룸메랑 같이 했던 연구를 가지고 논문을 하나 제출해서 인지 올해는 보스가 거의 간섭을 안했다. 그래도 중간 중간 경과 보고를 알려주긴 했지만.

올해 초 부터 지금 룸메랑 같이 해 오던 연구를 인턴 와서 계속 했는데 그것도 최근에 끝났고 다음주엔 컨퍼런스가 있다. 인턴 기간 동안 해왔던 연구를 다른 인턴들, 그리고 다른 여러 학교에서 오는 교수들 앞에서 발표하는 것이다. 인턴이 많기 때문에 한 사람당 많이야 20분 정도의 시간이 주어질 것 같다.

확실히 연구직이 다른 회사보다 업무 강도가 약한것 같다. 물론 미국에서 회사 생활을 해본것은 아니지만, 여기서 정직원으로 채용되서 일하는 사람들 보면 꾀 여유로워 보인다. 휴양지에 위치해 있는것도 이런 분위기에 한 몫 하는것 같다.


INFORMS Colloquium (인폼스 콜로퀴엄)

2013년 10월 초에 있는 인폼스 콜로퀴엄에 가게 될 것 같다. 콜로퀴엄은 내 방식으로 이해하자면 잡 마켓에 나갈 사람, 혹은 졸업하고 잡을 잡은지 얼마 안 된 (보통 2~3년 이내) 사람들을 대상으로 하는 초단기 세미나 정도 될 것 같다. 나도 인폼스 홈페이지 읽어보고 알게된거다.
인폼스 콜로퀴엄은 보통 세가지로 나뉘는것 같다.
teaching, academic, and practitioner.

티칭 콜로퀴엄은 티칭을 주로 하게 될 사람들을 위해
아카데미는 연구를 주로 하게 될 사람들을 위해, 그리고
프렉티셔너는 회사에 가서 일하게 될 사람들을 대상으로 한다.

나는 회사에 취직 할 생각을 하고 있기에 이번에 프렉티셔너 콜로퀴엄에 간다. 아니 가게 될 것 같다. 가고 싶다고 다 갈 수 있는것은 아니기 때문이다.

해마다 절차가 조금 씩 바뀌는것 같기도 한데, 콜로퀴엄에 가려면 일단 자기 과에서 추천을 받아야 한다. 콜로퀴엄 가고 싶은 학생이 과에 여러 가지 자료를 제출하면 그 중에 몇 명을 학과장이 콜로퀴엄 위원회에 보낸다. 그럼 그 위원회에서 전도가 유망한 지원자들을 뽑아서 초청하는 식이다. 보내야 하는 자료는 다음과 같다. statement of purpose, 성적증명서, 지도교수 추천서.

statement of purpose는 내가 왜 콜로퀴엄에 가야 하는지, 앞으로 내가 졸업 한 후에 어디서 어떤 일을 하고 싶은지, 지금까지 해 온 연구는 뭔지, 다른 사람들과 소통은 잘 하는지 등등에 대해서 적는거다.

이번에 우리 학교에서는 총 4명을 위원회에 추천 했는데 다행이 나도 추천됐다. 예전에 갔다온 친구의 말을 들어보니 꾀 유익한 시간이었다고 한다. 이번에 가서 좋은 정보도 많이 얻고, 잡도 잡을 수 있었으면 좋겠다.