Что такое открытый код программы

Содержание

Sam B.

Sam B. Last updated Jun 17, 2014

Read Time: 4 min

Проекты с открытым исходным кодом доступны везде, в Интернете, на вашем компьютере и на вашем мобильном телефоне. В этой статье мы рассмотрим:

  • Определение открытого исходного кода
  • Популярные примеры проектов с открытым исходным кодом
  • И как принять участие в проекте с открытым исходным кодом

1. Что такое ПО с открытым исходным кодом?

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

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

мой исто4ник всегда открыт для тебя

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

Давайте начнем с рассмотрения некоторых популярных примеров ПО с открытым исходным кодом. Вы можете быть удивлены огромным объемом проектов с открытым исходным кодом, а также некоторыми компаниями, стоящими за этими проектами, такими как Google и Automattic.

2. Популярные примеры

Доступны миллионы проектов с открытым исходным кодом. Ниже приведен список некоторых очень популярных и примечательных примеров.

  • WordPress, одна из самых популярных систем управления контентом в Интернете, используется миллионами людей.
  • PHP — самый популярный язык веб-программирования в Интернете, включающий Facebook и более 80% Интернета.
  • Audacity — это бесплатный, простой в использовании многодорожечный аудиоредактор и рекордер.
  • OpenOffice — это бесплатная альтернатива Microsoft Office.
  • Проект Android Open Source является официальной мобильной операционной системой в качестве проекта с открытым исходным кодом.
  • Операционная система Firefox — это мобильная операционная система, разработанная и поддерживаемая Mozilla.

3. Как это работает

Проект с открытым исходным кодом обычно включает три этапа. Давайте быстро рассмотрим каждый этап.

Этап 1. Содействие

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

Почему OPENSOURCE — двигатель ПРОГРЕССА? — Научпок

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

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

Если вы ищете вдохновение в проекте, над которым нужно начать работать, всегда есть много интересных проектов, особенно если вы смотрите на сайтах, таких как GitHub, SourceForge и Google Code.

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

Этап 2: фиксация

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

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

Этап 3. Распространение

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

В итоге

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

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

Источник: code.tutsplus.com

Open Source Guides: Запуск проекта с открытым исходником

Пару месяцев назад на Гитхабе случайно наткнулся на ссылку «Open source guides» и не мог оторваться. Где-то за неделю я внимательно прочитал все 10 разделов.

Конечно, я и раньше знал про open source: читал разные статьи (например, «Понять Open Source»), использовал такие проекты в работе, обращался с вопросами к сообществам, сообщал о багах, рыскал в issues и, даже делал неуклюжие попытки что-то улучшать, хотя бы документацию. И само собой, сердцем я был с этими ребятами, которые делятся софтом и знаниями по его использованию. Тем не менее, понятие об open source у меня было скорее смутное и обрывочное. А эта статья добавила ясности.

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

Вне зависимости от вашего отношения к open source, думаю, вы найдёте в этой серии из 10 статей много интересных идей и фактов: организационных, психологических, юридических, этических и технических.

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

Читайте также:
Партнерские программы как это работает

Само это руководство также является open source и уже переведено на 14 языков. Мне выпала честь добавить русскую ветку и перевод первой статьи. Я планирую и дальше переводить по статье в неделю. Если кто хочет подключиться, вот репозиторий: Open Source Guides.

Если вдруг кому-то понадобится заставка из шапки статьи (иллюстрации + русские названия), то она есть в сверстанном виде на codesandbox.io.

Подбор терминов

Я заранее извиняюсь за огрехи в переводе. Некоторые, казалось бы банальные термины, не так легко подобрать на русском. Например, to contribute, pull request, issue, я чаще переводил как «участвовать в проекте, предлагать исправления и вопрос». Open source я пока оставил на английском. Мне уже сделали замечание и выслали ссылку на словарь терминов Гитхаба. Мне не понравилось там обилие транслитерация.

Если пустить в статью все эти ишью, пулреквест, пуш, пул, форк, то она станет непонятной для всех, кто не работал с Гитхабом.

Да, issue может быть вопросом, задачей, сообщением о баге, предложением и т.д, и трудно подобрать одно русское слово, которое бы передавало все эти смыслы. Но английское слово issue тоже без особо широкого смысла, просто создатели и пользователи Гитхаба наделили его такой широтой.

