42Seoul Eduthon 후기

Minjun_·2022년 9월 1일
0

42Seoul

목록 보기
7/11
post-thumbnail
post-custom-banner

https://github.com/keonwoo98/42_Eduthon

그동안 42Seoul 내부에서 진행되는 프로그램에 참가를 한 적이 없었는데, 마침 하고있는 과제도 끝나기도 했고, 다른 일정도 없어서 해커톤에 참가하게 되었다.
(사실, Eduthon 1, 2등 상품이 1주일동안 네덜란드, 프랑스에 있는 42 캠퍼스 방문이여서...)

Eduthon 이란?

Eduthon은 42시간동안 진행되는 해커톤이다.
42시간동안 PBL 형식 학습 콘텐츠(Dash) 제작하게 되는데 30분 ~ 2시간 정도안에 해결할 수 있는 C언어 프로젝트를 만드는 것이 목적이다.
즉, 42시간동안 짧은 PBL 문제와 해답지 테스터기를 만들어 제출하는 것이다.
업로드중..

팀 구성

3명에서 한 팀을 이루게 되고 평소에 알고 지내던 hyopark, keokim 과 팀을 이뤄서 참가하게 되었다.
총 36명이 참가하였고 3명에서 한 팀을 구성하므로 12팀이 참가하였다.
지원 자격은 42서울 본 과정 4써클 이상 진행하고 있는 교육생만 참가가 가능하다.

일정

42시간동안 진행하게 되고 세부 일정은 다음과 같다.

8월 23일(화) 17:00 pm ~ 18:00 pm, 에듀톤 오리엔테이션
8월 23일(화) 18:00 pm ~ 25일(목) 12:00 pm(낮) 42시간동안 진행

18:00부터 전광판에 42시간 타이머가 작동하게 되는데 흘러가는 시간을 실시간으로 볼 수 있어서 괴로웠고, 한편으로는 더 열심히 하게 된 것 같다.

Do the Dash!

17:00부터 OT를 진행하게 되고 마지막으로 Do the Dash! 구호와 함께 타이머가 작동하기 시작했다.
OT를 하는 동안 세부 일정이 발표 되었는데, 다음과 같았다.
18:00 ~ 16:00 : Dash 제작
16:00 ~ 19:00 : Dash 발표 (한글)
19:00 ~ 03:00 : 타 팀의 Dash 학습 후 1차 동료평가 (피드백)
03:00 ~ 09:00 : 보완 작업 (피드백 반영)
09:00 ~ 12:00 : Dash 발표 (영어) && 타 팀의 Dash 2차 동료평가 && 전문가평가
12:30 : 수상자 발표
42시간 사이에 잠을 자거나 쉴 수 있는 시간이 있을 줄 알았는데, 정말 42시간동안 타이트한 시간표가 나와서 당황했다.

주제 선정

모든 프로젝트는 C언어로 작성해야한다는 제한 조건이 있었고,
어떤 주제로 프로젝트를 만들지 고민을 많이했는데, 브레인 스토밍을 하여 종이에 생각나는 것들을 모두 적어 보면서 아이디어 회의를 하였다.
거의 3시간 가까이 주제를 정한 것 같은데, 나왔던 아이디어들은 아래와 같다.

  • 서울 지하철을 Graph로 만들어서 최단거리 알고리즘 적용
  • 블랙잭(42), 베스킨라빈스(42)와같은 게임 만들기
  • 이미지(bitmap)파일을 활용하여 이미지와 관련된 프로젝트

그 중 hyopark이 낸 아이디어인 이미지를 활용하여 어떤 프로젝트를 만들어보자는 주제로 결정하였다.

개발

기본적으로 우리가 생각한 것들을 C언어로 구현이 가능한지부터 찾아 보기 위해서 bitmap이 어떤 형태로 저장이 되는지, 이 bitmap을 가지고 어떤 것들을 할 수 있는지 등을 찾아보고 공부하기 시작했다.
공부해보니 생각보다 어려운 주제는 아니였고, 수월하게 bitmap 파일을 구조체에 저장하여 데이터를 조작할 수 있었다.
이 이미지 파일을 구조체에 저장하고 나서 어떤 것들을 할 수 있을까도 고민을 해봤는데 그 중 우리가 정한 것은 색 바꾸기, 좌우 상하 반전, 확대 축소와 같은 것들이었다.
나는 색바꾸기를 기능을 개발하였고, 금방 끝나 팀원들이 개발하는 것을 도와주었고, 다행히 새벽 2~3시쯤에 모든 기능을 개발하였다.

문서 작업 && 테스터 만들기

개발이 완료된후 이제 과제 pdf, 해설, 테스터기 등등 제출에 필요한 문서들을 만들기 시작했다.
나는 과제 pdf를 영어로 초안을 작성해 두고, 테스터기를 bash script를 활용해서 만들기 시작했다.
처음에 만들었던 테스터기는 원본 이미지 파일과 단순히 diff 명령어와 비교하여 같은 이미지인지 확인하는 방법으로 만들었다.
hyopark은 발표ppt를, keokim은 해설, 과제 pdf를 42형식에 맞춰서 만들었고, 그렇게 발표와 제출 준비를 마치게 되었다.

Dash 발표 (한글)

