ESLint 유지 관리자는 후원을 통해 오픈 소스 유틸리티에 자금을 지원하는 문제를 공유합니다.
게시 됨: 2020-10-23가장 인기 있는 JavaScript 린트 유틸리티 중 하나인 ESLint는 오픈 소스 라이선스 덕분에 더 많은 초기 경쟁자를 빠르게 압도했습니다. 명확한 라이선스 덕분에 프로젝트가 널리 사용될 수 있었지만 진행 중인 개발을 위한 자금으로 즉시 전환되지는 않았습니다. 매주 1,300만 번 이상 다운로드됨에도 불구하고 유지 관리자는 여전히 유틸리티를 지원하기 위해 고군분투하고 있습니다.
기여자의 노력에 자금을 지원하기 위해 ESLint Collective를 시작한 지 1년이 조금 넘었지만 프로젝트의 리더십은 후원 모델 추구의 성공과 도전 중 일부를 공유했습니다. 성공하지 못한 한 가지 노력은 전담 관리자를 고용하는 것이었습니다.
이것은 팀이 해결하기 어려운 문제였으며 오픈 소스 지속 가능성에 대한 중요한 교훈이 있다고 생각합니다. 기부를 받기는 하지만 ESLint는 풀타임으로 유지 보수를 지불할 만큼 충분히 가져오지 않습니다. 그럴 때 메인테이너는 어려운 결정에 직면하게 됩니다. 시간제 개발 작업을 할 수는 있지만 가치 있는 월 수입을 보충할 다른 시간제 작업을 찾기가 어렵습니다. 어떤 경우에는 아르바이트를 하다 보면 다른 프리랜서들과 달리 시간에 제약이 생겨 다른 일을 찾기가 더 어려워집니다.
ESLint가 탐색한 어느 정도 성공적인 실험 중 하나는 릴리스, 문제 및 풀 요청 관리를 담당하는 프로젝트 리더인 5명으로 구성된 TSC(기술 운영 위원회)에 비용을 지불하는 것입니다. 회원은 기여금과 프로젝트에 소요된 시간에 대해 시간당 $50를 받고 최대 $1,000/월을 받습니다. 모자는 TSC 구성원이 일상 업무 외에 프로젝트에 너무 많은 시간을 소비하는 것을 방지하여 지치지 않도록 합니다.
팀은 이 수당 제도가 "매우 잘" 작동했으며 기여도 천천히 증가했다고 보고합니다.
WordPress와 같은 대규모 프로젝트에서 기업 기여는 지속적인 개발에 매우 중요합니다. 최근 몇 년 동안 Five for the Future 캠페인은 고용주가 급여를 지급하고 WordPress에서 작업하는 데 시간을 기부함으로써 많은 기여자에게 보상하는 데 도움이 되었습니다.
WordPress의 주요 발전 중 일부는 엄청난 시간과 전문성 투자가 필요합니다. 수백만 명의 사용자가 사용할 수 있는 복잡한 솔루션을 구축하기 위해 몇 달 동안 여러 팀에서 작업해야 하는 문제 해결입니다. 이것이 무료로 구텐베르크를 건설하는 사람들의 군대를 볼 수 없는 이유입니다. 개발의 대부분은 유급 직원에 의해 주도되며 직원 시간을 회사에서 기부하지 않았다면 불가능했을 것입니다. Automattic, Google, Yoast SEO, 10up, GoDaddy, Human Made, WebDevStudios, WP Engine 및 기타 많은 회사들이 한 달에 수천 시간의 노동을 약속했습니다. WordPress를 지원하는 회사와 개인의 다양성은 프로젝트가 안정성을 유지하고 삶의 폭풍우를 더 잘 헤쳐나가는 데 도움이 됩니다.
ESLint와 같은 소규모 오픈 소스 프로젝트는 처리할 수 있는 동일한 리소스가 거의 없으며 실험해야 합니다. 후원에서 기여한 기여자에 대한 1년 간의 검토를 요약하면 팀은 다음 과 같이 말합니다. 그것이 계속되는 유일한 방법은 사람들에게 시간을 지불하는 것입니다.”
가장 인기 있는 유틸리티조차도 충분한 후원을 얻기 위해 고군분투할 때 소규모 프로젝트에 어떤 희망이 있습니까? 개발자의 워크플로에서 없어서는 안 될 많은 유틸리티가 지속 불가능하게 되는 궤도에 있습니다.
OSS 엔지니어 Colin McDonnell은 새로운 자금 조달 모델에 대한 제안에서 "불행히도 이와 같은 유틸리티는 아무리 널리 사용되거나 사랑받고 있더라도 기부에서 의미 있는 금액을 거의 가져오지 않습니다."라고 말했습니다. “반응 라우터를 고려하십시오. GitHub의 별 41.3k, NPM의 주간 다운로드 300만 회, React 기반 단일 페이지 애플리케이션의 거의 보편적인 채택에도 불구하고 연간 17,000달러의 기부금만 가져옵니다.”

