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

109

В настоящее время я студент (прикладная информационная технология), и мы делаем большую часть нашего программирования на C # и Java. Мне было интересно, как я, как разработчик, могу зарабатывать деньги с открытым исходным кодом. Я знаю, что есть история о поддержке или предоставлении услуг, но я не являюсь системным администратором и не люблю работу системного администратора. На самом деле я хотел бы получить в будущем немного C и C ++ и заняться разработкой на низком уровне.

Поэтому мой актуальный вопрос: можно ли заработать на разработке программного обеспечения с открытым исходным кодом и как?

Изменить: просто указать, что запуск моего собственного проекта с открытым исходным кодом не является обязательным требованием.

Haproli
источник
Прочитайте книгу Эрика Рэймонда: Кафедральный собор и базар
Дипан Мехта
«Предоставление поддержки / предоставления услуг» с открытым исходным кодом не обязательно связано с работой системного администратора. Например, может быть, клиент найдет приложение с открытым исходным кодом почти идеальным для своих нужд, если в нем будет создан один небольшой мод с кодом, и они будут нанимать вас для программирования этого кода.
Джеймс
Возможный дубликат Зачем разрабатывать бесплатные программы с открытым исходным кодом? «Почему все должно быть связано с деньгами? Как вы думаете, как работает Википедия? Никто не платит за размещение контента в Википедии, но это лучшая энциклопедия вокруг ... Давайте поговорим о деньгах ...»
комнат
Как все упоминали, большинству разработчиков OSS не платят за их усилия. Это блестящая бизнес-модель. Подумайте только о миллиардах долларов лицензионных отчислений, сэкономленных гигантскими корпорациями с помощью OSS. Руководители этих компаний должны ущипнуть себя каждое утро, чтобы не мечтать. Каким-то образом они убедили армию людей работать на них бесплатно. Он так хорошо работал с программным обеспечением, что теперь они распространяют модель на другие области, журналистику и фотографию. Разработка OSS немного похожа на религию, опять же куча огромного количества

Ответы:

105

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

конспект

Открытый исходный код может быть жизнеспособной основной или вспомогательной бизнес-моделью, как непосредственно через конкретную проектную работу, так и косвенно путем приобретения навыков, опыта и репутации. Также могут быть дополнительные мотивы; удовлетворенность производством программного обеспечения, которое было бы полезно другим, «расчесывание личного зуда» ( по словам Эрика С. Рэймонда , первый шаг к любому хорошему программному обеспечению с открытым исходным кодом ) или философские соображения , обычно основанные на понятии свободное программное обеспечение , либо подход с авторским левом, отстаиваемый Ричардом Столменом , либо более разрешительный подход лицензий BSD .

Способы заработать деньги через Open Source

1. Спонсорство компании

Это может произойти несколькими способами.

  • Постоянная работа для продолжения работы над громким проектом. Это, наверное, самый редкий случай. Если вы являетесь старшим участником крупного проекта с открытым исходным кодом, например Линуса Торвальдса , Гвидо ван Россума или Тео де Раадта , то вы, вероятно, сможете продолжить работу над своим проектом при финансовой поддержке таких крупных компаний, как Google или IBM . Хотя такой способ поддержки является относительно редким, вам необязательно быть суперзвездой с открытым исходным кодом, чтобы обеспечить этот тип финансирования; многие разработчики ядра Linux частично или полностью финансируются такими компаниями, как Red Hat .
  • Оплачивается за конкретные функции или расширения. Некоторые компании предлагают щедрые решения для реализации определенных функций в программном обеспечении с открытым исходным кодом, которые они используют для бизнес-функций. Часто нет необходимости, чтобы эта функция оставалась закрытым исходным кодом, поэтому значительный код возвращается сообществу. Это было описано как пчеловодная модель разработки с открытым исходным кодом. В некоторых случаях дополнительные функции должны оставаться закрытыми, но основаны на базе исходного кода с открытым исходным кодом. В обоих случаях опыт открытых источников является явным преимуществом для разработчика.
  • Ваш рабочий день код может быть с открытым исходным кодом. Связанный случай - это то, когда аспекты кода, который вы пишете для компании в ходе вашей повседневной работы, могут быть открыты с открытым исходным кодом без ущерба для компании. Код может основываться или не основываться на существующем проекте FOSS. Таким образом, часто можно использовать универсально полезные инструменты и библиотеки , и отдельные примеры свидетельствуют о том, что такие проекты часто могут ускориться после того, как они станут волонтерскими.

2. Добавить ценность для существующих проектов

