
Как пользоваться чужим кодом?
Работа с кодом — задача не из простых. Зачастую мы ищем готовые программные решения для своего проекта, но можно ли их копировать без разрешения?
Веб-разработка
6815
4 мая 2021

Представим, что вам необходимо написать код. Есть два пути: погрузиться в язык программирования и несколько недель самостоятельно писать программу или за 20 минут найти в интернете уже готовый код, адаптировать его под свой проект и спокойно продолжить работу.
Первый вариант, безусловно, корректнет и полезен для развития ваших навыков программирования. Это идеальный вариант, который только можно представить. Второй вариант практичнее, поскольку вы затратите меньше ресурсов и сделайте задачи быстрее, но возникает вопрос — можно ли копировать чужой код и как это делать правильно?
Код — это интеллектуальная собственность
По закону код — это объект авторского права. Написав код, вы являетесь его автором, и никто не сможет лишить вас этого статуса.
Если вы работаете на компанию и пишете код для кого-то, то им могут владеть правообладатели или держатели исключительных прав, но вы все равно остаетесь автором кода. Ваши взаимоотношения с компанией, желающей получить права на использование вашего кода, скорее всего, будут прописаны в рамках трудового договора.
Почти у любого кода, размещенного в интернете, есть лицензия, которая описывает как, для каких целей и на каких условиях можно его использовать.

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

Организация по продвижению открытого ПО Open Source Initiative составила список популярных подтвержденных лицензий, которые помогут вам определить ваши права на использование кода:
GNU, General Public License (GPL)
Эта лицензия дает право распространения ПО, участия в его разработке или изменения различными способами при соблюдении этого правила: любые изменения программы, сделанные пользователем и распространенные им, должны иметь исходный код этих изменений.
Apache License 2.0.
Гибкая лицензия, которая дает право на безвозмездное, вечное, не эксклюзивное и глобальное использование ПО. Если вы распространяете код, вы должны указать имя разработчика.
BSD (Berkeley Software Distribution)
Используя эту лицензию, необходимо выполнить следующие условия: указать в документации, что в продукте используются разработки создателей оригинального программного обеспечения и не использовать имена (или названия) создателей этого ПО в рекламных целях без письменного согласия. Например, компания Apple использует преимущественно лицензии BSD.
GNU Lesser General Public License (LGPL)
Лицензия GNU дает больше прав, чем GPL. Главное отличие в том, что она позволяет использовать продукты LGPL в проектах, которые распространяются под другими лицензиями.
MIT license (Massachusetts Institute of Technology)
Лицензия разрешает использовать, копировать и модифицировать программное обеспечение на ваше усмотрение. ПО можно предоставлять бесплатно или даже продавать. По правилам этой лицензии ваше ПО должно сопровождаться лицензионным соглашением.
Лицензия схожа с BSD. Но в MIT можно использовать название продукта и имена создателей в рекламных целях. Под MIT распространяются X Window System (X11) и Ruby on Rails.

Как использовать код в своих целях
Использование чужого кода в процессе учебы
Если вы студент технического Университета, создавать собственный код бывает сложно, хотя и нужно, чтобы научиться. Проще всего скопировать чужой код из интернета, чтобы получить нужную оценку. Однако этот способ не является корректным, поскольку и дипломные, и курсовые работы проверяются на антиплагиат.
Если все сроки сдачи работ поджимают или вы не можете справить с заданием, попробуйте обратиться за помощью к преподавателю или однокурсникам. Такой жест оценят больше, чем попытки скопировать готовую работу. В противном случае постарайтесь использовать непопулярные имена для переменных и комментировать код в своем стиле. Так вы будете больше понимать принципы его работы и сможете ответить на вопросы преподавателей.
Использование чужого кода на работе
Многие работодатели уверены, что с вами достаточно заключить трудовой договор, и с этого момента всё, что бы вы ни создали на работе, будет принадлежать компании. Но это, как мы выяснили выше, абсолютно не так. Если работодатель не пропишет права на ваш код в трудовом договоре, он рискует, что одним днем вы превратитесь из его сотрудника в его злейшего конкурента.
За использование чужого кода в целях компании отвечает сам сотрудник, поскольку именно он получает зарплату за оригинальные программные решения. Поэтому обязательно отслеживайте источник кода и не забывайте уточнять, по какой лицензии он распространяется.
Использование чужого кода в целях бизнеса
Компании Google и Oracle судятся уже больше десяти лет. Причиной конфликта стало обладание Oracle правами на язык Java, который используется в экосистеме Android, принадлежащей Google. Корпорации не сумели договориться об условиях использования Java (точнее, его API), и Oracle подал иск почти на девять миллиардов долларов.
В случае с использования кода бизнесом риск повышается: нарушение бизнесом лицензий, авторских прав и исключительных имущественных прав грозит судебными разбирательствами. Судебные процессы не только отнимают уйму денежных средств, но и бьют по репутации компаний, замедляя процесс развития технологических продуктов во всем мире.

Читайте другие статьи

Вы работаете в IT и хотите стать наставником, но сомневаетесь, подойдет ли вам эта роль? Узнайте, что отличает успешного куратора и почему наставничество — не только помощь другим, но и важный шаг к собственному развитию в IT-сфере.
Веб-разработка
1964
17 дек. 2024

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

В мире веб-программирования такие теги, как body, div, table, являются одними из самых популярных и часто используемых, однако существуют недооцененные теги, которые не менее полезны и функциональны, и именно о них мы расскажем в этой статье.
Веб-разработка
6238
15 мая 2020
Получайте первыми свежие статьи из нашего блога прямо на вашу почту
Никакого спама. Только ценные и полезные статьи для вас!