Port Mortem 2026 — 실제 소프트웨어를 재작성하고, 여전히 작동함을 증명하세요
요약
Port Mortem 2026은 AI를 활용해 소프트웨어를 다른 언어로 재작성하고, 그 동작적 동등성을 증명하는 72시간 국제 온라인 해커톤입니다. 단순 코드 생성을 넘어 테스트, 벤치마킹, 문서화를 통해 마이그레이션의 정확성을 입증하는 데 중점을 둡니다.
핵심 포인트
- AI 기반 소프트웨어 마이그레이션의 정확성 검증 강조
- 72시간 동안 진행되는 글로벌 온라인 해커톤
- 동작적 동등성(behavioral equivalence) 입증이 핵심 과제
- 테스트, 벤치마킹, 문서화 등 엔지니어링 규율 요구
Port Mortem 2026 — 실제 소프트웨어를 재작성하고, 여전히 작동함을 증명하세요.
소프트웨어 산업이 새로운 시대에 진입하고 있습니다.
이제 AI는 몇 분 만에 여러 프로그래밍 언어에 걸쳐 수천 줄의 코드를 재작성할 수 있습니다. 기업들은 C/C++에서 Rust로, TypeScript에서 Go로, Python에서 Rust로, 그리고 그 이상의 AI 보조 마이그레이션 (AI-assisted migrations)에 막대한 투자를 하고 있습니다.
하지만 큰 문제가 있습니다.
포팅 (Port)을 생성하는 것은 쉽습니다.
재작성된 소프트웨어가 원래 소프트웨어와 정확히 동일하게 동작함을 증명하는 것은 어렵습니다.
그것이 바로 Port Mortem 2026이 지향하는 바입니다.
Hackathon Raptors가 주관하는 Port Mortem은 **72시간 동안 진행되는 온라인 국제 해커톤 (online international hackathon)**입니다. 참가자들은 단순히 AI가 생성한 코드를 사용하는 것이 아니라, 테스트 (testing), 벤치마킹 (benchmarking), 문서화 (documentation), 그리고 엔지니어링 규율 (engineering discipline)을 통해 동작적 동등성 (behavioral equivalence)을 입증하면서 실제 오픈 소스 프로젝트를 다른 프로그래밍 언어로 포팅해야 합니다.
왜 Port Mortem인가?
현대의 AI 코딩 어시스턴트 (AI coding assistants)는 작동하는 코드를 믿을 수 없을 정도로 빠르게 생성할 수 있습니다.
하지만 프로덕션 소프트웨어 (production software)는 단순히 컴파일 (compile) 여부로 판단되지 않습니다.
다음과 같은 질문들에 의해 판단됩니다:
- 모든 기능이 여전히 올바르게 동작하는가?
- 기존의 테스트 스위트 (test suite)가 여전히 통과하는가?
- 동시성 의미론 (concurrency semantics)이 보존되었는가?
- 성능 특성 (performance characteristics)이 유지되거나 향상되었는가?
- 구현이 대상 언어의 관용적 표현 (idiomatic)을 따르는가?
- 다른 엔지니어가 자신 있게 유지보수할 수 있는가?
Port Mortem은 이러한 질문들을 중심으로 설계되었습니다.
이 해커톤은 누가 가장 많은 코드를 생성하는지에 보상하는 대신, 자신의 마이그레이션 (migration)이 정확함을 증명할 수 있는 팀에게 보상합니다.
해커톤 정보
- 🌍 글로벌 온라인 해커톤 (Global Online Hackathon)
- ⏳ 72시간
- 💰 $1,800 상금 풀 (Prize Pool)
- 👥 개인 또는 최대 4인 팀
- 🎓 전 세계 학생, 전문가, 연구원 및 개발자 참여 가능
- 💸 참가비 전액 무료
당신이 시스템 프로그래머(systems programmer), 백엔드 엔지니어(backend engineer), 오픈 소스 기여자(open-source contributor), Rust 애호가, Go 개발자, 혹은 단순히 AI 지원 소프트웨어 공학(AI-assisted software engineering)에 관심이 있는 사람이라 할지라도, Port Mortem은 독특한 엔지니어링 과제를 제공합니다.
무엇을 만드는가
모든 참가 팀은 다음을 수행하게 됩니다:
- 실제 오픈 소스 저장소(repository)를 선택합니다.
- 이를 다른 프로그래밍 언어로 재작성(rewrite)합니다.
- 기존의 기능(functionality)을 보존합니다.
- 가능한 경우 기존 테스트 스위트(test suite)를 사용하여 정확성(correctness)을 검증합니다.
- 새로운 구현체(implementation)를 벤치마크(benchmark)합니다.
- 아키텍처 결정 사항(architectural decisions)과 구현 상의 트레이드오프(trade-offs)를 문서화합니다.
- 완료된 마이그레이션(migration) 결과물을 평가를 위해 제출합니다.
많은 해커톤(hackathons)과 달리, 성공 여부는 화려한 데모(demos)로 결정되지 않습니다.
핵심은 **엔지니어링 품질(engineering quality), 정확성(correctness), 재현성(reproducibility), 그리고 유지보수성(maintainability)**에 있습니다.
마이그레이션 트랙 (Migration Tracks)
참가자는 8가지 마이그레이션 트랙 중 하나를 선택할 수 있습니다:
트랙 A
C → Rust
트랙 B
Zig → Rust
트랙 C
TypeScript → Go
트랙 D
Python → Rust
트랙 E
Go → Rust
트랙 F
JavaScript → Go 또는 Rust
트랙 G
C → Zig
트랙 H
오픈 페어 (Open Pair) (모든 언어 → 모든 언어)
이를 통해 참가자들은 실제 엔지니어링 문제를 해결하면서도 자신이 가장 즐기는 언어 생태계(language ecosystem)에서 작업할 수 있는 유연성을 가집니다.
제출 요구 사항
각 팀은 다음을 제출해야 합니다:
- 공개 GitHub 저장소 (Public GitHub Repository)
- 완전하게 작동하는 구현체 (Complete Working Implementation)
- 빌드 지침 (Build Instructions)
- 벤치마크 보고서 (Benchmark Report)
- 아키텍처 선택 사항을 기록한
DECISIONS.md - 차등 테스트(Differential Testing) / 퍼징(Fuzzing) 결과물 (해당하는 경우)
- 데모 영상 (Demo Video)
프로젝트는 문서화된 단일 명령어로 빌드되어야 하며, 심사 기간 동안 공개적으로 접근 가능해야 합니다.
심사 기준
프로젝트는 가중치 점수 시스템(weighted scoring system)을 사용하여 평가됩니다.
기능성 및 신뢰성 (Functionality & Reliability) (40%)
- 빌드 성공 여부
- 정확한 실행
- 테스트 스위트 호환성
동작적 동등성 (Behavioral Equivalence) (30%)
- 마이그레이션 정확도
- 차등 테스트 (Differential testing)
- 벤치마킹 (Benchmarking)
- 성능 분석 (Performance analysis)
코드 품질 (Code Quality) (20%)
- 관용적인 구현 (Idiomatic implementation)
- 유지보수성 (Maintainability)
- 문서화 (Documentation)
- 엔지니어링 관행 (Engineering practices)
혁신 (Innovation) (10%)
- 창의적인 개선 (Creative improvements)
- 더 나은 아키텍처 (Better architecture)
- 가치 있는 기능 강화 (Valuable enhancements)
보너스 점수 (Bonus Points)
팀은 다음 항목을 통해 추가 점수를 획득할 수 있습니다:
- 차분 퍼징 (Differential fuzzing)
- 원본 프로젝트에서의 버그 발견 (Discovering bugs in the original project)
- 탁월한 엔지니어링 문서화 (Exceptional engineering documentation)
- 최소한의 unsafe 코드 사용 (Minimal unsafe code)
AI 도구 사용 가능 (AI Tools Are Allowed)
Port Mortem은 현대적인 개발 워크플로우를 수용합니다.
참가자는 다음 도구들을 자유롭게 사용할 수 있습니다:
- GitHub Copilot
- Cursor
- Claude Code
- Aider
- Continue
- 로컬 LLM (Local LLMs)
- 기타 AI 코딩 어시스턴트 (Other AI coding assistants)
하지만, AI가 생성한 코드만으로는 승리할 수 없습니다.
팀은 아키텍처 결정 사항을 정당화하고, 정확성을 검증하며, 엔지니어링의 엄격함 (Engineering rigor)을 입증해야 합니다.
규칙 (Rules)
몇 가지 중요한 규칙은 다음과 같습니다:
- 팀 규모: 1–4명
- 모든 개발은 공식 72시간 이벤트 기간 중에 이루어져야 합니다.
- AI 코딩 어시스턴트 사용이 허용됩니다.
- 공개 GitHub 저장소 (Public GitHub repository)가 필요합니다.
- 프로젝트는 문서화된 하나의 명령어로 빌드되어야 합니다.
- 소스 언어 런타임 래퍼 (Runtime wrappers) 또는 프록시 구현 (Proxy implementations)은 허용되지 않습니다.
- 팀은 가능한 한 원본 테스트 스위트 (Test suite)를 보존해야 합니다.
- 오픈 소스 라이선스 (Open-source licenses)를 준수해야 합니다.
- 표절 또는 기존에 존재하는 포트 (Pre-existing ports)는 실격 사유가 될 수 있습니다.
주요 일정 (Important Dates)
| 이벤트 | 날짜 |
|---|---|
| 등록 시작 | 2026년 6월 29일 |
| ... |
상금 (Prizes)
🏆 총 상금 규모: $1,800 USD
🥇 대상 (Grand Prize)
$800
🥈 준우승 (Runner-Up)
$400
🥉 3위 (Third Place)
$200
🐞 버그 캐처 상 (Bug Catcher Award)
$100
차분 테스트 (Differential testing)를 통해 원본 저장소에서 가장 영향력 있는 버그를 발견하고 문서화한 팀에게 수여됩니다.
❤️ 커뮤니티 초이스 상 (Community Choice Award)
$300
커뮤니티 투표를 통해 선정됩니다.
이벤트를 성공적으로 완료한 모든 참가자에게는 **참가 인증서 (Participation Certificate)**가 수여됩니다.
누가 참여해야 하나요? (Who Should Join?)
Port Mortem은 다음과 같은 분들에게 이상적입니다:
- 시스템 프로그래머 (Systems Programmers)
- Rust 개발자 (Rust Developers)
- Go 개발자 (Go Developers)
- 백엔드 엔지니어 (Backend Engineers)
- 컴파일러 애호가 (Compiler Enthusiasts)
- 오픈 소스 기여자 (Open Source Contributors)
- 성능 엔지니어 (Performance Engineers)
- 보안 연구원 (Security Researchers)
- AI 엔지니어 (AI Engineers)
- 실제 소프트웨어 엔지니어링 문제를 다루고자 하는 학생들
만약 여러분이 진지한 소프트웨어 마이그레이션 (Software Migration) 프로젝트에 기여하고 싶었거나, 엔지니어링 품질을 유지하면서 AI가 대규모 코드 변환 (Code Transformation)을 어떻게 도울 수 있는지 탐구하고 싶었다면, 이 해커톤은 바로 여러분을 위한 것입니다.
커뮤니티 참여하기 (Join the Community)
모든 공지사항, 리포지토리 (Repository) 릴리스, 규칙 설명, FAQ, 제출 가이드라인 및 실시간 지원은 오직 Hackathon Raptors Discord를 통해 공유됩니다.
👉 웹사이트: https://coderesurrection.com/2026
👉 Hackathon Raptors: https://raptors.dev
👉 Discord: https://discord.gg/XPfcH7VT2H
마치며 (Final Thoughts)
Port Mortem은 단순히
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기