Человек или компания могут позиционировать себя в качестве основного поставщика, который добавляет ценность существующему проекту или проектам с открытым исходным кодом. Есть много примеров компаний, которые предоставляют услуги путем упаковки, расслоения, объединения или расширения существующих проектов. Они широко делятся на две категории.

  • Служба поддержки. Enthought добавляет ценность, упаковывая собственный дистрибутив Python, ориентированный на научные библиотеки. Redhat и другие дистрибутивы Linux увеличивают ценность, собирая и тестируя множество разрозненных проектов с открытым исходным кодом, а также предоставляя простые в использовании механизмы установки и обновления . Эти компании продают услуги поддержки так же, как и многие проприетарные провайдеры.
  • Модель Freemium . Согласно этой модели базовая версия программного обеспечения или услуги является бесплатной; дополнительные «премиум» функции обычно стоят дополнительно. Программное обеспечение Sleepycat предоставило дополнительные функции для Berkeley DB по закрытой лицензии. Cedega обеспечивает повторную реализацию Windows API под Linux, выпущенную как смесь бесплатного и закрытого кода. Эта модель не обязательно должна быть с открытым исходным кодом; Gmail для организаций - один из примеров сервиса, который предлагает как бесплатные (как в пиве), так и премиум-варианты.

3. Предложите код по модели двойного лицензирования

Мощный подход состоит в том, чтобы предлагать программное обеспечение по двум альтернативным лицензиям: лицензию с авторским левом, требующую внесения изменений в сообщество, если программное обеспечение распространяется, и коммерческую лицензию, позволяющую использовать программное обеспечение без ограничений с открытым исходным кодом. Этот подход успешно применяется в крупных проектах, таких как Qt и Open Office , а также в небольших одноразовых проектах .

4. Проконсультируйтесь

Работа с открытым исходным кодом может предоставить способ получить ценный видимость сообщества.

  • Демонстрация способностей. Возможность проверить работу и компетенцию разработчика, рассматривая проекты с открытым исходным кодом, в которых они участвовали, является мощной возможностью для потенциальных работодателей .
  • Репутация здание. Наличие высокой репутации в сообществе открытого исходного кода может привести к выступлениям , запросам на обучение или предложениям по написанию книг на основе вашего опыта.
  • Быть экспертом. Быть значительным игроком в технологии, в которой нуждаются компании, означает спрос на индивидуальные консультации, поддержку и обучение этой технологии. Это может привести к созданию определенной ниши работы в вашей области знаний.

5. Вспомогательные каналы

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

оборота ire_and_curses
источник
21

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

Внесение кода в существующий проект - это также хороший способ узнать ваше имя. Чем больше вы вносите, тем больше у вас доверия при поиске работы по контракту.

Димитрий
источник
17

Вот пример.

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

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

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

стройное
источник
Работа по контракту нерегулярна и, по моему мнению, не является хорошим выбором карьеры. Кажется, лучше иметь либо зарплатную работу (надежную), либо стартап (азартная игра, но, по крайней мере, есть потенциальная отдача).
sixtyfootersdude
15

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

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

В большинстве случаев бизнес зарабатывает деньги, используя модель пчеловода . По сути, ваши участники с открытым исходным кодом могут бесплатно использовать ваши новейшие и лучшие продукты, в то время как ваши клиенты получают надежный, зрелый продукт. Red Hat, Novell и Sun используют варианты этой модели.

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

В-третьих, будучи студентом, вы должны серьезно рассмотреть вопрос о Google Summer of Code следующим летом.

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

Джейсон Бейкер
источник
10

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

Некоторые оплачиваются компаниями, которые заинтересованы в проекте с открытым исходным кодом. LWN.net опубликовал статью о том, кто платит разработчикам ядра Linux, например:

http://lwn.net/Articles/222773/

Оказывается, многие компании финансируют разработку ядра Linux, и не только дистрибьюторы Linux.

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

sleske
источник
7

Есть довольно много разных способов

  • Финансирование другой компанией (например, Google, который платит Гвидо ван Россуму за работу над Python половину своего времени)
  • Продажа услуг поддержки
  • Продажа консалтинговых услуг
  • Создание профиля для себя через open source, надеясь, что это приведет к другим вещам, таким как разговоры, авторство книг, получение хорошо оплачиваемой работы
  • Например, раскрутка коммерческой версии продукта для корпоративных клиентов.

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

олле
источник
6


Создайте веб-сайт о продукте с открытым исходным кодом (ваше приложение, форум, сайт поддержки и т. Д.) И разместите там несколько объявлений.

Это бы сработало.

Фриоль
источник
2
Конечно, вы могли бы заработать немного денег, но вы не могли бы зарабатывать на жизнь рекламой.
1
Хотя Google повезло с ними;)
Майкл Даррант
6

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

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

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

Джон Скит
источник
3
Я думаю, что вы достигли важного момента: вы не идете в открытый исходный код за деньги.
@ Бернард: Я предполагаю, что ваше заявление исключает Sun, Novell, Red Hat, Google, IBM, Apple и даже Microsoft?
Джейсон Бейкер
Нет, я имею в виду, как личность, никто не должен зарабатывать деньги. Не то чтобы это невозможно, или даже сложно или нежелательно.
@ Джейсон - я не думаю, что Microsoft когда-либо «заходила» в открытый исходный код.
Крис Латс
5

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

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

Марк Эмблинг
источник
4

Просто разработка проекта программного обеспечения с открытым исходным кодом, вероятно, не принесет вам много денег. Обеспечение премиум поддержки, настройки и т. Д. Можно. Я внес довольно неплохой вклад в развитие, разработав расширения и пользовательские сборки Firefox, Thunderbird, Red5 и нескольких других проектов с открытым исходным кодом. Большая часть того, что я создаю, также предоставляется сообществу разработчиков открытого исходного кода.

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

