Зачем разрабатывать бесплатные программы с открытым исходным кодом? [закрыто]

36

Зачем кому-то использовать свое время для разработки проекта с открытым исходным кодом бесплатно и без компенсации?

Диего
источник
10
О, действительно, мы должны обсуждать эту тему снова и снова? Даже MS в настоящее время создает несколько программ с открытым исходным кодом.
user281377
18
@ammoQ: Хотя вы правы, это не особенно полезно.
back2dos
5
Ну ... я не пишу код бесплатно, но я провожу 37,8 часа в неделю за столом, пишущим программное обеспечение, выпущенное по лицензии GPL. Иногда программное обеспечение создается для удовлетворения деловых или эксплуатационных потребностей. Само программное обеспечение не имеет коммерческой ценности для потребителя, но все же обеспечивает ценность для бизнес-единицы. Людей, которые не используют другие продукты компании, не заинтересует приложение с открытым исходным кодом, которое ничего им не даст - и даже если они это сделают, кого это волнует?
TZHX
25
Ваше невысказанное фундаментальное предположение о том, что единственной действительной мотивацией человеческого поведения является мотив прибыли, является бесчеловечным, оскорбительным и, самое главное, явно ложным. Смотрите youtube.com/watch?v=u6XAPnuFjJc для некоторых фактических исследований по этому вопросу.
Мейсон Уилер
16
Почему люди сидят на StackExchange и помогают людям без оплаты?
КБА

Ответы:

58

Для небольших проектов причинами могут быть «хобби», «получение некоторого опыта», «слава», «радость» и т. Д., Но это не то, как работают большие проекты с открытым исходным кодом, такие как Mozilla, OpenOffice, Linux.

Почему Sun купила StarDivision и сделала StarOffice программой с открытым исходным кодом (называемой OpenOffice.org)? Почему Mozilla создает первоклассный браузер и предоставляет его как открытый исходный код? Почему люди создают Linux, пишут драйверы и так далее, и делают его доступным для всех бесплатно? Почему Microsoft создает драйверы с открытым исходным кодом для Linux, чтобы он мог работать лучше при виртуализации MS?

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

В некоторых случаях доминирование продуктов MS, таких как Windows, Office, Internet Explorer, стало причиной создания конкурирующего продукта, поэтому MS было бы сложнее использовать свое доминирование на рабочем столе для завоевания других доменов, например серверов, интернет-сервисов, слишком. Это объясняет, в некоторой степени, OpenOffice.org и Mozilla.

В других случаях программное обеспечение с открытым исходным кодом призвано стимулировать продажи оборудования, другого программного обеспечения или услуг. Драйверы с открытым исходным кодом, очевидно, помогают продавать аппаратные компоненты пользователям Linux. RedHat продает поддержку своего дистрибутива Linux, и они продают тот факт, что их Linux является подлинной RedHat. Другие продукты, например Oracle, сертифицированы для использования на Redhat, но не на CentOS, хотя, вероятно, он работает так же хорошо. Серверное оборудование сертифицировано для Redhat, хотя другие дистрибутивы Linux, вероятно, работают так же хорошо. Клиенты с большими деньгами не заботятся о цене, они хотят получить сертификат.

Некоторые компании, например Google, спонсируют многие проекты с открытым исходным кодом, потому что это помогает их бизнесу. Они не делают это для альтруизма. Им нужен бесплатный интернет, повсеместный интернет, широко распространенный интернет, где люди пользуются услугами Google, поэтому Google приносит доход.

user281377
источник
5
Несколько скептически отношусь к тому, что Google хочет "бесплатный интернет". Им нужен широко и часто используемый интернет, который предоставит им больше возможностей и в конечном итоге принесет им прибыль. Free нечто более спорно. +1 все равно за хороший ответ.
Джон Хопкинс
13
Джон: бесплатно, как в «не контролируется ни одним поставщиком» (возможно, кроме них)
user281377
1
Я думаю, что это не имеет отношения к теме: joelonsoftware.com/articles/StrategyLetterV.html
back2dos
back2dos: спасибо за ссылку; Я читал это раньше, но не мог вспомнить, где и когда.
user281377
Google спонсирует проекты с открытым исходным кодом, такие как Chrome, потому что это делает их относительно дешевым новым продуктом, который конкурирует с лидерами рынка с точки зрения возможностей и производительности, но они могут дополнить его с помощью достаточного количества механизмов управления, которые приносят им гораздо больший доход - по умолчанию Поиск провайдера приходит на ум. Звучит цинично, но зачем выпускать Chrome, если другие браузеры на основе Webkit уже работают ( en.wikipedia.org/wiki/… ).
JBRWilkinson
26

