What I learned during the license switch

Salvatore Sanfilippo

라이선스 전환 기간에 배운 것들

원문은 Salvatore Sanfilippo님이 에 게재했습니다. 이 블로그 구독하기

어제는 정말 강렬한 하루였다. 이탈리아에서는 5월 1일이 노동절이라 오전에는 친구들과 함께 에트나에서 4시간 정도 걸었다 <3, 나는 걷는 걸 좋아해서 코딩하다가도 자주 멈춰 걷고는 한다. 그렇게 다리에 몇 킬로미터를 더하고 나서 키보드로 돌아오곤 하는데, 에트나에서 걷는 건 정말 멋지다(에트나는 유럽에서 가장 큰 활화산이고, 나는 마침 그 산기슭에 있는 카타니아에 산다).

그리고 오후 6시에는 집에 돌아와 AGPL 라이선스 전환에 대한 블로그 글을 올렸고, 댓글과 피드백, 개인 메시지들을 쭉 따라가면서 그 과정에서 몇 가지를 배우게 됐다.

1. 몇몇 조항의 차이는 분명히 존재하고, 내 생각에는 그 차이가 의미 있다고 본다. 그걸 떠나서 AGPL과 SSPL의 가장 큰 차이는 AGPL이 ‘이해되고 있다’는 점이다. 일반적으로 어제 처음으로 깨달은 건데, 라이선스에서는 무엇을 할 수 있고 없는지만이 중요한 게 아니라, 그 라이선스가 얼마나 이해되고, 검증되고, 채택되었는가 하는 정도가 중요하다는 것이다.

2. 이 문제에 대한 사이먼 윌리슨의 글(https://simonwillison.net/2025/May/1/redis-is-open-source-again/)에 깊이 공감했다. 세계 각기 다른 곳에 살면서도 나이와 소프트웨어 쪽 배경이 비슷한 사람들이 이렇게나 비슷하게 느낀다는 게 참 특별하게 다가왔기 때문이다. 나 역시 Vector Sets를 만들면서 이렇게 생각했다. AGPL(혹은 내가 이해하는 다른 오픈소스 라이선스)로 공개되지 않는다면 나는 절대 이걸 쓰지 않을 거라고. 이런 감정이 커뮤니티의 적지 않은 비율로 확산될 때, 오늘날처럼 복잡한 소프트웨어 환경에서도 결국 오픈소스가 승리하게 된다.

3. 사람들은 여전히 소프트웨어 배포판을 굉장히 중요하게 생각한다. 내가 전혀 신경 쓰지 않았다는 건 아니지만, 과거에 나는 그쪽에서 꽤 데인 적이 있다. 나는 아주 초창기 리눅스 사용자였고, SlackWare 3.1 정도부터 썼던 것 같다. 세월이 흐르면서 디바이스 드라이버를 만들고 커널에 패치도 몇 개 기여했으며, 한때 데비안에는 내가 만든 것들이 한 10개 정도 패키지로 올라가 있었다. hping부터 Visitors 웹 로그 분석기, dump1090, Redis 등 몇 가지가 더 있었다. 하지만 결국 파편화와, 특정 프로세스의 경직성(리눅스 커널 모듈의 바이너리 호환성 같은), 일관된 설계의 부재, 모든 라이브러리를 담은 바이너리 배포 포맷의 부재 등을 보게 됐다. 그래서 데스크톱은 MacOS로 옮겼고 서버에서는 리눅스를 계속 쓰되 아주 실용적으로 쓰게 됐다. 배포판이 제공하는 것에 의존하기보다 “tar xvzf software.tgz; make” 하는 쪽이 더 편할 때가 많았다. 어쩌면 종속성 없이 소프트웨어를 배포하려는 내 집착도 그와 관련이 있을지 모른다. 하지만 사람들은 여전히 배포판을 매우 중요하게 여기고, 모든 것을 최대한 자동화하고 재현 가능하게 만들고 싶은 상황에서는 Redis가 배포판 패키지로 제공되는 것이 아마 중요할 것이다. 실제로 지금 많은 사람들이 Redis가 다시 배포판에 들어갈지 묻고 있다.

이에 대한 내 생각은 단순하다. Redis와 ValKey는 이미 상당히 달라졌고, 앞으로는 훨씬 더 달라질 것이다. 배포판에는 둘 다 있어야 한다고 생각한다. 그래야 사용자가 선택할 수 있고, 때로는 기능 차이 때문에 그 선택이 강제되기도 한다. 자명한 예를 들면 벡터 유사도 검색이 필요하다면 Redis를 써야 하고, 반대로 회사에 AGPL 사용 금지 정책이 있다면 ValKey를 써야 하는 식이다.

4. 사람들은 내게 친절하다. 여기저기 댓글에는 날카로운 의견도 몇 개 있었는데, 그건 정상이고 오히려 건강한 일이다(결국 그것이 많은 기업이 SSPL이나 다른 라이선스가 아니라 OSI가 승인한 라이선스를 써야 한다고 점점 더 믿게 되는 이유 중 하나이기도 하다). 하지만 나 개인에게 말을 건네는 경우를 보면 좋은 말들을 많이 본다. 그 모든 분들께 그냥 감사하다고 말하고 싶다.

5. 우리는 어느 정도 버블 속에 살고 있다. 어느 포럼에서 누군가 “그런데 너 Redis에서 포크 중 하나로 갈아탄 적 있어?”라고 묻자 “없어”, “쓸 수만 있으면 됐지” 같은 댓글들이 이어졌다. ValKey도 마찬가지다. 사람들이 apt-get install redis를 입력했을 때 ValKey가 대신 설치되고 SET, GET, DEL 같은 몇 가지 명령어만 쓴다면 사실 신경 쓰지 않는다. 내가 말하고 싶은 건 소프트웨어가 더 이상 1998년(오픈소스와 인터넷, 그리고 나 자신에게 매우 중요하고 상징적인 해를 꼽자면)처럼 우리 모두가 오픈소스 라이선스 전문가였던 시절의 그것이 아니라는 것이다. 대부분의 사람들, 특히 더 젊은 세대는 훨씬 더 실용적인 관점을 갖고 있다. 그래서 이 모든 논의는 매우 중요하고(나에게는 필수적이지만), 모든 사람이 같은 감수성을 가진 건 아니라는 걸 이해해야 한다. 결국 가장 중요한 건 좋은 소프트웨어를 만들려고 노력하는 것이다.

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.

댓글