TGViewer
Библиотека Go-разработчика | Golang Библиотека Go-разработчика | Golang @goproglib · 24.1K subscribers
Post #7088 3.02K
🥸 Чужой код, свои руки

Один из самых частых вопросов от начинающих разработчиков:
Я переписал своими руками. Это теперь моё?


И один из самых опасных мифов в нашей профессии.

Что такое авторское право на код


Код защищается авторским правом автоматически в момент создания. Не нужна регистрация, не нужен значок ©. Человек написал функцию и она его.

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

Миф о переписывании

Логика звучит разумно: «Я не копировал, я написал сам, значит нарушений нет.»

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

Если вы смотрели в репозиторий, а потом переписали своими словами, то это не clean room. Это производная работа. И она всё ещё подпадает под лицензию оригинала.

А если вы вообще не смотрели в код?

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

Вот здесь важно понимать, какая лицензия стоит на оригинале.

MIT и Apache 2.0 разрешают почти всё, включая коммерческое использование, при условии сохранения уведомления об авторских правах. Можно брать код, менять его и включать в закрытый продукт. Тут переписывать вообще смысла нет. Проще взять напрямую и указать автора.

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

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

Что это значит


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

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

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

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

📍 Навигация: Вакансии • Задачи • Собесы

🐸 Библиотека Go-разработчика

#GoTalk
  • 👍 9
  • 🌚 1
More from @goproglib
  1. Sep 30, 2026🧑‍💻 Эмулятор AWS-сервисов Kumo — это небольшой инструмент на Go для локальной имитации A…
  2. Sep 29, 2026👨‍💻 Библиотека для написания LSP-серверов Написать свой Language Server с нуля на Go сло…
  3. Sep 28, 2026🤔 Вопрос с собеседования по Go Что выведет программа? ❤️ — 1 true / 0 false 🔥 — 1 true /…
  4. Sep 28, 2026👩‍💻 Что на самом деле происходит внутри Go map? После Go 1.24 обычный map внутри работае…
  5. Sep 26, 2026🔥 В Go 1.27 появился portable SIMD До этого SIMD-оптимизации в Go требовали архитектурног…
  6. Sep 25, 2026🤡🤡 📍 Навигация: Вакансии • Задачи • Собесы 🐸 Библиотека Go-разработчика #GoGiggle
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →