Чи можу я використовувати ліцензію MIT, щоб надати деякий свій попередній письмовий код роботодавцю, щоб я захистив себе і не втратив авторські права?


17

Моя ситуація:

  • Я написав рамки ще до того, як розпочав нову роботу. Я володію авторським правом.

  • У ній є купа логіки котлована, як і будь-яка програма. (Да!)

  • Я не хочу використовувати весь фреймворк у своїй новій роботі, але мені потрібно повторно використовувати деякі його частини в аналогічних рамках, які я будую для своєї нової роботи.

  • Недоцільно повторно реалізовувати / переосмислювати всю логіку з нуля. Логіка багато, і логіка - це логіка, ви не можете зробити її сильно різною. Наприклад, скільки різних версій HashMap можна кодувати? Надіюсь, вони будуть дуже схожими, і третя версія може стверджувати, що ви порушили авторські права на першу версію. :(

  • Непрактично намагатися переосмислити API. Чи можете ви переосмислити API HashMap? Може бути , ви можете змінити put(k,v)до add(k,v), але не набагато більше , ніж це.

Моя ідея захистити себе і свій попередній код:

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

Мої запитання:

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

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

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

Примітки:

  • Я перерахував цю рамку як попередній винахід ще до того, як розпочати роботу.

  • Я ніде не випускав цей код. Це на моєму приватному репортажі SVN, яке я розміщую на своєму приватному сервері.

Моя ідея в двох словах:

  • Мій план полягає в тому, щоб зберегти попередній код для себе, використовувати його частини в цій новій рамці, яку я будую для роботодавця, і скажу роботодавцю, що це робота, отримана з ліцензованої рамки MIT, яку я кодував раніше і нікому не поширював ». Я не змушений розповсюджувати програмне забезпечення, яке я кодував під ліцензією MIT, чи не так? Якщо пізніше виникне якийсь юридичний позов (сподіваюсь, що ні), я можу негайно вставити ліцензію на всі джерела та показати / випустити код.

Відповіді:


21

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

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

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

Кілька ключових речей з більшістю ліцензій з відкритим кодом (включаючи BSD, MIT, GPL) для власників авторських прав:

  1. Ліцензія не змінює ваше право власності на авторські права. Це неексклюзивна ліцензія, а не передача або конфіскація права власності. Використання ліцензії на ОС не означає "щось ставити у загальнодоступне надбання", хоча це, безумовно, один підхід до відкритого коду.
  2. Ніщо не «змушує» вас, власника авторських прав, будь-яким чином оприлюднювати код лише тому, що ви додаєте до нього ліцензію.
  3. Але якщо ви використовуєте ліцензію на ОС, ви не можете перешкодити будь-кому, хто «отримує» ваш ліцензований ОС код, жодним чином не оприлюднювати його, що явно в межах їхніх прав відповідно до всіх цих ліцензій.
  4. Копілефтські ліцензії (наприклад, GPL) вимагають від одержувачів (але не власників) оприлюднювати свої похідні роботи відкритими та відкритими. Вседозволеного (MIT, BSD) не мають. (це може бути трохи спрощенням, але це суттєва різниця)
  5. У більшості ліцензій з відкритим кодом (наприклад, MIT) не існує пункту "повернення", тому щойно хтось "отримав" ваш код, він має право використовувати його постійно, відповідно до ліцензійних умов, за яких вони його отримали.
  6. Ви завжди можете поширювати майбутні версії свого коду за іншою ліцензією або зберігати їх повністю у власності. Це не заважає комусь починати з вашої попередньої версії з відкритим кодом (припускаючи, що вони "її отримали") і додавати свої нові деталі та розповсюджувати її.
  7. Ви можете видалити канал "отримання" для попередніх версій вашого коду, наприклад, зняти його з github. Однак, як уже згадувалося, це не заважає іншим використовувати або розповсюджувати будь-які попередні версії, які ви відкрили, будь-яким чином.

Виходячи з цього, я перейду до ваших питань.

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

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

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

Моя остаточна мета - мати можливість використовувати похідну версію моєї попередньої кодованої рамки без втрати авторських прав на неї.

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

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

Для (A) та (B) ви можете змусити їх підписати або письмово домовитись про те, що посилається на ліцензію або включає цю інформацію, і вони розуміють, що ви вносите код у таблицю за цими умовами. Щодо (С) я не впевнений, яким би був стандартний спосіб цього зробити, але бути логічним. Якщо він не дуже масова, ви можете просто роздрукувати код і включити його в додаток у копіях договору, який підписуєте і ви, і ваш роботодавець. Зберігайте свою копію з підписом на ній. Якщо він занадто великий, щоб практично надрукувати, здається, що хед md5 стане тут корисним. Можливо, ви могли б посилатися на це як на кшталт "zip-файлу з іменем X у приватному сховищі github /, (або ftp-сайту тощо), який має хеш md5 XXXXXX ... і був надісланий електронною поштою компанії Y, що репрезентує Z дата". Тоді ви можете надіслати це електронною поштою своєму менеджеру або їх адвокату або комусь із вашого особистого облікового запису електронної пошти, і навіть якщо вони видалять свою копію, ви все одно зберігаєте свою, і вони не можуть стверджувати, що ви передбачили майбутній хэш-код md5, який ще не написаний . Це теоретично заважало б їм не вимагати нічого іншого в дорозі.


Це приголомшливо, Бен. Спасибі за вашу допомогу. Я вже працевлаштований, тому мені цікаво, чи буде достатньо електронного листа до мого менеджера із зазначенням ситуації та умов ліцензії від мене до них. Тоді я б включив ліцензію (Copyright (c) МОЕ ІМЯ - Ліцензія, надана КОМПАНІЇ бла, бла, бла) на кожен вихідний код, який я ввожу. Що ви думаєте?
JohnPristine

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

Дивовижна відповідь, дякую. Дуже добре деталізовано та сформульовано.
haylem

6

(Я не юрист.)

Я бачу кілька можливих проблем з цим:

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

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


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

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

4

Я не юрист, але це було б моє рішення:

  1. Відпустіть код під ліцензією GNU GPL v3 у загальнодоступному сховищі, де всі зможуть побачити.

  2. Ліцензія GPL не дозволяє іншим особам приймати ваш код і вносити його у своє комерційне програмне забезпечення та закривати код.

  3. Якщо код на 100% створений вами і не містить роботи інших осіб або похідних робіт, то GPL дозволяє вам також ліцензувати ваш код під іншою ліцензією; у такому випадку вам дозволяється використовувати його у своїх робочих місцях для комерційної власності код. Однак ви повинні зробити свого роботодавця ліцензіатом цієї альтернативної власницької ліцензії.

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

  5. Ви можете рекламувати, що ваш код доступний за власною ліцензією на продаж (за гроші), а потім зацікавлені сторони можуть зв'язатися з вами, щоб придбати його.


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

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

2

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

Однак якщо ви ліцензуєте свій поточний код MIT, немає ніяких причин, чому ваш роботодавець повинен відкривати вихідний код їх модифікованої версії (модифікованої вами), тому я б сказав, що це не дуже вирішує. Навіть LGPL не вирішив би це, доки код не "поширюється".

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


Так! Це завжди найкращий підхід, з яким я повинен погодитися. Просто будьте сміливі і запитайте. Якщо вони думають, що ви дивно запитуєте про це, тоді почніть шукати іншу роботу. Так просто. Життя стосується чесності та ризиків. :)
JohnPristine

2

IANAL, запитай справжнього юриста тощо.

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

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

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

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

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

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