Про это явление в сообществе говорить не принято. Дискуссий на эту тему сторонники Open Source предпочитают избегать, ограничиваясь риторикой про общее благо, про посильные вклады каждого, которые гарантированы концепцией открытого кода. Тем не менее, проблема существует как объективная реальность, не зависящая от нашего к ней отношения.
По крайней мере, на практике каждый проект должен если не решать «проблему безбилетника», то хотя бы учитывать её при формировании планов развития. Иначе он никогда не будет устойчивым.
В выпущенном Фондом Форда докладе «Дороги и мосты», посвящённом состоянию инфраструктуры Open Source, Надя Экбал отмечает, что поддержкой этой инфраструктуры, в том числе и финансовой, в настоящее время не может заниматься какая-то одна компания или организация. Чтобы инфраструктура оставалось устойчивой, всё сообщество должно искать эффективные способы совместной работы.
Технический директор проекта PensionBee Джонатан Листер в комментирующей этот доклад статье утверждает, что всё движение Open Source в настоящее время находится в кризисе. Он считает совершенно ненормальной ситуацию, когда крупные проекты поддерживаются добровольцами, которым не хватает финансовой и организационной поддержки.
В результате такого положения вещей ряд проектов банально не успевает идти в ногу со временем. Компании пользуются несовершенными с точки зрения безопасности решениями, в которых долгое время сохраняются функциональные недостатки. В частности, известная уязвимость HeartBleed, затронувшая две трети всех сайтов, была вызвана ошибкой в очень популярной открытой библиотеке, поддерживаемой всего одним человеком.
К счастью, существуют устойчивые проекты, в которых «проблема безбилетника» так или иначе решена. Однако многие до сих пор ведут неравную борьбу.
Увы, если ресурсы и решения предоставляются бесплатно, то у пользователей нет весомого стимула для возврата каких-либо активов в проект. При этом важно понимать, что для компаний вопрос всегда сводится к деньгам. Даже если они не финансируют проект напрямую, предпочитая поддерживать его путём выделения разработчиков, то зарплату программистам приходится платить. А это расходы, целесообразность которых ещё придётся доказывать акционерам.
В начале движения Open Source «проблема безбилетника» не стояла так остро, как сегодня. Прежде всего потому, что пользователей открытых решений было относительно мало и большинство из них руководствовались не только прагматичными, но и идеологическими соображениями, считая «возврат» собственным моральным долгом.
В настоящее время ситуация резко изменилась. Во-первых, всё больше пользователей выбирают решения Open Source исключительно по соображениям собственной выгоды. Причём именно бесплатность ПО зачастую играет решающую роль при принятии такого решения.
Во-вторых, значительный рост числа пользователей Open Source устанавливает весьма высокую планку требований к устойчивости проектов. Пример HeartBleed тут очень показателен, поскольку всего одна уязвимость могла негативно повлиять на всю мировую ИТ-инфраструктуру.
Таким образом, развитие Open Source требует всё больше ресурсов. Но значительная часть пользователей предпочитают оставаться «безбилетниками», тем более что формально они не обязаны что-то кому-то платить.
Для лучшего понимания сути проблемы Джонатан Листер предлагает обратиться к книге «Governing the Commons: The Evolution of Institutions for Collective Action» (в русском переводе она вышла под названием «Управляя общим. Эволюция институтов коллективной деятельности»), написанной лауреатом Нобелевской премии по экономике Элинор Остром. Он уверен, что некоторые мысли автора удачно описывают открытые организации в контексте устойчивости проектов Open Source.
Остром отмечает, что некоторые группы могут преодолеть «трагедию общего достояния», в то время как для других она приводит к неразрешимым задачам. Корень проблемы она видит в возможности управления общедоступными ресурсами (common-pool resources, CPR). Под CPR понимается большой естественный или техногенный ресурс, размер которого делает его настолько дорогостоящим, что исключает возможность извлечения выгоды от его использования потенциальными бенефициарами. Примеры CPR: рыболовецкие угодья, подземные воды, лесные массивы... Присвоить всё это практически невозможно, поэтому все выгодополучатели должны каким-то образом сообща сохранять эти ресурсы.
С технической точки зрения Open Source нельзя отнести к CPR, поскольку уместней говорить не про общественный ресурс, а про общественное благо. Общее у них то, что практически невозможно предотвратить их невозвратное присвоение какими-то лицами. Нельзя запретить безвозмездно использовать СПО точно так же, как нельзя запретить ловлю рыбы в море.
Однако принципиальная разница заключается в том, что разные люди не могут поймать одну и ту же рыбу, тогда как они могут одновременно использовать одно и то же ПО. Поэтому CPR относится к «соперничающим» сущностям, а общественное благо — к «неконкурентным».
Тем не менее, и общественные ресурсы, и общественные блага одинаково страдают от нерешённой «проблемы безбилетника». Бесплатное использование решений Open Source приводит к тому, что их поддержкой начинают заниматься люди с низким уровнем заработной платы, которые в конечном итоге «перегорают». Это плохо и для людей, и для проектов.
По всей видимости, решение «проблемы безбилетника» — одна из важнейших и актуальнейших задач не только сообщества Open Source, но и всей мировой ИТ-отрасли. К сожалению, готовых рецептов на сегодняшний день нет. Пока ещё не появились специалисты, готовые взять за основу идеи Остром и сформулировать базовые принципы функционирования разработки и поддержки открытого ПО в новых условиях.