Search Results for 'More Joel on Software'

1 POSTS

  1. 2009/01/08 Advice For Computer Science College Students (7)

More Joel on Software를 하루 3~4페이지 정도씩 띄엄띄엄 읽고 있다. 조엘 온 소프트웨어의 진짜 후속편인데, 번역본은 아직 안나왔다. 이 책에, Advice For Computer Science College Students라는 챕터가 있는데, 조엘은 컴공 학생들에게 다음과 같은 항목들을 조언한다.

  1. Learn how to write before graduating.
  2. Learn C before graduating.
  3. Learn microeconomics before graduating.
  4. Don’t blow off non-CS classes just because they’re boring.
  5. Take programming-intensive courses.
  6. Stop worring about all the jobs going to India.
  7. No matter what you do, get a good summer internship.

 

1. Learn how to write before graduating.
조엘이 말하길, “리누스 토발즈가 그의 아이디어를 이메일로 교환하고, 메일링 리스트를 만들면서 리눅스에 대해 전도(evangelize)하지 않았다면, 리눅스가 그렇게 성공할 수 있었겠는가? 그렇게 많은 volunteer들이 생겨날 수 있었겠는가? 익스트림 프로그래밍(XP)은 또 어떤가. 매우 글을 잘 쓰는 그 사람들이 XP에 대해 글을 쓰지 않았다면, XP가 지금처럼 유명해졌을까? 적당한 프로그래머와 Great한 프로그래머의 차이점은, 그들이 얼마나 많은 언어를 알고 있는지도 아니고, 파이썬을 좋아하는지 자바를 좋아하는지도 아니다. 그들의 생각을 얼마나 잘 커뮤니케이션 할 수 있는지가 차이점이다.”라고 한다. 구구절절 맞는 말이다.
또한, 이런 말도 한다. “I won’t hire a programmer unless they can write, and write well, in English.” 글을 잘 쓰는 사람을 뽑겠단다. 영어로. ㅠㅠ 딱히, 미국에서 회사를 운영하니깐 영어로 글을 잘 쓰는 사람을 뽑겠다는 의미는 아닌 것 같다. 프로그래머라면 영어로 글을 잘 써야한다고 말하는 뉘앙스다. 동감하는 바이나, 난 아직 많~이 그렇지 못하다는 것이 안타깝다. (내생이란게 있으면, 난 다음엔 1바이트 언어권에서 태어나고 싶다. -_- 망할 영어;;)

2. Learn C before graduating.
조엘은 C언어에 대해 이야기 한다. (C++이 아니라고 강조한다.) C언어의 사용은 점점 줄어들고 있음에도 불구하고, 여전히 the lingua franca라고 한다(franca가 뭐지?). C언어는 다른 언어와 커뮤니케이션할 수 있는 수단이라고 한다. 대부분의 언어가 C언어로 만들어지니 당연한 말이다. 파이썬이나 자바, 심지어 얼랭과 같은 언어도 결국, C언어 코드와 커뮤니케이션할 수 있는 인터페이스를 제공한다. 이건 내 의견인데, 어떤 라이브러리를 만든다고 해도, 이 모든 언어들의 인터페이스를 만드는 것 보다는, C언어를 위한 인터페이스만 만들면, 다른 대부분의 언어들에서도 사용할 수 있다. 정 안되면, SWIG같은 것도 있고 말이지.
두번째로 중요한 점은, C언어가 머신 레벨에 가깝기 때문이라고 한다. 밑에서 무슨 일이 일어나는지 알고 있어야 한다고 말한다. (이는, 조엘 온 소프트웨어에서도 추상화의 문제점에 대해 설명할 때 조엘이 했던 말이다.)

3. Learn microeconomics before graduating.
졸업하기 전에, 미시 경제학을 배우란다. 조엘 온 소프트웨어에서는 미시 경제학과 거시 경제학을 배우라고 했던 것 같은데, 거시 경제학은 옵션이라도, 미시 경제학은 꼭 배우란다. CS 전공인데 왜 미시경제학을 배워야 하는가? 비즈니스의 기초를 이해한 프로그래머가 더 가치가 높기 때문이란다. 이에 대한 부분은 조엘 온 소프트웨어에서도 나온 부분이기 때문에 내용이 한 페이지밖에 없다.

