코드를 테스트 스위트만으로 재구현할 수 있게 된 시대에, GPL 같은 카피레프트 라이선스와 저작권·상표의 의미가 어떻게 달라지는지, 그리고 AI가 촉발한 재구현이 소프트웨어의 미래에 던지는 질문을 다룬다.
Armin Ronacher의 생각과 글
2026년 3월 05일에 작성
코드를 작성하는 비용이 점점 더 싸지면서, 재구현도 그 범주에 들어가게 됐습니다. 최근에 AI로 제 라이브러리 중 하나를 다른 언어로 포팅하게 했다고 언급한 적이 있는데, 결과적으로 그 구현은 다른 설계를 선택했습니다. 많은 면에서 기능은 같았지만, 거기에 도달하는 경로는 달랐습니다. 그 포트는 테스트 스위트를 경유하는 방식으로 동작했습니다.
이와 관련은 있지만 다른 일로, chardet에서 이런 일이 벌어졌습니다. 현재 메인테이너가 API와 테스트 스위트만을 가리키게 해서 처음부터 다시 구현해 버린 것입니다. 동기는 LGPL에서 MIT로 재라이선싱을 가능하게 하는 것. 저는 개인적으로 이 문제에서 이해관계가 있습니다. 저 역시 chardet가 비(非)GPL 라이선스 아래 있기를 여러 해 동안 바라왔기 때문입니다. 그러니 이 점에서는 제가 매우 편향된 사람이라고 봐도 좋습니다.
예상대로, 그 새 구현은 소동을 일으켰습니다. 특히 라이브러리의 원 저자인 Mark Pilgrim은 새 구현에 이의를 제기하며 파생 저작물이라고 봅니다. 지난 12년 동안 이를 유지보수해 온 새 메인테이너는 이를 새로운 저작물로 보고, 그의 코딩 에이전트에게 정확히 그렇게 하라고 지시합니다. 작성자에 따르면 JPlag로 검증했을 때 새 구현은 별개의 것으로 나타났습니다. 실제로 작동 방식을 생각해 보면 그리 놀라운 일도 아닙니다. 원래 구현보다 훨씬 빠르고, 멀티코어를 지원하며, 근본적으로 다른 설계를 사용합니다.
제가 이 질문에서 더 흥미롭다고 생각하는 것은 우리가 지금 어디에 와 있는지에 따른 결과입니다. GPL 같은 카피레프트 코드는 이를 집행하기 위해 저작권과 마찰 비용에 크게 의존합니다. 하지만 근본적으로 공개되어 있기 때문에, 테스트가 있든 없든, 요즘엔 아주 쉽게 다시 써버릴 수 있습니다. 저도 다른 몇몇 GPL 라이브러리에 대해 이런 일을 한동안 하려고 했습니다. 특히 readline은 GPL 라이선스 때문에 비슷한 이유로 얼마 전부터 재구현을 시작했었습니다. 여기에는 명백한 도덕적 질문이 있지만, 꼭 그것이 제가 관심 있는 지점은 아닙니다. MIT 소프트웨어로 다시 나타날 수 있는 GPL 소프트웨어가 있는 만큼, 독점적 abandonware도 그럴 수 있습니다.
개인적으로 더 흥미로운 점은, 우리가 이러한 창작물을 아예 저작권으로 보호하지 못할 수도 있다는 것입니다. 법원이 AI 생성 코드 전부를 퍼블릭 도메인으로 판단할 수도 있습니다. 인간의 기여가 충분하지 않았다는 이유에서 말이죠. 충분히 가능한 일이며, 다만 그럴 가능성이 아주 높지는 않겠지만요.
하지만 이 모든 것은 우리가 반드시 준비되어 있지는 않은 흥미로운 새 전개들을 낳습니다. 예컨대 Vercel은 Clankers로 bash를 기쁘게 재구현해 놓고, 누군가가 같은 방식으로 Next.js를 재구현하자 눈에 띄게 화를 냈습니다.
이는 엄청난 결과를 가져옵니다. 코드 생성 비용이 그렇게까지 내려가고, 테스트 스위트만으로 재구현할 수 있다면, 소프트웨어의 미래에는 무엇을 의미할까요? 더 관대한(permissive) 라이선스 아래로 다시 나타나는 소프트웨어를 많이 보게 될까요? 독점 소프트웨어가 오픈 소스로 다시 나타나는 경우를 많이 보게 될까요? 아니면 소프트웨어가 독점으로 다시 나타나는 경우를 많이 보게 될까요?
새로운 세계이고, 이를 어떻게 항해해야 할지 우리는 거의 알지 못합니다. 그 사이 저작권을 둘러싼 다툼이 몇 번 벌어지겠지만, 관련된 모두가 선례를 세우는 것을 실제로는 다소 두려워할 것이기 때문에 법정까지 가는 경우는 매우 적을 것이라는 느낌이 듭니다.
다만 GPL의 경우, 오랜만에 카피레프트 대 관대한 라이선스라는 오래된 싸움이 다시 달아오르는 것 같습니다. Clanker로 자신의 작업이 다시 쓰이고, 자신의 저자성이 지워지는 것은 썩 기분 좋은 일이 아닐 겁니다. 하지만 테세우스의 배와는 달리, 이것은 더 명확해 보입니다. 모든 코드를 버리고 처음부터 다시 시작한다면, 최종 결과가 같은 방식으로 동작하더라도 그것은 새 배입니다. 이름만 계속 달고 있을 뿐이죠. 이는 저자들이 라이선스와 계약법에 기대기보다 상표를 붙잡아야 한다는 또 다른 논거가 될 수도 있습니다.
개인적으로 저는 이 모든 것이 흥미진진하다고 생각합니다. 저는 가능한 한 적은 라이선스 집행으로, 가능한 한 열린 형태로 물건을 공개하는 것을 강하게 지지합니다. 저는 우리가 공유할 때 사회가 더 나아진다고 생각하며, GPL은 그걸로 할 수 있는 일을 제한함으로써 그 정신에 반한다고 봅니다. 이 전개는 제 세계관에 들어맞습니다. 다만 모든 사람이 그 관점을 공유하는 것은 아니라는 점도 이해하고 있고, 그 결과로 slopforks의 등장을 둘러싼 더 많은 싸움을 예상합니다. 결국 이것은 라이선싱과 AI라는, 매우 뜨거운 두 주제를 최악의 방식으로 결합해 버리니까요.
이 글에는 ai, licensing, python 태그가 달려 있습니다.
다음 형식으로 복사 / 보기 markdown
© Copyright 2026 by Armin Ronacher.
콘텐츠는 Creative Commons Attribution-NonCommercial 4.0 International License에 따라 라이선스됩니다.
mail, bluesky, x, 또는 github로 연락하세요.
github에서 저를 후원할 수 있습니다.
추가 정보: imprint&AI transparency. atom / RSS로 구독하세요.
색상 테마: 자동 , 라이트 , 다크 .