Если мы будем под словами «открыть вопрос на Гитхабе» подразумевать, что этот вопрос может быть очень разным (баг, вопрос, просьба о помощи, задача, . ), то слово «вопрос» гармонично заменит слово «issue». Также — push — отправить, pull — принять, fork — ответвление и т.д. Важно не само слово, а тот смысл, который мы условились вкладывать в него.

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

Оглавление

Открытый исходный код: что это и зачем?

Итак, вы думаете о запуске своего проекта с открытым исходным кодом (open source)? Поздравляем! Мир ценит ваш участие. Давайте поговорим о том, что такое open source и почему люди это делают.

Что означает «open source»?

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

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

Свободное ПО (Free software) ссылается на те же проекты, что и открытое ПО (open source). Иногда вы можете встретить комбинации этих терминов: «Свободное и открытое ПО» (free and open source software FOSS или free, libre, and open source software FLOSS). Слова free и libre здесь означают «свободное», а не «бесплатное».

Почему люди делают свою работу открытой?

Есть много причин почему индивид или организация открывают исходники своего проекта. Вот некоторые из них:

  • Сотрудничество: Open source проект может получать доработки от любого человека из любой страны мира. Например, платформа для упражнения в программировании Exercism, делается усилиями 350 авторов.
  • Адаптация и ремиксы: Open source проект может быть использован кем угодно, почти для чего угодно. Люди могут использовать ваш проект совершенно по-новому. WordPress, например, стартовал как ответвление уже существовавшего проекта b2.
  • Прозрачность: Любой может проверять open source проект на ошибки и несоответствия. Прозрачность важна даже на государственном уровне. Например, правительство Болгарии и США законодательно предписали прозрачность для таких отраслей как: банковское дело, здравоохранение, и ПО безопасности, вроде Let’s Encrypt.

Open source — значит бесплатно?

Бесплатность open source — это одно из его самых больших преимуществ, но не единственное, а скорее — побочный продукт его совокупной ценности.

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

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

Стоит ли мне запускать свой open source проект?

Краткий ответ — да, потому что независимо от результата, запуск своего проекта — это хороший способ понять, как работает open source.

Если вы никогда прежде не запускали подобных проектов, вы можете переживать: «что скажут люди?», «а вдруг вообще никто его не заметит?». Если вам это знакомо, не беспокойтесь, вы не один такой!

Open source, как и любая творческая работа, будь то писательство или рисование, вызывает волнение прежде чем поделиться ей с миром. Но единственный способ улучшить её — практиковаться, даже если у вас не будет аудитории.

Если вы ещё не решились, найдите время подумать о ваших возможных целях.

Постановка целей

Цели помогут вам определиться, над чем работать, от чего отказаться, и где вам понадобится помощь со стороны. Спросите себя: «зачем я опенсорсю этот проект?».

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

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

По мере роста проекта ваше сообщество будет нуждаться не только в коде. Ответы на вопросы (issues), проверка кода, распространение информации о себе — всё это важные задачи open source проекта.

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

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

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

Участие в чужих проектах

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

Если вы не понимаете, как начать участие в чужом проекте, ознакомьтесь с нашим руководством Как участвовать в open source проекте.

Запуск собственного open source проекта

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

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

Каждый проект вне зависимости от стадии, на которой вы решили открыть исходники, должен иметь следующую документацию:

  • Лицензию open source
  • README
  • Руководство для участников
  • Кодекс поведения

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

Выбор лицензии

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

Читайте также:
Квант программа управления отзывы

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

MIT, Apache 2.0, и GPLv3 — это самые популярные лицензии, но есть и другие варианты для выбора.

Когда вы создаёте новый проект на Гитхабе, вам дается на выбор несколько лицензий. Выбрав open source лицензию, вы сделаете свой проект — открытым.

Выберете лицензию

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

Составление README

Файл README («прочитай меня») не только рассказывает, как использовать ваш проект, но и объясняет, почему он важен, и что пользователи могут с ним делать.

Постарайтесь ответить в README на следующие вопросы:

  • Что делает этот проект?
  • Чем этот проект полезен?
  • Как я могу начать работать с ним?
  • Где я могу получить помощь, если понадобится?

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

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

Написание руководства для участников

Файл CONTRIBUTING говорит вашей аудитории, как стать участником вашего проекта. Например:

  • Как сообщить об ошибке (попробуйте использовать шаблоны для issue и pull request)
  • Как предложить новую функцию
  • Как настроить среду выполнения и запустить тесты
  • Какого рода участие вы ждёте?
  • Ваши планы и видение развития проекта
  • Как участники могут (и не могут) связываться с вами

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

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