McDonnell은 기존 오픈 소스 자금 조달 모델의 혜택을 받을 수 없는 소규모 프로젝트에 자금을 지원하기 위해 "후원자 풀"의 개념을 제안했습니다. 프로젝트별로 기부하는 대신 오픈 소스 지지자들은 매달 일정 금액을 "지갑"에 기부한 다음 해당 자금을 후원자 풀로 선택한 프로젝트에 분배할 수 있습니다. 구현의 핵심 부분은 풀에 새 프로젝트를 추가하는 데 한 번의 클릭으로 추가 프로젝트 지원과 관련된 심리적 마찰을 줄여야 한다는 것입니다.
McDonnell은 GitHub가 이 모델을 GitHub 스폰서의 확장으로 구현하는 인프라를 갖춘 유일한 조직이라고 제안했습니다. Hacker News의 한 논평자는 후원자와 "후원자 풀"이라는 개념이 동시에 존재할 수 있다고 제안합니다.
“개발자의 후원자가 되는 것과 감정과 이야기, 가족으로 제작자를 후원하는 것과 같은 느낌과 내가 혜택을 받는 승인된 프로젝트 목록을 가진 훌륭한 시민이 되고 싶은 것 사이에는 의미 있는 차이가 있다고 믿습니다. 지원하고 싶어합니다.”라고 Pete Forde가 말했습니다.
"나는 Matz를 후원하고, 그의 업데이트를 받고, 내가 후원자로 간주된다는 사실에 대해 기분이 좋고, 내가 하는 것이 옳고 내가 내 프로젝트에서 사용하는 모든 도구에 기여하기 위해 매월 $$$를 따로 떼어 놓을 수 있습니다. 이러한 프로젝트가 장기적으로 존재하기를 바랍니다. 그것들은 완전히 다른 이니셔티브입니다. 원한다면 Patreon 대 Humble Bundle이 있습니다.”
Tidelift는 HN 토론에서 강조된 또 다른 개념입니다. 오픈 소스 작업에 자금을 지원하는 다른 독특한 접근 방식을 가지고 있습니다. Tidelift는 유지 관리자를 지원하기 위해 소프트웨어를 사용하는 조직에서 자금을 모읍니다.
Daniel Doubrovkine은 "저는 중간 규모의 프로젝트인 루비 포도를 유지합니다. “Tidelift에서 월 144달러를 받습니다. 기업 후원에 가입하는 기업이 많을수록 달러 금액이 증가합니다. 수영장입니다.”
Snowdrift는 후원자들이 공공재에 자금을 지원하기 위해 서로 기부금을 "크라우드매칭"하는 후원을 합산하는 데 보다 특이한 접근 방식을 취합니다. 공익에 봉사하는 무료 공개 프로젝트에 자금을 지원하기 위해 비영리 협동조합으로 운영됩니다.
Flossbank는 보다 구체적으로 오픈 소스 프로젝트 자금 조달을 목표로 하며 설치된 오픈 소스 패키지의 전체 종속성 트리에 공평한 기여를 보장하기 위해 기술적 접근 방식을 취합니다. 조직은 유지 관리자에게 되돌려주는 "자유롭고 마찰 없는" 방법을 제공한다고 주장합니다. 개발자는 오픈 소스 패키지를 설치할 때 터미널에서 선별된 기술 중심 광고를 선택할 수 있습니다. 대안으로, 그들은 설치하는 패키지에 분산되도록 월간 기부 금액을 설정할 수 있습니다.
모든 프로젝트에 적합한 단일 자금 조달 모델은 없지만 다양한 방식으로 후원을 모으는 실험은 특히 마케팅에 능숙하지 않은 유지 보수를 지원하는 경향이 있는 것 같습니다. 지원 유틸리티에 대한 대화는 Hacker News에서 계속됩니다. 이러한 유틸리티 중 일부에 의존하는 WordPress 개발자는 참여하여 소규모 프로젝트 자금 조달 경험을 공유할 수 있습니다.