Почему все должно быть о деньгах? Как вы думаете, работает википедия? Никому не платят за размещение контента в Википедии, но это лучшая энциклопедия.

редактировать:

Давай поговорим о деньгах.

Проекты с открытым исходным кодом, как и любые проекты, написаны по необходимости. У вас есть проблема X, и вы пишете библиотеку Y или приложение Z для ее решения, потому что

  • Там нет инструментов, которые решают это или
  • Они не достаточно хороши или
  • Они не стоят денег (написание собственного инструмента, вероятно, «стоит» дороже, но в итоге вы получаете именно то, что хотите, и вы можете изменить его так, как хотите, поэтому стоимость быстро амортизируется).

Итак, теперь вы провели несколько вечеров и выходных (и / или оплачивали время), написав следующую горячую вещь, пока не дойдете до точки, когда ребенок начнет ходить. Теперь вам нужно выбрать между:

  • Коммерческое распространение: это включает в себя маркетинг, юридические услуги, поддержку клиентов, все исправления самостоятельно, получение множества невероятно глупых запросов о функциях и бесполезную обратную связь. В конце концов вы получаете то, что осталось от денег, как только все паразиты получают свой кусок пирога. И, вероятно, никому не понравится ваш продукт, потому что он стоит слишком дорого.
  • Распространение с открытым исходным кодом: это включает ... хм ... передачу кода в общедоступный репозиторий и создание одного или двух объявлений в соответствующих списках рассылки. Вы получите признание или даже некоторую известность. Вы получите пользовательскую базу, которая обеспечивает конструктивную обратную связь, полезные отчеты об ошибках и, возможно, даже патчи. Вы получаете пожертвования или получаете приглашение на некоторые конференции или платите за реализацию функций a или b. И вы произвели много ценности, хотя никто ничего не заплатил. И в следующий раз, когда вам или вашей компании что-то понадобится, шансы хорошие, вы получите это и получите бесплатно.

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

back2dos
источник
4
"Почему все должно быть о деньгах?" конечно нет, но программирование - это то, что людям обычно нравится, когда им платят за это. (даже если вам это нравится, я программист и люблю программирование, но я бы не стал заниматься этим бесплатно)
Диего
@Diego: Составление энциклопедии - это то, что людям обычно платят. Кстати: обновил мой пост.
back2dos
12
@Diego: прости мою наивность, но как ты можешь говорить, что любишь это, если не будешь делать это ради одной любви?
Мэтт Эллен
6
@Matt: любовь никогда не для любви, это заблуждение.
user281377
1
Я делаю это ради любви в одиночку, когда это то, чем я хочу заниматься, для меня это «вызов программирования». Не просто "обычное скучное программное обеспечение".
Диего
24

Это хобби для некоторых людей; хочешь верь, хочешь нет.

Джилет с радостью предоставит вам бесплатную бритву и продаст вам лезвия.

Некоторые люди зарабатывают деньги другими способами и хотят вернуть их сообществу. Я уверен, что Линус Торвальдс заработал много денег на Linux, фактически не продавая код, и, вероятно, отбросил деньги.

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

JeffO
источник
3
Ты имеешь в виду бесплатную ручку для бритья. Бритва - это лезвие.
Джо З.
Его называют бизнес-моделью приманки и крючка. То же самое можно сказать и о принтерах и картриджах en.wikipedia.org/wiki/Razor_and_blades_business_model
Сортировщик
В моем районе вы должны платить даже за ручку :)
Ник
@JoeZ. - Я вырос, называя все это бритвой. и никогда не встречал никого, кто бы не знал, о чем я говорю до сих пор. Может быть, вы называете ручку, держатель лезвия и само лезвие / бритву бритвой?
JeffO
11

