Що повинен знати кожен розробник про юридичні питання? [зачинено]


80

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

Тепер я знаю.

Що ще я повинен знати, а ширше - що кожен розробник повинен знати про такі юридичні речі?

Ви можете відокремити співробітників, фрілансерів, авторів проектів з відкритим кодом (тощо) або дати більш широку відповідь.


11
Я стискаюся, коли чую: "Це відкритий код. Ви можете робити з ним все, що завгодно". Це просто неправда.
Джим

4
@Jim: Технічно проблема не в тому, що ти не можеш зробити, а в тому, що ти змушений робити після того, як робиш те, що хочеш.
Адам Беллер,

20
Я також скучаюся, коли бачу, що ліцензійна угода на 5000+ слів відображається в 4-рядковому текстовому полі з кнопкою "Я згоден" під ним.
NVRAM

7
І я ще більше стискаюся, коли вони очікують, що ви прочитаєте її кожен раз, коли вони випустять нову виправлену версію, щоб перевірити, чи є відмінності. Просто дай мені різницю, блін!
Стефано Боріні

6
Я взагалі дуже скучаюся.
j_random_hacker

Відповіді:


135

Дванадцять юридичних міркувань щодо розробки програмного забезпечення

  1. Програмне забезпечення захищено авторським правом, якщо воно стає доступним для широкої громадськості. Більше не потрібно розміщувати повідомлення про авторські права в додатку чи у вихідному коді. Власником авторських прав є автор (и) або компанія, яка платить автору (авторам).

  2. Авторське право на програмне забезпечення може бути призначене власником авторського права, або воно може бути збережене власником, а програмне забезпечення може бути надано користувачеві або користувачам ліцензією власнику.

  3. Бібліотеки, що використовуються в розробці, ймовірно, мають обмеження щодо їх використання та розповсюдження. GPL не робить бібліотеку загальнодоступною, а також той факт, що бібліотека постачається з платформою розробки. Ви повинні прочитати та зрозуміти ліцензію, перш ніж розповсюджувати свою програму. Деякі бібліотеки вимагають виплат роялті, хоча останнім часом це стає рідше.

  4. Позови щодо патентів на програмне забезпечення - це глупості. Звичайно, ви не повинні свідомо порушувати патент на програмне забезпечення. Однак існує невеликий, але реальний шанс, що якась компанія подасть на вас позов за порушення їх патенту. Це може статися, навіть якщо ви розробляєте своє програмне забезпечення самостійно, ви ніколи не чули про патент, а патент охоплює техніку, яка інтуїтивно очевидна і майже повністю не пов'язана з вашим програмним забезпеченням. Не можна багато чого зробити, щоб цього уникнути, враховуючи поточну політику USPTO, окрім придбання страховки. Хороша новина полягає в тому, що патентні тролі, як правило, подають до великих компаній із великими коштами.

  5. Якщо ви використовуєте співробітника або фрілансера для розробки програмного забезпечення, ви повинні письмово пояснити, кому належать авторські права на програму, включаючи вихідний код. Деякі фрілансери та компанії, що розробляють контракти, вважають вихідний код своїм майном, залишаючи компанію залежною від оригінального розробника (розробників). Це законно, якщо це передбачено угодою про розробку.

  6. Якщо у вас є співробітник, який розробляє програмне забезпечення «не вчасно», ви повинні чітко вказати, кому належить це програмне забезпечення, і яке програмне забезпечення працівник повинен мати можливість писати та розповсюджувати за межами компанії.

  7. Якщо ви - співробітник або фрілансер, що розробляє програмне забезпечення, перед початком розробки вам слід чітко вказати, кому належать авторські права на вашу програму. Крім того, ви повинні знати або уточнити, кому належить програмне забезпечення, яке ви пишете у свій час. Деякі компанії мають положення в трудових угодах, що вимагають права власності на будь-яке програмне забезпечення, написане розробником протягом періоду працевлаштування, будь то вдома чи на роботі. Багато компаній мають угод про неконкуренцію в трудових угодах, які обмежують програмне забезпечення, яке працівник може виробляти для розповсюдження за межами компанії. Іноді ці обмеження досить широкі.

  8. Торгова марка - це назва чи символ, а не саме програмне забезпечення. Якщо ви поширюєте програмне забезпечення, вам слід (а) переконатись, що назва вашої програми та її «марка» або дизайн імені не «заплутано схожі» з іншими програмами, та (б) зареєструвати свою торгову марку. Дата першого використання є важливою для вирішення конфліктів, тому вам слід задокументувати, коли програма вперше використовується в комерції.

  9. Коли ви називаєте програму, перевіряйте наявність зареєстрованих торгових марок, а також перевіряйте Google. Додаток із першим використанням імені може мати змогу прийняти ваше ім’я та торгову марку після того, як ваша заявка буде успішною, навіть якщо вона не зареєструвала торгову марку, а ви це зробили.

  10. Коли ви використовуєте або підписуєте контракт чи угоду, переконайтеся, що обидві сторони це розуміють. У трудовій угоді згадування будь-яких потенційно чутливих сфер може запобігти багатьом проблемам пізніше. У угоді про розробку, якщо обидві сторони знають, кому належить вихідний код, або хто відповідає за оновлення, або хто відповідає за технічне обслуговування тощо, що входить у проект розробки, тоді є значно менша ймовірність судового позову після заявки було завершено. У договорі про дистрибуцію переконайтесь, що дистриб’ютор розуміє обов’язки та строк угоди.

  11. Кожне нетривіальне додаток має помилки (або "міркування щодо дизайну" :-)). Будь-яка угода користувача чи угода про розповсюдження повинна чітко вказувати, що ви не несете відповідальності за програмне забезпечення, яке не містить помилок, і від вас не можна чекати виправлення всіх помилок. Поясніть чітко, що зміни, виправлення та оновлення здійснюються за вибором розробника (або з найкращих зусиль), і чітко поясніть, хто платить за виправлення та оновлення.

  12. Навіть після того, як ви проконсультуєтесь з юристом щодо угод про розробку та розповсюдження програмного забезпечення, вам слід прочитати угоди інших програмних компаній і подивитися, що їх юристи придумали.

  13. Я не юрист, і це не юридична порада.


