첫 번째 KRAFTON AI R&D 해커톤의 뒷이야기와, AI가 뛰어난 결과물을 너무 쉽게 만들어내는 시대에 2026년 AI 인재를 어떻게 찾아내고 평가해야 하는지에 대한 고민을 담은 글입니다.
첫 번째 KRAFTON AI R&D 해커톤의 비하인드 스토리입니다. 두 번의 주말. 두 번의 라운드. 한국 전역에서 모인 약 300명의 참가자. 그리고 하나의 아직 정리되지 않은 질문을 중심으로 설계된 다섯 개의 문제: 모든 강한 지원자가 이미 훌륭해 보이는 결과물을 내미는 세상에서, 우리는 AI 인재를 어떻게 찾아내고 평가해야 할까?
이 글의 전반부는 문제 세트 자체입니다. 규칙, 시간 제한, 그리고 문제를 아무 정보 없이 직접 풀어보고 싶은 분들을 위한 원문 링크가 포함되어 있습니다. 명확하게 표시된 스포일러 구분선 이후의 후반부는 비하인드 스토리입니다. 각 문제가 어디서 나왔는지, 의도한 풀이가 무엇이었는지, 제출물에서 어떤 놀라움이 있었는지, 그리고 이 전체를 설계하면서 2026년의 채용에 대해 무엇을 배웠는지를 다룹니다.
문제를 깨끗한 상태로 직접 풀어보고 싶다면, 스포일러 배너에서 멈추세요. 그렇지 않다면, 그 아래로 계속 읽으시면 됩니다.
Round 1은 하나의 주말 동안 전면 온라인으로 진행되었습니다. 문제는 이틀에 걸쳐 두 개, 하루에 하나씩, 각 4시간이 주어졌습니다. 무엇이든 허용되었습니다. 어떤 도구든, 어떤 AI든, 어떤 라이브러리든 가능합니다.
Day 1 — MultiplierBoard
두 개의 6비트 이진수를 곱할 수 있는 가장 작은 transformer를 만드세요. 두 개의 하위 문제로 구성됩니다: 레이어별 정당성 증명이 포함된 손코딩 가중치, 그리고 고정된 프로토콜 아래에서 정확도 99% 이상을 달성하도록 학습된 아키텍처. 둘 다 반드시 제출해야 하며, 파라미터 수가 가장 작은 쪽이 승리합니다.
인기 있는 AdderBoard 챌린지에서 영감을 받았습니다.
, 이 챌린지는 덧셈에 대해 같은 질문을 던졌습니다. 곱셈은 의미 있게 더 어렵습니다(캐리는 비국소적으로 전파되고 부분곱들이 상호작용합니다). 그래서 설계 공간이 훨씬 더 풍부합니다.
전체 문제 설명:
Day 2 — SparseTap
어떤 이진 신호가 특정한 이전 비트들의 XOR로 생성되고, 각 비트는 독립적으로 확률 0.2로 뒤집힙니다. 잡음이 있는 256비트 예시 시퀀스 2,000개가 주어질 때, 완전히 새로운 잡음 없는 테스트 시퀀스의 다음 192비트를 예측하세요.
모든 2,000개 시퀀스에 대해 숨겨진 탭은 동일하지만, 랜덤 시드는 다릅니다. 탭의 개수 , 최대 오프셋 입니다.
전체 문제 설명:
Round 1 상위 30명은 서울에서 열리는 단일 오프라인 주말 라운드에 초대되었습니다. Round 2 문제들은 구조가 매우 달랐는데, 그 이유는 후반부에서 더 이야기하겠습니다.
Day 1 오전 — 펜과 종이, 기기 없음 (2시간)
120분짜리 폐쇄형 시험입니다. 계산기 없음, 전자기기 없음. 총 40점짜리 문제 3개. Round 2에서 AI 도구가 허용되지 않는 유일한 문제입니다.
손으로 푸는 self-attention. 구체적인 와 두 개의 4차원 입력이 주어집니다. key, value, query, dot-product attention score, softmax weight, output을 causal masking이 있는 경우와 없는 경우 각각 계산하세요.
샘플링 전략. 작은 예시에 대해 greedy, random, top-k, top-p (nucleus)를 수행하세요.
Learning Parity with Noise. XOR reduction 아래에서 잡음 증폭에 대한 닫힌형 식을 유도하고, 처음부터 증명하세요.
전체 문제:
Day 1 오후 — BattlePredict (2시간)
22일차부터 50일차까지 각 플레이어의 총 킬 수를 예측하세요. 열 명의 플레이어가 50일 동안 battle royale 경기에서 경쟁하며, 하루 50경기, 경기당 참가자 5명, 그리고 1대1 결투의 "gauntlet" 형식으로 진행됩니다.
핵심은 데이터셋에 있습니다: 1일차, 11일차, 21일차는 완전한 라벨이 붙어 있습니다. 2–10일차와 12–20일차는 각각 50경기로 이루어진 익명 day-block 18개로 나타나며, 원래 순서는 유지되지만 day label은 제거되어 있습니다. 22–50일차는 테스트 세트입니다.
전체 문제 설명:
Day 2 — VideoAgent (5시간)
자동화된 비디오 분석 에이전트를 구축하세요. 테스트 시점에는 20개의 비디오(각 최대 20분)와 20개의 객관식 질문이 주어지며, 질문마다 선택지는 26개입니다(무작위 기준선 ≈ 3.8%). 테스트 폴더는 마감 15분 전에 공개됩니다. 질문마다 선택지는 26개입니다(무작위 기준선 ≈ 3.8%). 오디오 + 시각적 추론이 모두 필요합니다.
전체 문제 설명:
"이 Premier League 골 모음 영상의 처음 10분 동안, 페널티 구역 밖에서 슛한 골은 몇 개인가요? 리플레이로 같은 골이 다시 보여져도 중복 집계하지 말고, 서로 다른 골만 한 번씩 세세요."
"이 공연 중 심사위원 중 한 명이 처음으로 'oh my god'라고 말하는 순간, 마술사의 어두운 매트 위나 그의 손 안에 명확히 보이는 카드는 몇 장인가요? 보이는 카드만 세고, 마술사가 숨기고 있거나 가려져 있을 수 있는 카드는 제외하세요."
솔직히 말하면, 시작할 때 제 가장 큰 걱정은 채용 자체에 대한 걱정이었습니다. 2026년에는 거의 모든 강한 지원자가 훌륭해 보이는 무언가를 가져올 것입니다. 에이전트가 코드를 쓰고, 에이전트가 보고서를 쓰고, 에이전트가 에이전트를 디버깅합니다. 에이전트가 화려한 CV와 논문까지 대신 써 줍니다. 그렇다면 실제로 무엇을 평가해야 할까요?
저는 두 가지 믿음을 가지고 시작했고, 그것이 결국 모든 문제의 형태를 결정했습니다.
Round 1 문제들
첫째: 지원자가 어려운 문제를 공략하는 데 AI를 쓰지 않는다면, 이미 탈락입니다. 저는 우리 세대에서 가장 강력한 도구를 꺼리는 사람을 채용하고 싶지 않습니다. 그래서 대회는 극도로 어렵지만 현재의 AI 에이전트로 충분히 풀 수 있는 문제들로 시작합니다.
(참고: 모든 참가자에게 cloud, GPU, API credit, model subscription 등 어떤 것이든 쓸 수 있도록 최대 $200를 환급해 주었습니다!)
Round 2 문제들
둘째: 하지만 중요한 문제들에서는, 인간이 여전히 자신이 무엇을 하고 있는지 알아야 합니다. AI 출력이 그럴듯해 보이지만 미묘하게 틀린 경우가 바로 그런 사례이고, 그 썩은 냄새를 맡아낼 수 있는 사람이 필요합니다. 그래서 가장 어려운 문제들은 의도적으로 현재 SOTA 에이전트로는 풀리지 않도록 설계했습니다.
이 긴장감(AI에 강하게 기대되, 그것을 깊이 이해하기)은 문제 세트 전체를 관통하는 중심축입니다.
이 문제는 AdderBoard에 바치는 러브레터였습니다. AdderBoard는 묻습니다: 덧셈을 할 수 있는 가장 작은 transformer는 무엇인가? 우리는 그 질문을 한 단계 더 밀어 곱셈에 대해 같은 질문을 했습니다.
손코딩 트랙은 인간이 attention을 실제로 이해해야 하는 부분입니다. 어떤 head가 어떤 bit를 보는지, 각 MLP가 무엇을 계산하는지, 부분곱이 어떻게 합산되는지. 증명 없는 가중치 벽은 0점입니다.
"영리한 가중치 구성"과 "사실상 곱셈 회로를 배선해 놓고 그것을 transformer라고 부른 것" 사이의 경계는 흐릿합니다. 우리는 관대하게 채점했습니다. 레이어별로 구성을 설명할 수 있고 수학이 맞아떨어지면 점수를 부여했습니다.
재미있는 놀라움은 학습 트랙에서 나왔습니다. 제출물의 상당수가 아키텍처 공간을 탐색하기 위해 autoresearch 스타일의 에이전트 프레임워크를 사용했습니다. 참가자들은 에이전트가 아키텍처를 제안하게 하고, 그것을 고정된 프로토콜 아래에서 학습시키고, loss curve를 보며 반복했습니다. 우리가 보상하고 싶었던 바로 그 종류의, "탐색 문제를 공략하기 위해 AI를 사용하는" 행동이었습니다.
겉으로 보이는 이야기는 "숨겨진 XOR 탭을 찾아 다음 비트를 예측하라"입니다. 얼핏 보면 signal-processing이나 LFSR cracking 문제처럼 보입니다. 많은 사람들이 그 길로 들어가 오프셋을 brute-force하거나, 출력에 대해 gradient descent 모델을 맞추는 등의 시도를 했습니다.
의도한 경로는 이 문제가 사실상 Learning Parity with Noise (LPN)가 변장한 것임을 알아보는 것이었습니다. "비밀"은 어떤 오프셋들이 탭인지 나타내는 이진 indicator vector입니다. 각 "sample"은 이전 개 비트의 window와 그 다음 비트의 쌍인데, 여기서 다음 비트는 secret이 선택한 위치들의 XOR에 Bernoulli(0.2) 잡음 비트를 더한 것과 같습니다. 이것이 정확히 LPN입니다.
이걸 알아차리면, 교과서적인 공격은 Blum-Kalai-Wasserman (BKW) 알고리즘입니다. 선택한 비트 블록에서 query vector가 충돌하는 sample들을 결합해 XOR reduction으로 데이터셋을 줄이며, sample 수와 잡음 감소를 맞바꿉니다. 편향은 의 거듭제곱으로 줄어드는데, 이것이 바로 우리가 Round 2 필기시험에 다리 역할로 넣어 둔 정확한 항등식입니다.
몇몇 참가자는 제가 예상하지 못했던 RANSAC 스타일 접근법을 사용했습니다. 이 문제의 특정 스케일에서는 수학적으로 실제로 맞아떨어집니다. 저는 이 방향을 염두에 두고 설계하지 않았고, 그런데도 작동했다는 점이 정말 좋았습니다. 하나는 제가 계획한 해법, 다른 하나는 참가자들이 저에게 가르쳐 준 해법이었습니다.
Round 1 채점 후, 우리는 상위 30명을 선발해 다음 라운드로 올렸습니다. 학생, 논문을 낸 AI 연구자, 비엔지니어, 잘 알려진 한국 기업의 여러 테크 리드까지, 매우 다양한 집단이었습니다.
거의 모든 Round 1 제출물은 훌륭해 보였습니다. 단지 "기준을 넘겼다" 수준이 아니라, 정말 인상적이었습니다. 매끈한 코드, 괜찮은 보고서, 합리적인 정확도. 이제 에이전트들은 정말 뛰어납니다. 제출물만으로 사람을 구분하는 것은 어려웠습니다.
결과물이 다 비슷하게 좋아 보인다면, 실제로 무엇을 기준으로 선발하는 걸까요? Round 2에서는 자신이 무엇을 하는지 실제로 이해하는 사람에게 보너스 점수를 주고 싶었습니다. 문턱으로 쓰려는 것은 아니었고, AI가 결국 뭔가를 틀렸을 때 우리가 가장 놓치고 싶지 않은 더 깊은 종류의 능력을 드러내는 동점자 결정 요소로 삼고 싶었습니다.
Round 2의 모든 문제는 red-teaming 과정을 거쳤습니다. 펜과 종이 시험만은 예외였는데, 이건 설계상 폐쇄형이고 어차피 시험장에 에이전트가 없으니까요. 기기 사용이 허용된 문제들에 대해서는, Claude Code, ChatGPT Pro, 그리고 autoresearch 스타일 에이전트들로 문제 생성과 스트레스 테스트를 수없이 오가며 많은 compute를 태웠고, 어느 하나도 단일 SOTA 호출만으로 end-to-end 해결되지 않는다는 것을 확인했습니다. 각 문제는 에이전트가 할 수 있는 것 위에 실제 인간의 설계 선택이 추가로 필요했습니다. 문제를 쓰고, 제가 접근할 수 있는 모든 SOTA 에이전트에 던지고, 어디서 부서지는지 보고, 문제를 더 단단하게 만들고, 반복했습니다. 솔직히 말하면, 이 반복 루프가 그 2주 동안 제가 가장 재미있게 했던 일이었습니다.
이건 보너스 점수용 문제입니다. 기기 없음, AI 없음, 2시간. 시험 전체는 사실상 Round 1의 두 문제를 위한 한 쌍의 브리지 문제로 구성되어 있습니다.
Q1(손으로 푸는 self-attention)과 Q2(샘플링)는 MultiplierBoard를 위한 다리입니다. 정말로 6비트 숫자를 곱하는 transformer를 손으로 구성했다면, 2x2 토이 예시에서 softmax attention을 손으로 계산하고 3토큰 분포에 nucleus sampling을 적용하는 것은 기계적으로 할 수 있어야 합니다.
Q3(LPN 잡음 증폭 항등식)는 SparseTap을 위한 다리입니다. 이것은 sample들을 함께 XOR할 때 잡음 파라미터가 어떻게 합성되는지를 묻는데, 이는 BKW의 핵심 연산입니다. Round 1의 SparseTap 제출물 거의 모두가 보고서에서 BKW를 언급하고 사용했기 때문에, Q3는 참가자들이 자신들이 의존한 XOR reduction 단계 뒤의 수학을 실제로 이해하고 있는지를 확인하는 문제였습니다.
그래서 오전 시험은 사실상 일종의 sanity check입니다. Round 1 문제를 정말 본인이 직접 풀었는가, 아니면 에이전트가 풀었고 본인은 그것이 무엇을 만들었는지 완전히 알지 못하는가?
상위 30명 중 의미 있는 수의 참가자들(Round 1을 완벽하게 해낸 사람들)이 기본적인 attention/sampling 문제를 전혀 풀지 못했습니다. 이들은 Round 1 제출물이 눈부셨던 후보들이었습니다.
저는 아직 이 발견을 어떻게 해석해야 할지 잘 모르겠습니다. 한편으로, "손으로 수치적으로 attention을 안다"라는 역할의 중요성은 도구가 좋아지면서 객관적으로 줄어들었습니다. 어쩌면 괜찮은 일일지도 모릅니다. 다른 한편으로, "AI의 답이 미묘하게 틀렸을 때 그것을 알아챈다"라는 역할의 중요성은 객관적으로 커졌습니다. 역사적으로 이 두 능력은 상관관계가 있었습니다. 2026년에도 그 상관관계가 여전히 유지되는지는, 지금 AI 채용에서 가장 핵심적인 미해결 질문이라고 생각합니다.
이제부터는 무엇이든 허용됩니다. 원하는 어떤 AI든 가져오세요.
이 문제는 제 팀이 KRAFTON에서 실제로 하고 있는 작업에서 바로 나왔습니다. PUBG는 battle royale이고, 이는 곧 대규모 skill rating 문제이며, 결국 플레이어 실력이 비정상적이라는 사실을 다뤄야 한다는 뜻입니다. 사람들은 몸이 풀리고, 싫증나고, 쉬고, 배우고, 감퇴합니다. 정직한 MMR 시스템이라면 이 점을 다뤄야 합니다. 그래서 저는 그 현실 문제의 가능한 가장 작은 토이 버전을 만들고 그것을 대회 문제로 바꿨습니다.
설정은 이렇습니다. 열 명의 사용자, 각각 50일 동안 선형적으로 시간에 따라 변하는 실력. 50일, 하루 50경기, 경기당 플레이어 5명, BTL 결과. 활동률 역시 시간에 따라 변하므로, 3일차의 헤비 유저가 18일차에는 유령이 되어 있을 수도 있습니다.
반전은 이겁니다. 1일차, 11일차, 21일차는 완전히 라벨이 붙어 있습니다. 2–10일차와 12–20일차는 day label이 제거된 채, 18개의 익명 day-block으로 구성되어 있습니다. 과제는 22–50일차의 각 플레이어 총 킬 수를 예측하는 것입니다.
의도한 파이프라인은 다섯 단계이며, 각 단계마다 문제를 실제로 이해해야 합니다. 2단계가 관문이 되는 통찰입니다. 이걸 건너뛰고 데이터 전체에 대해 정지성을 가정한 채 BTL을 돌리면, 그 뒤로는 자신감 있게 틀리게 됩니다. 4단계는 1일차, 11일차, 21일차에 선형 추세 앵커가 있다는 사실을 이용합니다. 그래서 각 익명 블록에 대해 "이 블록이 d일차의 보간된 skill과 얼마나 잘 맞는가?"라는 cost matrix를 계산한 뒤, Hungarian method로 선형 할당 문제를 풀 수 있습니다. 일단 라벨을 복원하고 나면, 사용자별 skill 곡선은 아름답게 선형으로 나오고, 22–50일차로의 외삽은 간단합니다.
대회 후 우리는 여러 기준 baseline을 계산했습니다. 의도한 파이프라인은 진짜 day label을 아는 oracle에 상당히 근접합니다. 순진한 baseline은 그보다 2배 이상 나쁩니다.
이걸 그냥 에이전트에게 던지면 어떻게 될까요?
거의 예외 없이, 에이전트는 day label이 있는 데이터(1일차, 11일차, 21일차)를 집어 들고, 그 약 600번의 duel에 대해 BTL 모델을 맞추고, 답을 보고합니다. 익명 day-block들은 전혀 보지 않습니다. 심지어 라벨이 있는 세 날짜조차 사용자별 skill에서 서로 일치하지 않는다는 점도 알아채지 못합니다. 실력이 비정상적이라는 사실도 깨닫지 못하고, 숨겨진 day label을 복원하려는 시도는 더더욱 하지 않습니다. 출력은 자신감 있고, 그럴듯해 보이며, 정확히 순진한 baseline입니다.
성공한 인간 참가자들은 정반대로 행동했습니다. 그들은 데이터 탐색부터 시작했고, 그 탐색 자체에도 AI를 강하게 사용했습니다. 에이전트에게 라벨이 있는 날짜들로부터 일자별 skill 추정치를 그리게 하고, 익명 블록들 전반의 duel 및 활동 분포를 시각화하게 하고, 즉석에서 진단 도구를 생성하게 했습니다. 일단 그 그림이 비정상성을 명백하게 만들고 나면, 나머지 파이프라인(per-block BTL → Hungarian → re-fit → extrapolate)은 에이전트가 정확히 수행할 수 있는 작고 잘 정의된 지시들의 연속이 됩니다. 이들은 수학을 손으로 풀고 있었던 것이 아니라, 에이전트를 현미경처럼 사용한 뒤, 어디를 비춰야 하는지 말해 주고 있었습니다.
이건 제가 가장 좋아하는 종류의 문제였습니다. 묻기만 하면 에이전트가 개별 단계는 모두 수행할 수 있지만, 아직은 그것들을 올바른 순서로 스스로 배치하지는 못합니다. 병목은 한 번도 에이전트의 능력이 아니었습니다. 다음에 무엇을 요청해야 하는지를 아는 것이었습니다.
대미를 장식하는 마지막 문제입니다. 5시간. 자동화된 비디오 QA 에이전트를 구축하세요. 우리는 분에 20개의 비디오와 20개의 프롬프트가 든 폴더를 주고, 참가자는 까지 20개의 답을 제출해야 합니다.
중요했던 몇 가지 설계 선택이 있었습니다. 질문마다 선택지는 26개라서 무작위 기준선은 약 3.8%이고, 운 좋은 찍기는 전략이 될 수 없습니다. 어떤 질문도 타임스탬프 점프로 해결할 수 없고, 모든 질문은 영상 대부분을 봐야 합니다. 적어도 하나의 질문은 오디오와 시각을 모두 요구합니다. 즉, 말해진 문구를 감지하고, 대응하는 프레임을 찾고, 그 프레임에서 시각적인 무언가를 세어야 합니다. 그리고 참가자들은 테스트 세트를 미리 볼 수 없습니다.
왜 하필 video QA일까요? 왜냐하면 오늘날 video QA는 단순히 SOTA 멀티모달 모델에 입력을 던지는 것만으로는 어려운 사례에서 전혀 통하지 않는 종류의 작업이기 때문입니다. 실제로는 두 가지 실현 가능한 경로가 있었습니다. 직접 에이전트 하니스(frame sampling, audio extraction, multi-pass reasoning, verification 등)를 설계하고 모델도 손수 고를 수 있었습니다. 혹은 meta-harness(
)를 택해, 바깥쪽 최적화기가 AI를 사용해 하니스를 튜닝하게 할 수도 있었습니다. 두 번째 경로의 함정은, 참가자들이 테스트 세트나 훈련 데이터에 접근할 수 없었기 때문에 먼저 자신만의 evaluation set을 만들어야 했다는 점입니다(그리고 eval set이 없으면 meta-optimizer는 올라갈 언덕이 없습니다). 어느 쪽이든, 실제 인간의 작업이 필요했습니다.
문제가 어렵고 열려 있었음에도 불구하고, 1위 제출은 테스트 세트나 훈련 세트에 대한 접근 없이, 완전히 숨겨진 테스트 세트에서 5시간의 콜드 스타트만으로 거의 50%에 가까운 점수를 기록했습니다. 중간권에도 흥미로운 해법이 많았습니다. 서로 다른 분해 전략, 서로 다른 fallback heuristic, 패스별 교차검증 방식의 차이들. 하지만 최상위 제출은 분명히 두드러졌습니다.
두 번의 주말 동안 수백 개의 제출물을 채점한 뒤의 몇 가지 생각을 적어 봅니다.
이제 "에이전트를 써서 뻔한 일을 하게 한다"의 천장은 매우 높습니다. Round 1 작업 대부분은 훌륭했습니다. 채용 과정이 "take-home 과제를 주고 결과물을 읽는다"라면, 실제로 배우는 것은 후보가 AI를 사용하고 좋은 서비스를 위해 비용을 지불할 의향이 있다는 사실입니다. 그것도 의미가 없지는 않습니다. 하지만 그것은 당신이 정말 원한 신호와는 거리가 멉니다.
그 신호는 여전히 존재합니다. 다만 그것을 드러내도록 설계해야 합니다. SOTA 에이전트가 자신감 있게 오답을 내놓는 문제들(BattlePredict, VideoAgent)은 금광입니다. 이런 문제는 불일치를 알아차리고 개입하는 후보를 드러냅니다.
저는 여전히 펜과 종이 시험이 옳은 선택이었다고 생각합니다. 다만, 2026년에 "손으로 attention을 안다"는 것 자체가 본질적으로 중요하다고는 생각하지 않으며, 그것은 "AI가 틀렸을 때 디버그할 수 있다"의 대리 지표일 뿐입니다. 어쩌면 그 대리 지표는 점점 희미해지고 있을지도 모릅니다. 저는 더 날카로운 신호를 찾고 싶습니다.
가장 인상적이었던 것은 영리한 알고리즘이 아니었습니다. 영리한 AI 조향이었습니다. 저를 놀라게 한 것은 최상위 제출 뒤에 있던 진짜 인간적인 뛰어남이었습니다. 참가자들은 정확히 다음에 에이전트에게 무엇을 물어봐야 하는지, 언제 그 첫 본능을 덮어써야 하는지, 언제 신뢰해야 하는지를 알고 있었습니다. 그것이 실제로 채용할 만한 능력입니다.
2026년에 적합한 채용 대상은 기본적으로 AI를 집어 들되, 의도를 가지고 그것을 덮어쓸 수 있는 사람입니다. 두 절반 모두 중요합니다. 이 대회는 어떤 의미에서는 그 두 절반을 동시에 측정하려는 시도입니다.
상위 세 명의 우승자는 꽤 큰 상금을 받아 갔고, 저는 시작할 때보다 훨씬 더 흥미롭고도 결론 나지 않은 채용에 대한 생각을 안고 돌아왔습니다. 첫 회로서는 딱 맞는 결과라고 느껴집니다. 우승자들뿐 아니라 많은 참가자들이 이번 대회가 자신들이 참여해 본 AI 해커톤 중 가장 흥미로웠고, 매우 교육적이었다고 말해 주었습니다... 솔직히 그것이 가장 보람 있던 부분이었습니다.
참가해 주고, 밤을 새우고, 끝까지 만들어 낸 모든 참가자들께 감사드립니다. 내년에도 다시 할 것입니다(어쩌면 더 빨리?) 그리고 문제들은 더 이상해질 거라고 약속드립니다.
재미있게 읽으셨길 바랍니다 :-)