IOI 교육생 님께…

IOI 교육생님께…

물론 IOI 교육생이 되실 정도라면 당연히 문법 외우고 함수 외우는 실력은 당연히 되셔야 IOI 교육생이 되는것은 당연하겠죠..

문법 외우는 것은 당연하고 함수 외우는 것도 당연한것 맞습니다.

하지만 모든 사람에게는 처음이라는 것이 있다는 것을 말씀 드리는 것입니다.

이제 막 C언어 문법 끝나고 이제 막 알고리즘이 무엇인지 막 재미 붙이는 아이의 학부모입니다.

저도 프로그램으로 먹고 사는 직업을 가지고 있으면서…

문법요?
별로 외우라고 하지 않습니다.
4차 산업 혁명시대에 초 인터넷으로 연결되어 있는 이 세상에서…
문법 생각 나지 않으면 그냥 C언어 그 기능으로 검색하면 쭉 뜹니다…

함수도 마찬가지 입니다.

저요…
물론 저도 C언어는 아니지만 제가 사용하는 언어 모든 문법을 모두 익히지 못했습니다.
프로그래머 인생 20년 이지만 문법이란거 별로 중요하지 않게 생각하고 있습니다.

왜요?
그냥 그래요…
이 언어에서 이 기능 구현 가능한 함수가 있어 정도로만 알고 있습니다.
그러다가 필요하면 검색해서 그 기능 사용합니다.
물론 없는 기능은 구현해서 사용하겠죠…
그러다가 자주 사용하는 기능은 그냥 많이 사용하다 보면 외워지죠…

표준라이브러리 사용하는게 생각나지 않으면 구현하면 된다고 하셨죠…
물론입니다.
실력 부족이고 연습부족이라고 하셨죠?

님께서는 언제부터 시작 하셨는지 모르지만…
초등부에서 대회 준비 시작 1~2년 하고 대회 참가하는 학생이 많은가요?
보통 6개월 준비하면 많이 준비 하는 거 아닌가요?
저희 아이만 그런가요?

6개월이면 문법 갓 떼고…
알고리즘 조금 재미 붙일 정도거든요…

그러면 실력 더 키우고 대회 나가라고요…

그렇다면 이 대회를 준비할 학생이 얼마나 될지 잘 모르겠네요…
우리 아이가 지금은 무척이나 재미 있어 하지만 일년 뒤에 계속해서 지금처럼 재미 있어 할지 어떨지…
상을 못받는게 억울해서가 아닙니다.
아이가 재미 있을때 한번이라도 대회 구경 하고 대회의 벽이 높은 것을 실감하고 체험하고 느끼게 하고 싶었던 거예요.

그냥 아이와 함께 구름 IDE 사용해 봤는데…
그 전에는 아무 생각 없이 사용했던 함수도… 몇글자 치면 함수명이 자동으로 떠서 거기서 선택해서 사용했던 함수들…
갑자기 철자가 생각이 안나더라구요… 머리가 안 좋아서 겠죠…

그러더니 한번 철자 생각 안나니까 자꾸 아무 글자나 쳐 지고…
맞는 함수 적었는데도 그게 맞는지 안맞는지 확신이 안 서고…
도저히 안되어서 검색 해 보니 맞는 글자 적어 놓고도 갑자기 당황하니 그게 맞는 것인지 아닌지 조차 잘 모르겠더라구요.

이거 한번 당황하니 아무생각이 안나더라구요.

시험시간에 검색 할 수 있나요?
그것도 궁금하네요.

그래도 아이보다는 제가 좀 많이 c언어 문법 사용해 봤다고 생각하는데 저도 이렇게 생각이 안나는데 아이가 오죽 답답하면 “안나가면 안돼?” 라고 이야기 합니다.
모든 학생들이 똑같은 환경이니 그냥 나가서 보라고는 얘기 했지만…

실제로 문법이 그렇게 중요한가요?
알고리즘 대회에서만 중요한 것인지…
실제 현실세계에서 문법이 중요한 것인지 묻고 싶습니다.

저는 문법 보다는 문제를 풀어 나가는 과정이 더 중요하다고 생각하고 있는 1인이기는 합니다만…
물론 IOI교육생이 되기 위해서는 계속 사용하는 STL 의 표준 함수들은 왠만큼 모두 외워서 사용하겠죠…

하지만 모든 IOI 교육생이라고 해서 입문 시절에도 모든 함수를 외워서 사용했다고 착각 하시는 것은 아니겠죠?
그만큼 많이 훈련하고 연습했기 때문에 외워졌을거라고 생각합니다만…

초보자 들에게는 함수 자동생성이 얼마나 중요하고… 디버깅을 할 수 있는지 없는지가 얼마나 중요한지를 이야기 하고 싶은 것입니다.
(우리 아이 scanf 에서 & 빼 먹어서 실수 하는 일이 종종 있을 정도로 초보자 입니다. 알고리즘 구현은 제대로 된것 같은데… 무엇이 안되는지 제가 찾아 봐도 이상해서 디버깅 돌려 보면 scanf 에서 & 빠져서 데이터가 안들어 오더라구요…. 물론 이런 부분도 printf 문으로 디버깅 해 보면 되겠죠…. 이 세상에 안되는게 무엇이 있겠습니까… 그러면 이 세상에 불편한 것을 감수하고 거기에 맞춰 살아 가야 하나요… 세상은 정말 극초세상으로 바뀌는데… 요즘에 맘만먹으면 조금만 불편한게 있으면 그 다음날 그걸 개선한것이 나오는 세상입니다. 이런 세상에서 정말 IT 영재들의 대회라고 하는 이 대회에서 함수 자동생성도 안되고 디버깅도 안되는 그냥 메모장 하나의 역할만 하는 툴을 가지고 알고리즘 구현하는게 정상인지를 묻고 싶네요.)

이 대회를 꼭 IOI 교육생님 처럼 정말 어마 어마한 실력을 가지고 있는 사람만 치라는 대회는 아니잖아요?

도전자가 있어야 그 도전자가 또 실력을 키워서 IOI 교육생님 같은 사람이 되지 않을까 라는 생각을 합니다만…

물론 아랫분 처럼 정보올림피아드가 모든 사람에게 공정해야 하는 것은 맞다고 생각 합니다.

올해는 이렇게 결정이 된다고 하여도 내년에도… 후년에도…
시스템은 개선 되어야 한다고 생각 되는데…
제가 너무 무리한 요구를 하는 건가요?