4
Я прийняв цю відповідь, тому що вона була справді цікавою і не мала особливого погляду, оскільки її нещодавно додали. Не менш цікавою відповіддю є така: stackoverflow.com/questions/1396191/… . Звичайно, усі також згадували той факт, що консультація юриста є важливою.
marcgg

1
Цікавим спонукачем був і цей: stackoverflow.com/questions/1396191/… , посилаючись на деякі книги на цю тему.
marcgg

Some freelancers and contract development companies consider the source code their own property, leaving the company dependent on the original developer(s). This is legal if it's in the development agreement.Якщо ви, як фрілансер, не робите, вам краще доплатити. Якщо ви витрачаєте час на розробку чистої базової системи, чому б ви дозволили їм заносити її в якийсь салон, щоб отримати плоди? Ви вклали гроші в кодову базу, саме так ви змусите свої інвестиції окупитися. Також це дозволяє повторно використовувати загальну логіку в іншому місці для наступного клієнта.
Санки

1
@ArtB, бо вам уже платять?
Роб Фокс,

Враховуючи вибір між грошима і чимось, що зароблятиме гроші, перейміть виробника грошей над грошима. Довгостроковий бізнес буде того вартий. Це навіть дозволить вам пропонувати нижчі початкові ставки. Чорт, ви навіть можете продати кодову базу іншому розробнику! Якщо у вас немає місця, де можна отримати вищу норму прибутку, зайняти менше грошей і більше капіталу, це просто чудова бізнес-модель для незалежного підрядника.
Санки

28

Якщо є сумніви, зверніться до адвоката.


18
... і помилятися на стороні сумнівів.
Беска

2
Моя ідея також полягає в тому, що якщо ви знаєте деякі речі, ви зможете повільніше розповісти, коли потрібно буде зв’язатися з адвокатом. Як сказав Джим у коментарі до запитання, деякі люди думають: "Це відкритий код. Ви можете робити з ним, що завгодно".
marcgg