Со временем вы можете дополнить его ответами на часто задаваемые вопросы. Благодаря этому меньше людей будут спрашивать вас об одном и том же снова и снова.

Поставьте ссылку на файл CONTRIBUTING внутри README, так больше людей увидят его. Если вы разместите файл CONTRIBUTING.md в корне вашего проекта, то Гитхаб будет автоматически ссылаться на него, когда кто-то открывает новый вопрос (issue) или добавляет правку в проект (pull request).

руководство по сотрудничеству

Разработка кодекса поведения

В итоге, кодекс поведения задаёт базовые правила поведения для участников вашего проекта. Это особенно важно, если вы запускаете проект для компании или сообщества. Кодекс поведения способствует установлению здорового, конструктивного поведения в сообществе, что снижает стресс для вас, как для ответственного за проект.

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

По аналогии с лицензией, вам не обязательно писать кодекс самим, а можно скопировать один из существующих вариантов. Соглашение участника используется в более 40,000 open source проектах, включая Kubernetes, Rails, и Swift. Какой бы кодекс вы не использовали, вы должны быть готовы применить его при необходимости.

Поместите файл CODE_OF_CONDUCT.md в корень вашего проекта, так его будет проще находить и ссылаться на него, например, из README.

Именование и брендирование вашего проекта

Брендирование — это не только броский логотип и запоминающееся название, но и то, как вы говорите о своём проекте и до кого доходит ваше послание.

Выбор правильного названия

Выберите название, которое легко запомнить и, в идеале, даёт представление о сути проекта. Например:

  • Караул оповещает о падении приложения.
  • Дрищ быстрый и простой веб-сервер на Ruby.

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

Конфликт имён

Проверьте наличие open source проектов с таким же названием, особенно если вы используете один и тот же язык или экосистему. Если ваше название совпадёт с популярным существующим проектом, вы можете запутать свою аудиторию.

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

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

Вы можете проверить конфликт брендов по всемирной базе брендов WIPO. Если вы делаете проект от лица компании, то юридический отдел может помочь вам с этим.

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

То, как вы пишите (и кодите) тоже влияет на ваш бренд!

За всю жизнь проекта вы будете много писать: README, руководства, документы сообщества, ответы на вопросы, возможно даже информационные бюллетени и списки рассылки.

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

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

Не только слова, что вы пишете, но и стиль кода может стать частью бренда вашего проекта. Angular и jQuery два примера проектов со строгими стилями и рекомендациями.

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

Проверочный лист перед запуском

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

Документация

  • В проекте есть файл LICENSE с лицензией open source
  • В проекте есть базовая документация (README, CONTRIBUTING, CODE_OF_CONDUCT)
  • Название легко запоминается, даёт представление о сути проекта, не конфликтует с существующими проектами и не посягает на торговые марки.
  • Список задач (issues) актуальный, хорошо организованный и помечен ярлыками

Код

  • Проект использует согласованные договорённости по коду и понятные названия функций/методов/переменных
  • Код понятно комментируется, документируются замыслы и особые случаи.
  • Нигде нет чувствительных данных вроде паролей или другой не публичной информации — в истории ревизий, вопросах (issues) и запросах на правки (pull requests).

Люди

Если вы частное лицо:

  • Вы поговорили с юридическим отделом и/или поняли правила интеллектуальной собственности и политику open source вашей компании (если вы где-то трудоустроены)
  • Вы поговорили с юридическим отделом
  • У вас есть маркетинговый план для запуска и продвижения проекта
  • Кто-то назначен ответственным за взаимодействие с сообществом: отвечать на вопросы (issues), проверять запросы на правки (pull requests) и присоединять их к проекту
  • Как минимум два человека имеют административный доступ к проекту

Вы сделали это!

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

  • Open source
  • GitHub
  • Управление проектами
  • Брендинг
  • Бизнес-модели

Источник: habr.com

Разработка программ с открытым исходным кодом: плюсы и минусы

Перевод статьи «The Pros and Cons of Open Source Software Development».

Проекты с открытым исходным кодом

Многие разработчики являются горячими сторонниками проектов с открытым исходным кодом, и не без причины: они сами пользуются ими ежедневно для ускорения своей работы. Есть множество успешных примеров open source решений, например, операционная система Linux или JavaScript-библиотека React. Они отлично сделаны, а работать с таким высококачественным кодом — отдельное удовольствие.

