Опыт разработки open source приложений Bryce Harrington-а

Popularity as measure of OSS success.

27.09.2005, Брайс Харрингтон (Bryce Harrington).

Почему-то бытует мнение, что успех проекта open source определяется числом его пользователей. Вообще-то это не так, просто некоторые люди переносят представления о коммерческом ПО на open source.

Давайте сначала определим значение слова «успех». Успех означает увеличение ценности. Фирма, которая повышает свою прибыль, считается успешной. Если работник увеличивает свой доход, его считают успешным. Гринписовец становится более успешным с каждым новым спасённым от вырубки лесом.

Но пользователи проекта open source не являются ценностью сами по себе. Путаница возникла из-за того, что пользователи являются ценными для коммерческого программного обеспечения. Пользователь покупает в магазине коробку с программой, предположим, за 50$, и этим доказывает свою ценность для проекта. Чем больше пользователей покупают коммерческое ПО, тем выше доходы фирмы и зарплата программистов.

В проекте open source пользователи не платят 50$ и не компенсируют зарплату программистов. Конечно, иногда они спонсируют работу разработчиков, но эти случаи настолько редки, что мы можем не учитывать их как исключение из правила. Я заметил, что количество спонсоров мало зависит от количества пользователей. Станет ли пользователь спонсором скорее зависит от важности открытого ПО для его бизнеса.

Итак, если ценность проекта не приходит вместе с пользователями, откуда же она берётся? Бизнес-модель open source немного проще, чем у проприетарного ПО, так как она не включает поток денег. Деньги не движутся от пользователей к программистам. Взамен этого пользователи напрямую повышают ценность проекта, внося свой вклад в его развитие в виде тестирования, патчей, документации и т. д.

Таким образом, для проекта open source клиентами являются люди, которые вносят вклад в развитие проекта. Это может показаться довольно странным с точки зрения здравого смысла, что клиентом является не покупатель, а производитель. Теперь мы можем дать правильное определение ценности проекта: это вклад пользователей в развитие проекта. Первое, о чём должен думать руководитель проекта open source — это количество производителей.

Большое количество пользователей иногда может принести даже вред проекту. Эту проблему иногда называют «отношение сигнал/шум». При большом количестве пользователей на разработчиков обрушивается шквал вопросов, ответы на которые отнимают время, пользователи требуют исправить ошибки и другими способами создают нагрузку на разработчиков. Поэтому я часто говорю: избегайте ранней популяризации проекта.

Дело в том, что не все пользователи становятся разработчиками. Портирование вашего проекта под Windows может сильно увеличить число пользователей, не принеся новых разработчиков. Это происходит из-за того, что среди пользователей Windows идеалы открытой разработки не так популярны, или они привыкли к тому, что программное обеспечение, которым они пользуются, защищено он изменений. Если каждые 100 пользователей приносят вам хотя бы одного разработчика, ваш проект может нормально расти. Новые пользователи могут даже уменьшить ценность проекта, так как они отвлекают разработчиков от самого проекта на обслуживание себя.

Я считаю, open source проекту не стоит ставить перед собой цель получить как можно больше пользователей. Сосредоточьтесь в первую очередь на том, что хотите получить от проекта вы и ваши разработчики, затем учитывайте потребности существующих пользователей вашего проекта. Мысль «добавив такое-то свойство, мы получим эн новых пользователей» может показаться соблазнительной, но её воплощение сделает только хуже. Если вы удовлетворите потребности уже существующих пользователей, это позволит вам повысить ценность проекта в ближайшее время. Думайте об этом, а пользовательская база позаботится о себе сама.