Денежная компенсация - не единственно возможная компенсация. Слава (хотя в основном ограниченному кругу) это другое. Радость хвастаться тем, что ты сделал, - это еще одно.

Я, в основном, делаю это, потому что у меня есть желание писать программы, и если это случится, чтобы помочь кому-то еще, все выиграют.

Vatine
источник
4
И это поможет вам получить работу.
вправо
5

Этот вопрос не является специфическим для открытого исходного кода, потому что вы можете писать код бесплатно и никогда не публиковать его для общественности (хотя это было бы редко из-за всех известных преимуществ совместного использования кода).

Вопрос в том, зачем делать что-то бесплатно? Ответ таков, потому что это делает тебя счастливым .

Лично я люблю учиться и учусь больше работать с открытым исходным кодом, чем работать на оплачиваемой работе. Поскольку обучение улучшает мои навыки, оно также помогает мне получить более высокооплачиваемую работу.

Макс Торо
источник
4

Есть несколько причин для разработки приложений с открытым исходным кодом. В целом, чем более фундаментальной является потребность, тем лучше она подходит для открытого исходного кода. Например, ASP.NET MVC, Ruby on Rails, Django, PHP и другие веб-фреймворки имеют открытый исходный код. Это верно, даже у Microsoft есть довольно известный проект с открытым исходным кодом. Потребность в хорошо организованной веб-инфраструктуре, позволяющей сосредоточиться на создании веб-приложения, больше, чем конкретное веб-приложение, которое вы создаете.

Многие люди (включая меня) вносят свой вклад в открытый исходный код, потому что мы используем эти рамки в нашей повседневной работе. В некотором смысле это самосохранение. Если мне не нужно изобретать велосипед только потому, что я в новой компании, зачем мне это?

Что касается зарабатывания денег с открытым исходным кодом, это сложная тема. Большинство лицензий с открытым исходным кодом позволяют вам продавать свое программное обеспечение. Конкретная лицензия определяет, нужно ли вам делиться вашими изменениями (лицензии в стиле BSD / ASL этого не делают, в то время как лицензии в стиле GPL делают в большинстве случаев), или предоставлять атрибуцию исходного проекта.

Случаи, которые я вижу, работают чаще всего:

  • Продажа поддержки. MySQL, Spring и некоторые другие следуют этой модели и преуспевают с ней.
  • Продажа удобство. RedHat, SuSE и другие дистрибутивы Linux объединяют группу приложений для удобства пользователя.
  • Продам технику. Короче говоря, именно так компании, как Google, Nokia, Linksys и т. Д., Зарабатывают деньги, упаковывая собственные продукты с открытым исходным кодом и сохраняя их в безопасности. Это, наверное, самый прибыльный вариант.
  • Продажа футболки / кружки / и т. Д. Не приносит много, но лучше, чем ничего.

Суть в том, что исходный код может быть открытым, но всегда есть люди, которым нужно больше, чем необработанный код. Я уверен, что есть больше способов заработать деньги с открытым исходным кодом, вы просто должны быть креативными.

Берин Лорич
источник
2

Есть множество причин.

Некоторым людям платят за то, что они пишут, потому что их работодатель считает, что это стоит (и для этого есть много потенциальных причин). Некоторые люди основывают компании на основе F / OSS, потому что они могут зарабатывать на этом деньги.

Некоторые люди используют F / OSS и хотят вернуть.

Некоторые люди воспринимают это как игру с репутацией, например, научные исследования или ответы на вопросы.

Некоторые люди хотят определенную часть программного обеспечения для своих собственных целей, и просто выпускают ее, потому что они хотят использовать ее, и они могут иногда получать полезные предложения, если другие люди также могут использовать это.

Дэвид Торнли
источник
1

Помимо денег, конечно, есть известность - и затем они учатся тому, как что-то работает, создавая это и создавая это самостоятельно. Получение ценного и рыночного опыта за пределами вашей обычной трудовой жизни. Я думаю, что Айенде является хорошим примером этого.