첫 번째 프로젝트 발표는 내가 맡게 되었다.
평소에 여러 사람들 앞에서 발표하는 것을 무서워하고 싫어했는데.. 그래도 용기내서 발표하게 되었고, 새벽에 미리 발표 스크립트랑 ppt자료를 보면서 여러 번 연습했더니 생각보다 많이 떨지 않고 무사히 끝나게 되었다.
발표와 함께 다른 팀들의 동료평가도 진행하게 되는데, 3등이라는 성적을 거두면서 생각보다 나쁘지 않은 시작을 하게 되었다.

피드백 && 수정

이 이후부터는 다른 팀들의 Dash 프로젝트를 풀어보고 피드백을 남겨준 후, 과제 보완작업을 하게 되었다.
다른 팀의 프로젝트를 풀어보면서 제일 재미있었던 프로젝트는 lldb를 사용해서 버그를 하나씩 고치는 프로젝트였다.
푸는 맛이 있었고, 못찾을 때는 오기가 생겨서 3시간정도 그 프로젝트만 풀어봤던 것 같다.
다른 팀원들이 우리 프로젝트를 풀어보면서 피드백도 남겨 주었는데 그중 생각나는 것 몇개를 적어 보았다.

  • bitmap 구조를 익히는데 시간이 너무 많이 걸린다.
  • openCV의 기능을 일부 구현하는 것이 과제의 목표인데 이미지 처리하는 부분이 너무 적다.
  • bitmap에 대해서 과제에서 조금 더 정보가 주어지면 좋겠다.

bitamp에 대한 정보가 부족하다는 피드백을 수용하여 과제에서 bitmap을 저장하는데 쓰이는 구조체에 대한 정보를 제공하기로 결정하였고, 수정해서 다음날 9시 최종 발표를 준비하였다.
hyopark은 ppt를 조금 더 보기 좋게 정리하였고, keokim 은 해설, 과제 pdf 수정, 나는 테스터기 기능을 더 개발하였다.
테스터기 기능중 컴파일이 잘 되는지, 42의 coding convention인 norminette를 만족하는지 등 여러가지 기능들을 추가하였다.
그러다 보니 훌쩍 새벽 5~6시가 되었고, 이제 최종발표만 준비하면 42시간동안의 여정이 끝나게 되었다.

최종 발표 (영어)

마지막날 최종 발표(영어)는 keokim이 맡게 되었고, 영어로 스크립트를 같이 작성한 후 3~4시간정도 계속 연습하다가 9시에 발표를 하게 되었다.
영어로 발표하는 것이다 보니 부담이 많이 갔을텐데, 고생이 많았다 우리 keokim...
다행히 연습한데로 잘 끝나게 되었고, 2차 동료평가는 2등으로 마무리하게 되었다.
1차 동료평가 3등, 2차 동료평가 2등을 하여서 멘토님들의 평가만 기다리면 되는 상황이었고, 성적이 생각보다 나쁘지 않아서 수상에 대한 기대감도 가지고 있었다.

결과 발표

12:30에 최종 결과를 발표하게 되었다.
2등 (최우수상), 1등 (대상) 두 팀을 선정하게 되고, 선정된 두 팀은 9월 중순에 프랑스 파리의 ecole 42와 네덜란드 암스테르담의 codam 42, 벨기에 브리쉘의 19를 방문하여 외국에 있는 42 cadet들과 교류를 하게 된다.
최우수상부터 발표를 했는데 앞서 언급했던 lldb로 버그를 하나씩 고치는 프로젝트 팀이 수상하게 되었다.
2등을 할 줄 알았는데, 2등이 다른팀이라 어느정도 반 포기를 한 상태로 1등 발표를 기다리고 있었는데, 예상외로 우리팀이 대상을 받게 되었다.👏

42시간동안 고생한 보람이 느껴졌고, 꽃다발과 함께 대상이 적힌 카드(?)를 받게 되었는데 갑자기 졸음이 싹 사라지고 눈이 초롱초롱해지는게 아주 그냥 기분이 하늘을 날아갈거같은..

후기

원래는 해외 단기 연수 후에 수정하여 후기를 작성하려 하였는데, 지금도 너무 글이 길어져서 여기서 한번 끊어야 할 것 같다.
프로그래밍을 공부한 후 처음 참여한 해커톤이였는데, 생각지도 못한 너무 큰 상을 받게 되어 뿌듯했고, 해외 연수까지 갈 수 있는 기회까지 얻을 수 있어 영광이였다.
42시간동안 12팀이 모두 뜬눈으로 밤을 새우며, 고생을 너무 많이했는데, 모두 너무 고생많았다는 얘기를 하고 싶다.
(냉장고에 핫식스가 3칸을 모두 가득 채워있었는데 부족해서 한번 리필을 했다는..)

흔치 않은 기회에 좋은 성적을 거둘 수 있어서 너무 감사하고, 너무 고생많았던 우리 keokim hyopark 같이 해외 42 캠퍼스들 돌아다니면서 좋은 경험 많이 하고 왔으면 좋겠다.

다음에도 여러 해커톤 행사들 참여해보면서 이런저런 기회를 많이 쌓아야겠다고 다짐했다. 생각보다 42시간이라는 시간이 짧은 시간인데, 결과물이 나쁘지 않고 얻는 것이 많았기 때문이다.

From. 42Seoul Team La - MiniCV
Project Github

profile
졸음을 이겨내자..!
post-custom-banner

0개의 댓글