Читайте также:
Какая программа предназначена для создания несложных презентаций и flash анимаций

Давайте рассмотрим подробнее, что такое open source и каковы плюсы и минусы работы над проектами с открытым кодом.

Что такое Open Source?

Термин «open source» («открытый исходный код») возник в индустрии разработки программ. Open Source это нечто такое, что каждый может изучать, модифицировать и распространять. Это особый подход к созданию компьютерных программ, прославляющий сотрудничество, открытость и разработку, где во главе угла стоит сообщество.

Для защиты всех участников процесса (как тех, кто пишет код, так и тех, кто его использует), собственник проекта может использовать лицензию Creative Commons. Лицензия Creative Commons (CC) разрешает всем желающим распространять и использовать вашу работу, а также создавать на ее основе что-то свое.

Программное обеспечение с открытым кодом обычно является свободным, т. е., разработчики имеют доступ к исходному коду программы. Они могут улучшить производительность программы, добавить функционал, исправить ошибки. Среди примеров программ с открытым кодом можно назвать LibreOffice, Mozilla Firefox, Chromium.

Но есть и коммерческое программное обеспечение («ПО с закрытым кодом»). Исходный код в таких программах могут читать или изменять только его собственники. Среди примеров такого ПО можно называть продукты Microsoft, Adobe и Apple.

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

Каковы преимущества открытого кода?

Преимущества личного характера

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

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

Признание в сообществе

Ученые и врачи делятся опытом путем написания научных статей и участия в научных конференциях. UI/UX дизайнеры делятся опытом на Behance или Dribbble. Писатели издают свои книги или выкладывают их на онлайн-платформах. Музыканты и кинематографисты представляют свои работы миру при помощи различных стриминговых сервисов.

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

Работая над проектами с открытым кодом и запуская их, вы можете получить признание в сообществе разработчиков. Можно, например, создать хороший профиль на GitHub или принимать участие в различных мероприятиях, таких как Hacktoberfest.

Как open source разработчик, вы можете получать какие-то скидки, возможность посещать разные мероприятия бесплатно, а также пользоваться качественной инфраструктурой для запуска ваших проектов. Но работа над открытым кодом не только позволяет вам экономить. Она также вдохновляет вас использовать все самые лучшие доступные вам инструменты в ваших проектах.

Открытая калитка

Самореклама

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

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

Чувство значимости

Нет смысла скрывать: выгорание представляет собой опасность и для разработчиков, и для HR-стратегий компаний. Если вы собственник компании, вы можете мотивировать своих сотрудников участвовать в разработке проектов с открытым кодом. Таким образом вы покажете им, что их работа является ценной. Когда люди занимаются open source проектами, они знают, что работают не только ради денег, но и создают нечто важное для широкого сообщества разработчиков.

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

То же касается и самозанятых разработчиков. Участие в open source сделает вашу работу значимой, в результате с течением времени у вас не появится отвращения к ней.

Качество ПО

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

Даже код, написанный одним-единственным разработчиком, часто бывает более качественным, если этот код открыт. Когда вы пишете код, который смогут увидеть только ваши коллеги, вы можете не особо заботиться о стиле. Но при написании кода, доступного всем желающим, вы сделаете все, чтобы не выглядеть code monkey.

Безопасность данных

Для разработки собственных приложений стоит использовать ПО с открытым кодом, потому что оно более защищенное. Сообщество быстро находит дыры в безопасности и сообщает о них собственнику ПО, а он оперативно все исправляет (обычно сразу же).

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

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

Кастомизация

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

Каковы «минусы» открытого кода?

Открытые ворота

Недостатки коммуникации и недопонимание

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

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

Опасность для бизнеса

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

Почему Open Source это правильно

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

Кроме того, согласно опросам Tidelift и The New Stack, 84 процента разработчиков используют открытый исходный код в своей профессиональной деятельности. Пользуясь чужим опытом и знаниями, почему бы вам не поделиться своими?

Если нам нравится пользоваться преимуществами open source, будет правильным решением отплатить добром сообществу.

Принимайте участие в Open Source разработке!

Не знаете, с чего начать? Сделайте ваш GitHub-репозиторий публичным и расскажите о нем миру в своем блоге, социальных сетях и на форумах разработчиков. Зарегистрируйтесь на Hacker News — там «зависает» много участников open source движения.

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

Источник: techrocks.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru