200만원으로 실리콘밸리에서 개발공부하기 (2) – 42에서 공부하는 방식

42 친구들을 처음 만난 건, 샌프란시스코 국제공항에서 얼마 안떨어진

Union City Bart 역이었다.

 

지금 찾아보니 저렇게 아름다운 풍경이지만.. 당시에는 대환장 파티였다

첫 풍경

맞게 가고 있는 거 같긴 한데, 엄청 낯설고

당연히 낯선 거지.. 하면서도 좀 무섭고 그랬더랬다

대륙을 건너온 짐을 한 가득 들고 눈치만 보면서 헤매고 있다가 역 앞을 서성이는 친구들을 발견했다.

‘저 친구들이 내 친구들이다. 같이 42로 가게 될 운명이다’를 직감적으로 알 수 있었다.

 

나의 눈빛을 느낀 것인지 저 친구들도 나를 직감적으로 42라고 생각한 것인지

어디서 왔냐.. 프로그래밍은 좀 해봤냐? 하며 어색한 인사를 건넸다.

역에서 인사 나눈 친구들은 워싱턴, LA, 산호세에서 온 친구들이었다.

그중 한 친구는 전자상가의 캐셔로 일하던 중 이 프로그램을 보고 지원하게 되었다고 했다.

그 친구들은 (당연하지만) 자유로운 영어를 구사하며 금세 서로 친해졌다.

한 30분 동안 그 사이에 껴서 어색한 인사를 나누고 나니, 좀 친해진 기분이 들었다.

와 미국이다

처음 보는 42의 풍경은 낯설었다

 

처음 보는 외국인 친구들.. 처음 보는 기숙사.. (한국에서도 통학을 했었다)

처음 보는 엄청 미국 미국한 음식들..

하지만 엄청 쨍쨍한 캘리포니아의 날씨… 가 그 어색함을 덜어주고 있었다

나는 워낙 서울에서 오래 살아서.. 그냥 비슷한 미국 음식만 봐도 헤벌레 먹어치웠었다

그냥 콘센트가 다른 거 조차 신기했다

날씨가 항상 맑은 것도 신기했다

애들이 스케이트 보드를 저렇게 유용하게? 타고 다니는 것도 신기했다

(기숙사랑 42 건물은 조금 거리가 있었는데, 매일 걸어 다니기에는 10분 정도로 약간 멀었다)

룸메는 프랑스 친구였는데, LA에서 웨이터를 하다 온 친구라고 그랬다.

(개인적인 사견으로는, 엄청 잘생겨서 웨이터만 한 것은 아닌것 같았다…. )

게임을 정말 좋아했는데, 나에게 여러 불법(?) 게임들을 알려줬다..

한창 포켓몬고가 우리나라만 안될 때여서.. 기숙사에서 심심치 않게 들어오는 포켓몬들과 잘 놀았다..

(결국 이브이 못 잡았었다는..)

선생님, 교과서, 강의가 없다

첫날은 잔혹했다

학생을 대륙을 건너와 오게 했는데, 적어도 오프라인에서 사람이 오티를 해줄 거라 생각했다.

 

그런데 유튜브 라이브 스트림으로 설명하던게. 끝. (???)

 

그냥 바로 지난 화에 등장했던 컴퓨터방에 가서 회원가입을 하라고 했다.

거의 pc방에서 자리 가서 회원 가입하시고 이용하시면 되어요~ 같은 느낌이었다고 할까

입구 쪽에 관계자로 보이는 42 후드를 입은 프랑스 친구들 이 몇몇 있었다.

 

하지만 우리에게 별 관심이 없어 보였다.

컴퓨터를 키니 폴더가 여러 개 있고

42 중앙 대시보드 홈페이지를 접속하게 하였다.

 

전체적으로 42 Picine을 관리하는 시스템이었는데

우리가 앞으로 배울 내용과, 간단한 영상자료 그리고 나의 현재 성취도 같은게 전날 찍은 프로필 사진으로 올라와 있었다

그리고 다른 친구들의 프로필과 성취도도 엿볼 수 있었다

(그때 프로필용으로 대충찍었던 R의 사진… 정말 낯설다 ㅎㅎ)

1 Day

(실제 42 인트로 영상에 나오는 프랑스 친구)

어떻게 하라는 지시는 그 pdf에 다 적혀있었다.

그런데 나는 행동파라서.. 그냥 무작정 영상 대충 보고 아 ~이렇게 하는 거구나 감을 잡기 시작했다

(그러나 이게 파멸의 시작이었을 줄은.. )

처음에는 컴퓨터 학과에서 배웠던 C기초라서, 아 42 뭐 별거 아니네 했다. 간단한 변수 설정들

조금 어려워 보인다 하면 pointer개념들 정도?

 

그런데 문제는 unix 쪽이었다

unix 나 터미널 관련된 기초 명령어들을 짜는 프로그래밍 문제들이 있었는데, 한번도 보지 못한 분야였다.

그렇기에 하나부터 열까지 다 공부해야 했다.

(그래도 내가 직접 터미널 쪽 명령어를 만들어가는 재미가 쏠쏠했다)

그리고 뭘 해야 하는지는 알았지만 수많은 시행착오의 연속이었다

그렇게 계속 굴렀다. 조금 앞서가는 친구가 있으면 다짜고짜 붙잡고 물어봤다..

그 놈의 Norm

(실제 42에서 사용했던 문서중 일부)

 

가장 어려웠던건, ‘Norm’ 이라고 하는 지독한 시스템이었다

이것은 42만의 독특한 채점 시점으로 ‘뮬리네트’라고 불리는 컴퓨터가 채점을 한다

‘norm’은 normalization의 약자로 콤마를 어디에 붙여야 하는지, 세미콜론을 어떻게 붙여야 하는지 끝 문단에는 new line을 한 개씩 붙여야 한다 등의 규칙을 강제한다.

 

이 코드들을 짤 때의 지켜야 할 기본사항들이 아주 명확하게 문서로 정의되어있고, 관련 채점 프로그램을 학생들에게 제공한다.

 

이를 어기면, 코드가 아무리 잘 작동을 해도, 0 점을 준다.

우리를 갈아버리는 믹서기 ‘뮬리네트’

우리의 ‘뮬리네트’는 단순히 norm만 검사하는 게 아니라

지독하게 많은 테스트 케이스를 갖고 있다.

보통 우리는 프로그래밍을 할 때 한두 번정도 자기가 원하는 실행 값을 갖고 넣어보고

아 되네? 오 좋군 ‘굿’ 같은 치명적인 판단을 한다.

하지만 실제 소프트웨어의 세계는 정말 수많은 이용에 대한 케이스가 있고

이에 대해 정말 생각지 못한 인풋을 넣는 사용자도 있다 (진짜 이해하기 힘든..)

‘뮬리네트’는 그런 것들을 다 헤아리려는 심정으로 정말 다양한 테스트 케이스를 넣어본다

 

역시나

그리고 그중 한 개라도 안되면 0점.

4주 과정. 0점. 0점. 0점

나는 정말이지 42에서 0점을 수도없이 맞았다.

정말이지 죽어라 잠만 자고 코딩했는데, 그 날의 결과가 전부 0점인날이 많았다

정말 억울하고 좌절스러웠다. 다 같이 뮬리네트를 욕했지만

변하는 건 없었고, 그중에서도 그걸 잘하는 친구들이 있었다

 

2주 정도 지나자, 부류는 세 부류 정도로 나뉘었다

1. 정말 이 시스템에 잘 적응해서, 뭔가 갑자기 친구들을 가르쳐주는 문서 만들기, 세션 만들기에 열중하는 친구들

2. 옆 친구 것을 어떻게든 따라가 보려고, 카피 페이스트 하는 친구들

3. 몰라도 자기 페이스로 계속 이해해 보는 친구들

나는 그래도 3번에 속해, 계속 4주를 보냈다

진짜 너무 좌절의 연속이고 화도 많이 났다.

 

 

어떤 날은, 지금 와서 생각해봐도 정말이지 간단한 케이스였는데 우리 뮬리가 또 0점을 줬다

나는 모든 테스트 케이스와, 그 간단한 문제에 대해서 설명을 하려고

그 띵가띵가 하는 42 스태프에게 가서 항의를 했지만,

그냥 무조건 뮬리네트가 맞댄다

 

컴퓨터는 거짓말을 하지 않는다지만, 이건 너무 하지 않는가..

내가 낙제점을 맞은 건 지금 와서 솔직하게 말하면 거의 없었다 ….

끝무렵 가서 한 3~4번 정도? 였던것 같다.

 

워낙 내가 성격도 급하고, 꼼꼼하지 못한 편이라서 더 그랬다

이대로 그냥 42 Picine에서 끝나는가 싶기도 했다 .

(Picine을 통과하면 3~4년 과정의 정규 입학 자격이 주어진다)

우울 했다.

(마지막 3편에 이어서)

42는 이렇게 강하게 나에게 프로그래밍을 알려줬다. 하지만 다 안다 당신이 4주씩이나 시간을 낼 수 없는 것.

그리고 매일 회사도 가야 하고, 나처럼 시간이 남아돌아서 너무 멀리 가기도 힘들다는 것.

그래서 준비했다.

Summary
200만원으로 실리콘밸리에서 개발공부하기 (2)  - 42에서 공부하는 방식
Article Name
200만원으로 실리콘밸리에서 개발공부하기 (2) - 42에서 공부하는 방식
Description
강사나 교과서, 학비 3가지가 모두 없는 자유로운 IT 기술 학교라는 점과 학비가 전액무료라는 점이 프랑스에서 선풍적인 인기를 끌었고, 그후에 그 열기를 미국으로 전파하자 라는 마인드로 실리콘밸리에 분교를 열어, 2016년 3월경 첫 학기를 시작하였다
Author