3
Коли сумніваєтесь, так. Але "сумнів" повинен бути достатньо малим, щоб нам усім не потрібно було тримати юристів. Будь-який розробник повинен мати розумне розуміння законодавства про інтелектуальну власність та чітке розуміння обмежень та зобов'язань, накладених загальними ліцензіями з відкритим кодом. Адвокати - за важкі питання.
Адам Яскевич,

1
@Adam - у законі навіть легкі запитання можуть стати "важкими", якщо хтось натягне на них суперечку ...
Ладья,

1
Ви не ходите до лікаря за кожне відчуття, не ходите до юриста з кожного юридичного питання. Кожен дорослий потребує досить дізнатися про медицину і закон , згідно з яким вони працюють , що це правда - і знати , коли ви дійсно робите необхідність виклику в професійної допомоги!
Том Свірі

26

Я не юрист, але з часом я зібрав кілька основних правил від юридичних осіб, якими ви можете заощадити час:

  • Ліцензія GPL є "копіюваною зліва" або "вірусною". Це означає, що будь-який написаний вами код, який залежить від компонента GPL, також повинен бути випущений під GPL. Хорошим правилом є те, що якщо вам потрібен компонент GPL для компіляції програмного забезпечення, ваше програмне забезпечення має бути випущено за ліцензією GPL.
  • Ви не зобов’язані надавати своє джерело, якщо не поширюєте програмне забезпечення. Наприклад, якщо ви запускаєте програмне забезпечення для внутрішніх цілей або на веб-сервері, вам не потрібно звільняти джерело. Ось чому Google не потрібно випускати своє програмне забезпечення, яке використовує бібліотеки GPL. Це було ключовим моментом у GPL v3.
  • LGPL (Бібліотечний або Малий GPL) вимагає від вас власного вихідного коду GPL лише у тому випадку, якщо ви включили бібліотеку, видалену LGPL, таким чином, щоб вона стала незамінною. Ваше власне програмне забезпечення не повинно бути GPL, якщо ви лише "користуєтесь" бібліотекою. Включення файлів заголовків та посилання на .dll/ .soз бібліотеки - це один із способів "використовувати" код LGPL без будь-яких зобов'язань, крім належного повідомлення про авторські права.
  • Ліцензія BSD (ліцензія Apache дуже схожа) дозволяє створювати комерційні розширення, що використовують компонент з відкритим кодом. Ось чому Apple вибрала FreeBSD замість Linux як ядро ​​для OSX.
  • MPL є дуже комерційним, оскільки Netscape вважав, що на момент написання ліцензії вони могли заробити гроші на Mozilla.

Часто допомагає зв’язатися з супровідником проекту з відкритим кодом. Вони найкраще можуть порадити вам про початковий намір ліцензії, а також про власні думки щодо відкритого коду. Іноді супровідники готові випустити програмне забезпечення за кількома ліцензіями, щоб допомогти вам. Часто це не так. Залежить від особи, якій належать авторські права.

Проект KDE має зручну матрицю


1
Гаразд, ми всі знаємо, що відповіді на запитання адвоката (сподіваємось) є здоровим глуздом, коли справа доходить до деталей. Окрім цього, це чудова підсумкова відповідь ... Лише матричне посилання KDE є дуже зручним посиланням!
Ogre Psalm33,