Джеральд
источник
3

Если вы действительно хотите зарабатывать деньги, создавая собственный проект с открытым исходным кодом, я думаю, что это довольно длинный путь. С другой стороны, есть много хорошо оплачиваемых рабочих мест, которые требуют работы с технологиями с открытым исходным кодом или разработки программного обеспечения с открытым исходным кодом в таких компаниях, как Red Hat, Sun, IBM, даже Microsoft.

Неманья Трифунович
источник
3

Ответ на ваш актуальный вопрос

есть ли деньги, которые можно заработать на разработке программного обеспечения с открытым исходным кодом, и как?

Это да, и есть разные способы. Если вы просто хотите стать разработчиком, то есть не начинать собственный бизнес, лучше всего начать с того, что вам нравится. Затем вы можете найти такие возможности: http://webapps.ubuntu.com/employment/canonical_GDOS/ (есть много таких в разных областях, MySQL, просто чтобы упомянуть другое «большое» имя).

Затем создайте свой профиль в LinkedIn и присоединитесь к группам OSS, соответствующим вашим навыкам и / или интересам.

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

Davide
источник
2

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

Я не думаю, что «Пожертвования» могут внести большие изменения, но они также имеют некоторое влияние.

Это хороший пример для шри-ланкийской компании, основанной на продуктах с открытым исходным кодом.

WSO2

Чатуранга Чандрасекара
источник
2

Есть две успешные, прибыльные компании с открытым исходным кодом, которые я знаю достаточно хорошо:

  • Программное обеспечение SleepyCat, пока оно не было куплено Oracle, зарабатывало деньги, поддерживая и улучшая Berkeley DB. Хотя у одного из основателей была дневная работа, у другого - нет, и у них было дюжина сотрудников.

  • Chez Scheme зарабатывает деньги, добавляя улучшения в свой компилятор и продавая версии своего компилятора с собственным кодом. Типичные улучшения могут включать в себя новый бэкэнд; более амбициозным недавним улучшением стал пакет потоков. Основатель (Кент Дибвиг) имеет дневную работу; Я не знаю, сколько у него сотрудников. Chez необычен тем, что интерпретатор имеет открытый исходный код, а компилятор - нет.

Cygnus и Red Hat продают как «поддержку», так и специализированные версии своего программного обеспечения, но программное обеспечение также раздается. Я не очень понимаю эту бизнес-модель.

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

Норман Рэмси
источник
Я думаю, что переводчик Chez Scheme бесплатный, но не с открытым исходным кодом. Я видел только двоичные файлы для интерпретатора Chez Scheme. И гугл не помог.
Шеннон Северанс
2

По своей природе вы, как правило, не можете напрямую зарабатывать на коде, поскольку он открыт. Вы можете использовать двойную лицензию, но это также может оттолкнуть сообщество OSS.

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

Или вы можете написать OSS, чтобы построить представителя и, надеюсь, получить контрактную / полную занятость на заднем плане.

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

Вы можете сделать это несколькими способами. Сейчас модель Freemium популярна.
В качестве альтернативы, поскольку другие опубликовали открытые исходные тексты, работа ограничена. Модель, которую я использую, заключается в использовании открытого источника на моем рабочем месте и внесении своего вклада обратно в основную линию. Вы должны иметь бай-ин от руководства, но это работает. Также помните в словах Столлмана Фри, как в Фридом

rh0dium
источник
1

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

Многие компании взимают с вас плату, когда вы приобретаете программное обеспечение, а затем держите свои двери в договорах на техническое обслуживание, в результате чего вы зарабатываете больше $$, чем если бы вы купили его 7 раз. Я знаю, что это, безусловно, тот случай, когда я работаю с некоторым проприетарным программным обеспечением, которому более 30 лет!

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

Миграция с открытым исходным кодом и из него, как правило, намного проще, чем проприетарные приложения, поскольку они чаще поддерживают открытые форматы. Проприетарные приложения обычно «отдают» услугу перехода на них и другие сервисы, чтобы вам было легче оставаться с ними.

Приложения O / S, как правило, сначала имеют более высокую кривую обучения, что в значительной степени требует контрактов на обслуживание, поэтому существует множество возможностей заработать $$

На мой взгляд, ни одна бизнес-модель не лучше, просто другая. Запатентованная модель просто более распространена.

KevinDeus
источник
1

Я вижу два вопроса здесь:

1) Как разработчики зарабатывают деньги.

Большинство разработчиков не делают это за деньги. Причин может быть много, но если мы сузим их, это сводится к 1) устранению зуда 2) к завоеванию доверия 3) к расширению знаний в этом конкретном языке / области.

2) Как бизнес зарабатывает деньги.

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

Кришна
источник
0

В настоящее время некоторые (многие?) Компании платят за разработку программного обеспечения с открытым исходным кодом, поскольку их бизнес основан на программном обеспечении с открытым исходным кодом или создан на основе программного обеспечения с открытым исходным кодом.

нейро
источник