15년 정도 정기적으로 오픈소스에 공원해왔음에도 여전히 오픈소스에 공헌하는 것이 나에게 어떤 의미가 있는지 계속 생각해 보고 있다. 아마도 오픈소스에 공헌하는 것은 단순히 내가 코드를 작성하는 것을 좋아하기 때문일 것이다. 그리고 이것이 보통 내가 내 시간을 보내는 방법이다. 오픈소스에 공헌하는 의미를 생각하기 보다는 주로 코드를 작성하면서... 하지만 오픈소스와 IT산업과의 관계와 나는 OSS를 무엇이라고 생각하는지에 대해서 계속 생각하기 시작했다.
일단 오픈소스는 나에게 자유소프트웨어 운동에 공헌하는 방법이 아니라 인류에 공헌하는 방법이다. 이는 많은 것을 의미하는데 예를 들어 나는 사람들이 내 코드로 무엇을 하는지 신경쓰지 않고 사람들이 수정사항을 적용해서 다시 배포하는 것도 신경쓰지 않는다. 나는 그냥 사람들이 내 코드를 여러가지로 사용하기를 원할 뿐이다.
특히 사람들이 내 코드로 재미를 느끼고 새로운 것을 배우고 돈을 벌었으면 좋겠다. 내가 작성한 것으로 사람들이 돈을 벌어들이면 내기 무언가를 잃어버리는 것이 아니라 오히려 나에게 이득이 되는 것이다.
- 누군가 내 코드를 사용해서 비용을 지불할 수 있다면 나는 세계에 더 큰 영향력을 가진다.
- 내 코드로 돈을 버는 다양한 사람들이 있다면 아마도 그들은 이 돈을 나와 공유하거나 나를 고용하고 싶어할 것이다.
- 내 스스로가 내 코드(다른 오픈소스 소프트웨어 코드와)로 돈을 버는 사람이 될 수 있다.
하지만 당연히 모두가 이렇게 생각하는 것은 아니고 오픈소스에 공헌하는 많은 프로그래머들은 다른 사람이 소스코드를 가져가서 동일한 라이센스를 따르지 않고 상업제품을 배포하는 것 같은 사업을 하는 것을 좋아하지 않는다.
나한테는 GPL 라이센스를 사용하기 위해 따라야 하는 많은 규칙들이 오히려 사람들이 소스코드로 할 수 있는 것에 대한 진짜 자유를 줄이는 실제적인 장애물이다. 게다가 나는 라이센스와 많이 관련되지 않은 공헌을 다시 받는다고 느낀다. 유용하다면 포크(fork)를 관리하는 것이 큰 일이 아니므로 사람들은 어떤 방법으로든 다시 공헌하려고 할 것이다. 개발이 이뤄지는 곳이 정말 가치있는 곳이다. 고치지 않고 발전하지 않는 코드는 가치가 전혀 없다. 오픈소스 개발자로써 당신이 가치를 제공할 수 있다면 다른 사람들이 자신들의 변경사항을 더 적용하고 싶어할 것이다.
어쨌든 더 적은 패치를 합치고 사용자관점에서 더 자유로울 때 그 반대인 경우보다 훨씬 더 행복하다. 그러므로 나는 논쟁할 게 그리 많지 않다.
내 생각에는 오픈소스가 공정한 양으로 돌려받아야 하는 것은 패치가 아니라 오히려 돈이다. 새로운 스타트업 운동(그리고 저비용으로 운영되는 많은 대형 IT 회사들)은 잘 동작하는 많은 오픈소스 코드에 기반하고 있다. 회사들은 성공의 핵심요소인 오픈소스 소프트웨어를 작성한 사람들과 그들이 번 돈의 일부를 공유하려고 노력해야 하고 돈을 재분재하는 건전한 방법은 이러한 사람들이 오픈소스 소프트웨어를 작성하도록 고용하거나(VMware가 나에게 했듯이) 기부를 하는 것이다.
많은 개발자들은 열정을 가지고 여가시간에 많은 작업을 하고 오픈소스에 대한 이들의 공헌을 적은 부분만 지불된다. 재분배는 사람들이 열정을 가지고 코드를 작성하는데 집중할 수 있게 하고 매달 월급을 받기위해 회사에서 하는 것과 비교해서 경제에 훨씬 더 중요한 영향을 끼칠 수 있게 할 것이다. 그리고 불행히도 pull request에 비용을 지불할 수 없으므로 소스 공헌으로 프로젝트를 돕는 이유는 좋고 건전한 것이기 때문인데 내 생각이 이는 충분치 않다.
이 모든 것을 다른 관점으로 볼 수도 있지만 나는 현재 IT 산업의 많은 가치를 오픈소스 소프트웨어(대부분은 여가시간에 작성하거나 경영자가 허락한다면 업무시간에 하는 여러 일가운에 시간틈을 채울려는 중요한 노력으로 작성한)가 준다고 본다.
내 생각에 이는 경제적으로 차선책인데 수많은 똑똑한 코더들이 자신들이 좋아하고 많은 사람들이 이미 돈을 버는데 사용하고 있을 것을 작성하는데 더 자유로울 수 있다면 이 사람들은 경제적인 상승을 제공할 수 있다.
Comments