2
Одне виправлення до першого пункту: лише якщо "залежить від" передбачає зв'язування (динамічно чи статично) коду GPL з виконуваним файлом вашої програми або іншим чином хитромудро зв'язуючи програми між собою (наприклад, дампи пам'яті). Якщо ви пишете власну програму для Linux, яка використовує grep і працює лише з версією GNU, ви все одно повинні бути добре, доки код grep не буде у вашому виконуваному файлі. IANAL, правда.
Майкл Екстранд,

Інший момент щодо GPL полягає в тому, що він застосовується лише до програмного забезпечення, яке ви поширюєте. Якщо ви запускаєте його на власних серверах, це не автоматично GPL'd.
mpeters

> LGPL (Бібліотечний або Малий GPL) вимагає від вас власного вихідного коду GPL лише в тому випадку, якщо ви включили бібліотеку, видалену LGPL, таким чином, щоб вона стала незамінною. Ніколи про це не чув. Де я можу прочитати більше?
Esben Skov Pedersen

2
Посилання на зручну матрицю більше не повертає зручну матрицю.
oob

8

Я думаю, що Ви шукаєте Юридичний посібник з розробки веб-програм та програмного забезпечення Стівена Фішмана.

текст заміщення

Огляд

Дивовижна книга! Відповідає майже на кожне юридичне запитання, яке ви можете собі уявити, і на якесь, про яке ви б ніколи не думали. - Джон Дворжак, журнал ПК

Охоплює кожну уявну деталь, важливу для такого швидко зростаючого та нематеріального середовища. - Підприємець

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

Опис продукту

Захистіть свої права та свою важку працю!

Закони, що стосуються розробки веб-сайтів та програмного забезпечення, є складними та заплутаними, але якщо ви їх не розплутаєте, це може коштувати вам тисяч доларів гонорарів адвокатів та судових позовів.

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

Скористайтеся Юридичним посібником з розробки веб-програм та програмного забезпечення, щоб дізнатися:

  • який правовий захист вам потрібен
  • сильні сторони та обмеження кожного виду захисту
  • як уникнути порушення
  • які положення вам потрібні при складанні угоди
  • як отримати дозвіл на використання чужих матеріалів

Ви знайдете повні покрокові інструкції для складання:

  • трудові договори
  • договори підрядника та консультанта
  • угоди про розвиток
  • ліцензійні угоди

П’яте видання Юридичного посібника з розробки веб-програм та програмного забезпечення повністю оновлене з урахуванням останньої судової практики та законодавчих змін.

Деякі інші пропозиції:


4

Якщо фрілансер або підрядник: переконайтеся, що у вас є хороша страховка відповідальності та знаєте, що на неї поширюється.

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


3

Для співробітників: ми повинні мати можливість дати перший рад вашим клієнтам - наприклад, чи можуть вони / ми використовувати потрібний нам компонент у своєму застосуванні?

Для фрілансерів: ми повинні бути в змозі дати настійну пораду вашим клієнтам; і вибрати, які компоненти ми можемо використовувати для програм, які ми розробляємо для них.

Звичайно, ваше слово не так добре, як поради юриста; але ви вже можете допомогти у першому турі; наприклад, сказати "ми точно не можемо цим скористатися, бо це означало б ..."
Зрештою, адвокат знатиме багато про кутові справи - але якщо ви можете трохи допомогти ...


Для співпрацівників OSS: знання деяких відмінностей між безкоштовними ліцензіями може мати значення, якщо вам цікаво, що люди можуть робити з вашим кодом (перерозподіляти? Модифікувати? Використовувати його в комерційній програмі? Використовувати в власній програмі?)


3

Одна з відповідей стверджувала, що закон не такий, як кодекс. Я не погоджуюсь.

У перші дні IBM платила програмістам за інструкцією. (Хтось, кого я знав, сказав, що він працював із програмістом, який таким чином збагатився. Очевидно, хлопець не знав, як користуватися індексним регістром машини; він написав процедуру нуль пам'яті, яка вручну зберігала нуль у кожній адресі пам'яті.)

Також був час (давно), коли адвокатам платили за слово. Це сприяло популяризації таких практик, як звернення до людей як до "найбільш шанованих таких-то" та інших багатослівностей.

Я щойно прочитав відповідь на SO, де VB.NET 2008 все ще дозволяє номери рядків . Ви все ще можете запустити чистий DOS на сучасному ПК. І в жарті є багато правди, що всі програми COBOL відхиляються від загального предка шляхом поступових змін. У нашій галузі поширена зворотна сумісність та "історичні причини".

Це можна порівняти із сферою права. Є закони, які вносять незначні (або великі) зміни до інших законів. У вас є певна залежність. Є кілька смішних історичних законів (у Гобарті, Тасманія, заборонено чоловікові одягати жіноче плаття після заходу сонця - адже колись засуджені одягалися як жінки та грабували людей), які ніхто не мріяв би виконувати, так само, як у програмному забезпеченні є деякі історичні особливості, якими більше ніхто не користується.

Закони часто мають ненавмисні наслідки (помилки!), Використовуються творчо (хаки!), Містять лазівки (уразливості безпеки!), Деякі з яких є навмисними (бэкдори!), Змінюються (виправлення!) Або скасовуються (видалення!) .

Так, закони (на відміну від кодексу) підлягають тлумаченню. Але я думаю, що це схоже на обслуговування коду. Це допомагає пристосувати закони до нових соціальних норм.

Щоб відповісти прямо на запитання: кожен розробник повинен знати, що закон - це, схоже, на смішно величезний програмний проект, який розроблявся сотні років. (Насправді кожна країна має свій власний проект, і вони вирішують проблеми по-різному.) Теоретично, прочитавши ліцензію, ви зрозумієте, що можна, а що не можна робити зі своїм кодом. Але якщо грамотний програміст не може помітити всі помилки в своєму коді, лише прочитавши його, то який шанс у не-юриста проаналізувати кутові справи та сірі області юридичного документа?

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



1

Я відповів би на це так само, як і "що кожен юрист повинен знати про програмування?" Тобто знайте, що жодним чином ви не можете знати глибинне поле настільки добре, щоб зробити більше, ніж найпростіші речі. Отримайте експерта.


Але завжди корисно мати базові знання про це, щоб заощадити гроші та як би побачити, що з’явиться юридична проблема, як ви не думаєте?
marcgg

Абсолютно. (І я через це проголосував за питання.) Але я думаю, що найголовніше питання полягає в тому, що на початку процесу навчання для нової концепції люди часто отримують хибне уявлення про те, скільки вони знають ... і лише пізніше вони виявіть, наскільки глибшим і тоншим є поле. Це може бути небезпечним у багатьох сферах, і законодавство однозначно не є винятком. Я хотів би знати якомога більше, щоб я міг розпізнати червоні прапорці, щоб передати їх експерту для аналізу.
Беска

1

Ви повинні знати основні права та обов'язки ліцензії, яку ви збираєтесь використовувати. Це не так складно, і навіть якщо їх багато, потрібно уважно читати лише ті, кого ви збираєтесь використовувати або доторкнутися. Просто прочитайте їх, у більшості випадків вони цілком зрозумілі.

Все, що вам може знадобитися, це залежить. Патентування? Торгові марки? Якщо вам потрібні ці речі, швидше за все, ви перебуваєте в компанії і у вас є юридичний відділ, який зробить це за вас.


1

Я завжди міг би припустити, що розробники проекту хочуть, щоб будь-яке програмне забезпечення, що використовує їх роботи, випускалося за точно такою ж ліцензією. Прочитайте їх поширені запитання та юридичні сторінки, щоб отримати додаткову інформацію, і не соромтеся зв’язуватися з розробниками / супровідниками, якщо ви все ще не впевнені.

Якщо ви хочете допомогти зрозуміти деталі ліцензійної угоди, поговоріть з юристом.


1
  1. Не працюйте в країні, де більше юристів, ніж розробників.
  2. Надзвичайно великий відсоток усіх (американських) патентів на програмне забезпечення є фальшивими, але ви не можете платити або чекати, поки їх визнають недійсними.
  3. Якщо ви хочете використовувати / розробляти програмне забезпечення з відкритим кодом, використовуйте існуючу ліцензію і не змінюйте її. Не наближайтесь до меж того, що повинна означати ліцензія.


0

6.Якщо у вас є працівник, який розробляє програмне забезпечення "не в режимі", ви повинні чітко вказати, кому належить> це програмне забезпечення, і яке програмне забезпечення працівник повинен мати можливість писати та розповсюджувати за межами компанії.

право на свободу слова, як це зазначено в більшості конституцій (зокрема, якщо розробники роблять безкоштовні безкоштовні сеанси без вихідних), може спричинити жахливі збої в судах


-1

Закон не схожий на кодекс. Це не дуже чітко визначений набір кроків і правил, які можна однозначно зрозуміти.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.