Codeberg의 새로운 약관에 대한 짧은 논평, 그리고 어떤 프로젝트를 받아들일지 자유 소프트웨어 호스트가 결정하기 시작하는 일이 금지 자체보다 더 우려스러운 이유.
Codeberg의 새로운 약관에 대한 짧은 논평, 그리고 어떤 프로젝트를 받아들일지 자유 소프트웨어 호스트가 결정하기 시작하는 일이 금지 자체보다 더 우려스러운 이유.
내가 _GitHub_를 떠난 주된 이유는 어떤 단일 기능이나 단일 장애 때문이 아니라, Microsoft 소유 아래에서 플랫폼이 겪은 “enshittification” 때문이었다. 웹 인터페이스는 굼뜬 JavaScript 더미로 다시 작성되었고, 예전에는 그냥 잘 되던 것들을 망가뜨리거나, 아니면 너무 끔찍하게 느리게 만들어서 쓰는 것 자체가 _PITA_가 되었다. 기술적 퇴보를 넘어 _GitHub_는 사실상 _“공공 인프라”_가 되었는데, 이는 _WhatsApp_이 그러한 것과 매우 비슷하다. 전 세계 소프트웨어의 매우 큰 비중에 해당하는 소스 코드를 호스팅하고, 그를 통해 _Microsoft_에 모두의 프로젝트, 더 나아가 모두의 디지털 삶 전반에 대해 어느 한 회사도 가져서는 안 될 정도의 영향력과 감시 능력을 쥐여 주고 있다. 여기에 더해, _Microsoft_의 자의적인 금지로 정당한 개발자들이 계정을 잃었다는 이야기들은 적어도 어딘가 다른 곳에 백업을 두는 것이 좋은 생각이라는 느낌을 더욱 강화했다.
_Codeberg_는 그럴듯한 대안처럼 보였다. 자유 및 오픈소스 프로젝트에 평판 있는 보금자리를 제공했고, 더 중요하게는 똑같이 자유로운 보금자리였으며, 지구상에서 가장 큰 소프트웨어 공급업체의 자회사가 아니라 비영리 협회에 의해 운영되었다. 안타깝게도 최근 서비스 약관 업데이트는 내가 그곳으로 옮긴 이유 중 한 부분, 즉 _“자유”_라는 부분을 바꾸기 시작하는 첫 단계처럼 보인다.
지금까지 내가 공개한 모든 프로젝트는 _“인공지능”_이 아니라 100% 인간의 어리석음으로 만들어졌고, 더 정확히 말하면 _LLM_이 아니라는 뜻이다. 나는 _Codeberg_가 주로 LLM 주도인 프로젝트를 금지하는 것에 대해 특별히 강한 감정을 갖고 있지는 않다. 적어도 정당한 암호화폐 프로젝트를 동시에 금지한 것에 대해 느끼는 감정보다 강하지는 않은데, 그 금지는 대부분의 사람들이 _LLM_이 그 자리를 차지하기 전 수년 동안 암호화폐가 오늘의 악역이었다는 기억 때문에 아무 이유 없이 한데 묶여 들어간 것처럼 읽힌다. 두 조항은 며칠 간격으로 도입되었고, LLM 금지는 6월 29일, 암호화폐 금지는 7월 2일이었으며, 둘 다 Assembly 2026 제안으로 등장했다. 그리고 이제 약관은 후자를 하필이면 “Codeberg의 평판을 해치는 콘텐츠” 아래에 분류하고 있는데, 이는 _“우리에겐 이것을 전면 금지할 탄탄한 이유도, 실제로 충분한 나쁜 선례의 숫자도 없다”_를 법률 문구로 포장한 것처럼 들린다.
하지만 공지 블로그 글은 매우 형편없게 읽히며, _“The development team of none”_라는 제목의 섹션이 그중에서도 최악이다. 거기에는 이렇게 적혀 있다:
코드 작업에 LLM을 사용하면 아드레날린이 솟구친다. 마치 큰 팀이 있는 것처럼 빠른 속도로 개발하고 무언가를 만들 수 있다. 하지만 실제로는 없다. 사실 당신은 (대개) 혼자이며, 에너지를 코드로 바꾸는 통계 기계와 함께 일하고 있을 뿐이다.
그리고 조금 더 아래에는 이렇게도 적혀 있다:
많은 ‘vibe coder’들은 자신들 주변에 실제로 커뮤니티가 없다는 사실을 깨닫지 못하는 것처럼 보인다.
이건 대부분의 자유 소프트웨어가 어떻게 만들어지는지에 대한 감각이 없다. FOSS 개발자의 대다수는 1인 개발자이고, 그들 주변의 유일한 _cOmMuNiTy_라는 것은 기능을 요청하거나 버그를 보고하는 사용자들뿐이며, 대부분의 경우 그들은 어떤 형태로도 기여하지 않는다. 나는 이 웹사이트보다도, 심지어 GitHub 자체보다도 오래전부터 수십 년 동안 작고 우스운 도구들을 공개해 왔다 (_SourceForge_가 _the hot sh.t_였던 때를 기억하는가?). 그런데 그 어떤 프로젝트에도 실제 _“커뮤니티”_가 붙어 있었던 적은 없었고, 적어도 _Codeberg_가 그 글에서 그려내는 낭만화된 의미에서는 더욱 그렇다. 나는 모든 것을 손으로 코딩하는 _lone wolf_이고, 정확히 그 일을 하는 데 터무니없이 많은 시간을 쓴다. 그리고 진짜 커뮤니티가 있는 진짜 프로젝트와 가짜 프로젝트를 가르는 것이 _LLM_이라는 생각은, 어떤 포지에서든 평균적인 유용한 작은 도구가 애초에 어떻게 생겨나는지 들여다보는 순간 성립하지 않는다.
솔직히 말해 _Codeberg_가 이런 주장을 하는 것은 좀 재수 없어 보인다. 플랫폼은 사실상 Forgejo 거품 속에서 살아가고 있고, _Forgejo_는 _Gitea_가 존재하기 훨씬 전부터 거의 6년 동안 구축해 온 활발한 기여자 커뮤니티를 _Gitea_로부터 반란을 일으켜 상속받았다. 다른 누군가의 커뮤니티를 하드포크해서 자기 커뮤니티를 얻은 프로젝트가 돌아서서 솔로 개발자들에게 커뮤니티가 없다고 훈계하는 것은, 정색하고 주장하기 어려운 위치다.
게다가 _Codeberg_는 _“커뮤니티가 있는 것”_과 _“호스팅할 가치가 있는 정당한 소프트웨어인 것”_을 혼동한다. 하지만 개인 프로젝트의 기준은 언제나 동작하는 빌드, 이상적으로는 라이선스, 그리고 어쩌면 README 정도였지, 기여자로 가득한 채널이 아니었다. 작고 단일 저자 도구 생태계가 존재할 가치가 있는 이유의 상당 부분은 바로 그것이 존재를 정당화하기 위해 커뮤니티를 필요로 하지 않는다는 점이며, 개인들의 코드를 호스팅하는 것이 핵심 가치인 포지가 그 반대를 주장하는 것은 이상하다.
나를 거슬리게 하는 부분은 LLM 프로젝트에 대한 구체적인 금지나 암호화폐 프로젝트에 대한 구체적인 금지 자체가 아니다. 문제는 _“자유 소프트웨어”_를 중심으로 세워진 허브가 이제 사용자들에게 어떤 종류의 소프트웨어가 좋고 어떤 것은 그렇지 않은지 말하고 있다는 점이며, 이것은 보기보다 검열에 가깝다. 플랫폼이 서비스 약관에 어떤 전체 범주가 _“자신들의 평판을 해친다”_고 써 넣고 그 근거로 삭제할 수 있게 되는 순간, 판단 기준은 코드가 합법적인지, 기능하는지, 유용한지가 아니라 그것이 플랫폼이 취한 입장과 일치하는지가 된다. 나는 이런 종류의 일괄 금지에 걸리는 프로젝트들 중 상당수가 _vibe-coded slop_이나 sh.tcoin 구현물이 아니라 정당한 소프트웨어라고 본다.
내가 떠올릴 수 있는 모든 플랫폼은 이런 접근을 취하는 순간 사용자들에게 어떤 이념이든 강요하기 시작하면서 분열적이 되었다. 그 이념이 무엇이었든, 또 당시에는 얼마나 정당해 보였든 마찬가지다. 메커니즘은 언제나 똑같다. 실제 문제가 나타나고, 인기 없는 범주가 명백한 범인처럼 보이며, 플랫폼은 문제를 해결하는 대신 그 범주를 금지하고, 그 금지는 다음 범주와 그다음 범주를 위한 선례가 된다. 오늘 금지해도 논란이 적은 범주가, 내일 그 메커니즘이 존재하는 이유가 되며, 첫 번째 금지를 박수친 사용자들은 대개 두 번째 금지에 대해서는 의견을 묻지 못한다.
두 범주 모두 문제가 없지 않다는 점은 인정한다. LLM 주도 저장소는 실제로 인프라에 부담을 주고, 관리 불가능한 양의 저품질 이슈와 풀 리퀘스트를 만들어 내며, 저작권과 코드 출처에 대한 진짜 문제를 안고 있고, _Codeberg_도 글에서 이 모든 점을 언급한다. 반대로 암호화폐 분야는 아마 소프트웨어의 거의 어떤 다른 구석보다도 노골적인 사기를 더 많이 만들어 냈을 수 있다. 하지만 그날의 악역을 범주째로 금지하는 것은 그 어떤 것에 대한 해결책도 아니다.
이제는 Linus Torvalds 같은 사람도 _LLM_은 그저 도구일 뿐이며, _“분명히 유용한 도구”_라는 꽤 합리적인 주장을 한다. 조심스럽게 사용하고 그 출력물을 다른 모든 것과 같은 기준으로 평가한다면, Linux 커널 개발 안에서도 정당한 자리가 있다는 것이다. 지구상에서 가장 크고 가장 중대한 오픈소스 프로젝트의 관리자가 _LLM_을 보자마자 금지할 범주가 아니라 결과물로 판단할 도구로 다룰 수 있다면, _뒷마당 코드 포지_도 같은 정도는 할 수 있다.
나 역시 앞으로 _LLM_이 기술과 사회 전반에 미칠 영향이 걱정되며, 아마 Codeberg 정책을 쓴 사람만큼이나 걱정하고 있을 것이다. 나는 다만 콘텐츠를 금지하는 것, 그리고 이번 조치가 정확히 그것에 해당한다고 보는데, 그것이 앞으로 나아갈 길이라고 믿지 않을 뿐이다.
내가 바랐던 것은 _Codeberg_가 실제 문제를 다루는 해결책을 택하는 것이었다. 그들이 같은 글에서 스스로 말하듯, 문제는 자원 소비와 그에 따르는 인프라 비용인데, 이것을 실제 자원 문제로 다루는 방식 말이다. 서비스 약관 변경을 통해 작성자가 저장소에 LLM 생성 코드가 포함되어 있는지, 혹은 암호화폐 관련인지 선언하는 체크박스를 두도록 할 수도 있었을 것이다. 그리고 그런 저장소들은 다른 모든 사람과 같은 자원을 받지 않는 별도의 인프라 티어로 분리할 수 있었을 것이다. 특정 할당량이 적용되고, 작성자가 소비한 만큼 비용을 내야 할 수도 있는 티어 말이다. 사실을 정직하게 선언하는 데는 (적어도 처음에는) 아무 비용도 들지 않게 하고, 선언하지 않았다가 적발되면, 바로 _Codeberg_가 지금 범주 전체에 처음부터 적용하는 것과 똑같은 영구적이고 즉각적인 금지를 부과할 수 있었을 것이다.
비슷하게, LLM 또는 Crypto 라벨이 붙은 프로젝트에는 _Codeberg_가 이 특정 저장소의 품질이나 정확성에 대해 어떤 책임도 지지 않는다는 자동 표시 경고문을 붙일 수도 있었을 것이다. 아예 한술 더 떠서 그 경고문에 _Codeberg does not approve of the use of LLMs or Cryptocurrencies_라고 노골적으로 적어 둘 수도 있었을 것이다. 사람들이 그것을 확실히, 정말 확실히, 아주아주 확실히 이해하게 하고, _Codeberg_에 _“평판 위험”_이 없도록 하기 위해서 말이다.
이런 접근은 자원을 많이 먹는 프로젝트의 비용을 그것을 만드는 사람들에게 돌리고, 플랫폼이 존재하는 이유였던 프로젝트들을 위해 공유 자원을 남겨 둔다. 그리고 그 모든 것을, 애초에 _Codeberg_가 어떤 소프트웨어 범주가 이념적으로 허용 가능한지 결정하지 않고도 할 수 있다. _“우리가 동의하지 않는 것은 전부 선제적으로 금지한다”_는 접근은 보내기에 잘못된 신호이며, 매우 미끄러운 경사로다.
금지된 두 범주 중 어느 것에도 해당하는 프로젝트를 하나도 갖고 있지 않음에도, 나는 이제 내 own public Git host를 구축하는 것을 알아볼 생각이고, 그곳으로 옮긴 지 몇 달 되지도 않아 _Codeberg_를 떠날 것이다. 금지 자체 때문이 아니라, 변화가 검토 중이라는 사실조차 제대로 알리지 않고, 사용자들이 의견을 낼 방법도 주지 않은 채 변덕스럽게 서비스 약관을 다시 쓰는 플랫폼에 의존하고 싶지 않기 때문이다.
이 결정들은 분명 Codeberg 자체의 _Assembly 2026_을 거쳤고, 이는 대부분의 플랫폼이 신경 쓰는 것보다 더 많은 절차이기는 하다. 그럼에도 평범한 사용자로서 나는 아마 대부분의 다른 사람들과 마찬가지로, 일이 이미 결정된 그날 사이트 상단의 짙은 파란 배너를 통해 그 사실을 알게 되었다. ToS 변경에 대한 안내 자체는 고맙지만, 플랫폼이 이 길로 갈지 아직 결정하던 시점에 배너를 받았더라면 좋았을 것이고, 토론 스레드나 적어도 설문조사 링크라도 있었더라면 좋았을 것이다. 그랬다면 결국 금지된 어떤 단일 범주가 아니라, 플랫폼 전체의 자유에 대한 내가 가진 우려를 표현할 수 있었을 테니까.