4. Don’t blow off non-CS classes just because they’re boring.
CS과목이 아닌 지겨운 과목이더라도, 무시하지 말라고 한다. 무시하는 길은 GPA를 낮추는 최선의 방법이라고... -_-;; GPA가 왜 중요하나면, SAT의 경우는 단지 몇시간만 시험을 보는 것이지만, GPA는 4년간의 hundreds of papers와 시험, 과목 참여 등이 종합 반영된 점수이기 때문. 즉, 그 사람의 성실도가 반영된다는 의미인 것 같다. 간혹, 재미없는 것은 안하면서 재밌는 것만 하겠다는 사람들이 있는데, 니가 과연 일하는 중에 재밌는 업무만 주어질까?라고 묻는다. 이런 사람들은 재미없는 일을 시키면, 열심히 하지 않는다고. 그래서, 이런 사람들을 뽑으면 안된다고. 그래서 자신은, 컴퓨터공학 과목만 점수가 높은 사람은 뽑지 않는다고 한다. 충분히 공감이 가지만, 내 평점평균을 생각하면 참으로 슬픈 이야기다. 아 씨.. 왜 이렇게 슬프지. ㅠㅠ

5. Take programming-intensive courses.
프로그래밍이 집중적인 코스를 수강하라고 한다. 자기가 예일대에서 들었던 과목에 대한 이야길 해주는데, 여차저차 별로 쓸모 없는 과목이라서 드롭했다고 한다. –_-;; 시간은 엄청 많이 드는데, 이론적이기만 하고, 전혀 쓸모 없는 뭐 그런 과목이었다고. (해석을 잘못한 것일수도 있음.)
프로그래밍에 집중된 코스들을 꼭 수강하라고 한다. 요즘은, 프로그래밍을 아무데서나 배울 수 있는데, While 루프에 대해 배우려고 $160,000 달러를 지불하면서 학교를 다니는 것은 아니지 않냐고. 그러니깐, 좀 빡쎈 프로그래밍 수업을 들으라는 의미인 것 같다.

6. Stop worring about all the jobs going to India.
미국에는 인도에 하청을 주거나, 인도에 지사를 설립하는 경우가 굉장히 많은가 보다. 사랑하지 않으면 떠나라의 원제도 My Job Went to India: 52 Ways to Save Your Job이다. –_-;; 미국의 현실을 한 문장으로 요약하는 적나라한 표현이다. 내 일자리가 인도로 가고 있다. 당신의 일자리를 사수하는 52가지 방법이라니. 아무튼, 조엘이 말하는 바도 이 책의 결론과 비슷하다. 많은 프로그래머 자리가 인도로 가고 있긴 하지만, 고급 일자리는 국외로 보내질 않는다고 한다. 자세한 이유는 사랑하지 않으면 떠나라에 나오므로 생략하고, 어쨌든 고급 프로그래머가 되면 살아남으니 그런 걱정은 하지 말라는 소리다. 아, 조엘은, 그럼 걱정을 하면, 다른 방법이 있냐고도 묻는데, 변호사의 99%는 주당 90시간 근무때문에 자기 직업에 불만족한다고 한다. (주말에도 일하면 하루에 대략 12~13시간인데, 프로그래머도 다들 그러지 않나? –_-a) 하지만, 프로그래밍을 사랑하는 사람이 프로그래머로 일하는 것은 매우 행운이라고 하면서, 게다가, 프로그래머는 24살에 IPO를 해서 고액연봉자가 될 수 있는 직업이라고 살살 꼬신다. (어이, 이봐. 난 이미 24살은 넘었는데? -_-;;)

7. No matter what you do, get a good summer internship.
똑똑한 리크루터라면, 프로그래밍을 사랑하는 사람들은 8학년때 자기 치과의사를 위해 데이터베이스를 작성해줬거나, 대학에 가기 전에 컴퓨터 캠프에서 강사를 했거나, 학교 신문을 위한 컨텐츠 매니지먼트 시스템을 만들어줬거나, 소프트웨어 회사에서 여름 인턴쉽을 했을꺼라고 한다. 앞에꺼 하나도 못해봤으면, 인턴쉽을 하라는 소리다.
프로그래밍을 즐기는 사람이라면, 소프트웨어 회사가 아닌 곳에서 파트 타임(알바)을 하는 것은 멍청한 짓이라고 한다. 시간을 낭비하지 말라고 한다. 이런건 어차피 이력서에도 못 쓰지 않냐고. 여차저차, 인턴쉽을 하라면서 자기 회사 자랑을 슬슬 늘어놓는데.. 예전에 똑똑하고 100배 일 잘하는 개발자 모시기라는 책에서도, Fog Creek에 대한 자랑을 그렇게 심하게 하더니만, 이 아저씨 좀;; 하긴, 연봉도 많이 주고, 신입 프로그래머에게도 개인 사무실을 주는 회사가 어디에 또 있겠냐만은.

끝.
여기까지가, 조엘 스폴스키가 대학생들에게 조언해주고 싶은 7가지 항목이라고 한다. 국내와는 사정이 다른 부분들도 있지만, 곱씹을만한 내용이 많은 것 같아서 여기에 정리해봤다.
필자의 영어가 짧아서, 원문과 내용이 달라져버린 부분이 있을수도 있다. 그런 부분은 즉시 지적해주시길 바란다.

-- 이상한 나라의 종텐.