Помимо этого - как правило, я нашел некоторые из лучших, наиболее интуитивно понятных проектов и структур, с которыми я работал, с открытым исходным кодом - я думаю, что люди, которые действительно достаточно увлечены, чтобы тратить свое свободное время на создание проекта из С нуля или просто поддерживая его, вы получите лучший продукт, чем люди, которые просто сгруппированы по 9-5.

Уотсон
источник
1

Это не только для зарабатывания денег, но чаще для экономии денег . Обширная библиотека хороших библиотек и инструментов OSS делает его естественным выбором.

В тех же случаях (GPL и друзья) это означает, что вы юридически обязаны сделать результирующий код OSS тоже. В других случаях это просто личный выбор, но вы все равно получаете другие награды (в основном, некоторое признание, иногда шанс продажи поддержки, иногда (случается со мной) хорошая ссылка, чтобы показать потенциальным работодателям)

Хавьер
источник
1

Вы можете выпустить его на условиях ограниченной свободной лицензии, такой как GNU AGPL, а затем взимать плату за исключения.

наряжать
источник
Это ужасная идея.
вправо
@WTP. Это бизнес-модель MySQL и x264, среди прочих (хотя, насколько мне известно, ни один из них не использует GNU AGPL).
TRiG
1

Не один раз я вносил патч в проект с открытым исходным кодом просто потому, что хотел убедиться, что функция / исправление будет включено в будущие версии.

Не похоже, что кто-то выпустит что-то как открытый исходный код просто потому, что это дает возможность другим использовать его и поддерживать его актуальность.

Я работал с одним человеком, который написал код, который (IIRC) утверждал CUSIP . Он выпустил его в сети. Спустя годы он скачал библиотеку CUSIP для другой системы. Он был удивлен, увидев ссылку на код, который он написал несколько лет назад.

Сэл
источник
0

Вы можете поддержать это, чтобы получить деньги. Если у вас есть программа, которая очень хорошо продумана и используется сообществом, например, как jboss, вы можете предложить свои услуги и поддержку. Люди будут платить за это.

Джонни
источник
0

Компания, для которой я работаю, начинала с общедоступного кода (написанного владельцем бизнеса) [Открытый источник был годами с момента изобретения]. Его оригинальная бизнес-модель заключалась в том, чтобы быть консультантом по ее использованию (использование не является простым, и многие сотни людей зарабатывают на консультациях). Конечно, требования к улучшениям были настолько велики, что стали коммерческим кодексом (ами) *. Но, тем не менее, большая часть заработной платы быстро сокращается по шкале: (1) пользователи выполняют свою работу, (2) консультанты в группе (1), наконец (3) разработчики / тестировщики и т. Д.

Я использую множественное число, потому что несколько других проприетарных кодов возникли из той же версии исходного кода общественного достояния.

Омега Центавра
источник
0

Вы можете оказаться в следующей позиции:

  • вам нужно хорошее программное обеспечение, чтобы сделать что-то для вас
  • вы обнаружите, что вам нужно гораздо больше контроля над тем, как работает программное обеспечение, чем варианты конфигурации доступных предложений
  • у вас есть доступ к исходному коду для программного обеспечения, которое почти соответствует вашим потребностям, и опыт его модификации для обеспечения необходимого вам контроля
  • вам нужно всего лишь внести небольшие изменения для ваших целей, но вы хотите получить выгоду от многих других изменений, сделанных другими, и будущее разработки программного обеспечения выглядит блестящим
  • Ваши модификации не являются изолированными и достаточно существенными, чтобы считать их активами, которые стоит защищать или продавать, или дополнительные издержки при этом перевесят преимущества
  • вы знаете, что ваши модификации могут принести пользу многим другим с потребностями, аналогичными вашим; включение их в основную линию разработки сэкономит ваши усилия по сравнению с сохранением собственной раздвоенной копии

В этой ситуации участие в проекте с открытым исходным кодом является вполне разумным деловым решением.

Это может быть довольно хорошая реклама тоже.

reinierpost
источник