오픈소스를 금지당한 사람들의 몸부림
2019년 08월 2일 현재 변경사항입니다.
github-do-not-ban-us 저장소는 GitHub의 제한이 어느정도 해제되어 아카이브 되었습니다. GitHub의 조치에 동의한다는 것은 아니라고 합니다. 총 1291번의 Pull Request(기여)가 있었습니다. 이 이슈와 글에 관심을 가져주신분들께 감사드립니다.
2019년 07월 26일, Nuxt.js의 트위터에 올라온 한 트윗을 보고 믿을수 없었습니다. GitHub의 Nuxt.js프로젝트에서 가장 열정적으로 기여하는 pi0가 비공개 저장소에 접근할 수 없다는 내용이었습니다.
Pooya Parsa는 Vue.js와 Nuxt.js를 사용하는 사람이라면 모르기 힘든 개발자일 것입니다. (이 이하로 pi0라고 지칭합니다.) 이란의 Vue.js 커뮤니티 파트너이며 주로 Nuxt.js 관련 프로젝트에 많은 기여를 하고 있었습니다. Nuxt.js를 만든 Sébastien Chopin(Atinux)보다 최근에는 더 왕성한 활동을 하고 있습니다.
GitHub의 이러한 이란 개발자의 계정에 대한 제한은 미국과 이란의 관계에 있습니다. 미국과 이란은 오래전부터 나쁜 관계였는데 가장 유명한 표현으로 조지 W 부시의 “악의 축”이 있습니다.
트럼프정부에서 무역 제재가 더욱 심화되고 있는데, 이는 미국 소재의 글로벌 기업에도 영향을 주고 있습니다. GitHub의 CEO인 Nat Friedman은 이러한 제재에 2019년 7월 28일, 아래와 같은 입장을 표명했습니다.
원해서 하는 것이 아니라, 해야만 하는 상황이다. 그리고 GitHub는 소프웨어 개발자와 글로벌 오픈소스 커뮤니티 보호 정책에 대해 전 세계의 정부와 함께 적극적으로 지지할 것이다.
위 같이 말했지만 어쩔수 없이 해야했던 제재로 이란 및 기타 사용자들은 이런 경고를 보게 되었습니다.
2019년 7월 30일 저녁 현재까지의 제재 내역은 다음과 같습니다.
- 비공개 저장소 접근 제한 (현재는 제한 해제)
- 비공개 gist 접근 제한 (현재도 동일)
저장소와 gist는 GitHub의 거의 대부분입니다. 이란 개발자들은 GitHub에서 여러 오픈소스 프로젝트를 만들었는데 Nuxt.js 외에도 유용하게 사용한 intro.js와 unsplash-wallpapers 그리고 거의 1만개의 스타에 육박하는 bootstrap-vue가 있습니다.
그냥 일반적으로 오픈소스를 사용하는 사용자들은 체감이 되지 않을 것입니다. 공개된 코드는 그대로 남아있고, npm 등을 이용하여 아무 제약없이 받을 수 있기 때문입니다. 그러나 이런 프로젝트를 만든 개발자들은 제한을 받고 있습니다.
2019년 7월 21일 이란의 개발자인 Parham Alvani( 1995parham)은 한 저장소를 만들었습니다. 저장소의 이름은 github-do-not-ban-us입니다.
위 네 나라는 GitHub에서 제한에 걸려있고, 차단은 당한 사용자들은 “GitHub에서 핵을 만들어서 그런가” 등의 조롱을 하고 있습니다.
어떤 사람은 1933년 나치 독일의 베를린 분서와도 비교합니다.
1933: 독일은 책을 불태웠다.
2019: 미국은 코드 저장소를 차단했다.
github-do-not-ban-us에서는 특별한 운동을 하고 있습니다. 각자 자신이 사용하는 프로그래밍 언어로 “GitHub is for everyone” 을 출력할 수 있는 코드를 Pull Request하는 것인데, 이미 많은 개발자들이 참여하고 있습니다.
한국 사람으로는 조금 흥미로운 부분은 북한 개발자도 참여했다는 것 입니다. 올리면 그분에게 문제가 될 수 있으니 직접 찾아보시길 권합니다.
한국에서는 모 회사에서 이벤트로 곤욕을 치룬 하루였습니다. 이같은 상황에 꽤나 괴로운 상황에 처해있는 다른 개발자들을 돌아 보았으면 좋을 것 같습니다. 이 글을 쓰는 저도 pi0가 아니었으면 작년 Slack의 이란 사용자 차단과 같이 전혀 몰랐을 사건입니다.
github-do-not-ban-us저장소는 여러 언어로 번역되어있습니다. 한국어 버전도 있으니 한번쯤 읽어보셨으면 합니다. 그리고 마음이 동하시면 ”GitHub is for everyone” PR을 남겨보시면 어떨까요?