Этично ли использовать личный код на работе?

29

Я работаю над сторонним проектом на работе, где я нахожу полезным использовать часть своего кода, который я разработал лично (вне работы), чтобы ускорить мою разработку. Мой сторонний проект разрабатывает приложение C ++ GUI, чтобы наши опытные пользователи могли запускать (созданные мной) запросы к базам данных на нескольких разных платформах ( DB2 , Oracle, SQL Server и MySQL ). В прошлом я обычно запускал их сам по запросу или создавал для них приложение Excel VBA . Теперь, когда я создал несколько приложений VBA для нескольких разных людей, я обнаружил необходимость создать одно центральное приложение, которое просто считывает в пользовательских файлах .sql и выполняет для различных баз данных.

Приложение, которое я создаю, написано на C ++ и использует инструментарий кроссплатформенного графического интерфейса LGPL . Тем не менее, у меня есть много кода, который в моих собственных библиотеках я создавал на протяжении многих лет для досуга, не связанных с работой проектов. Можно ли использовать этот код на работе, что сэкономит мне (и компании) время? Если да, могу ли я перенести исправления и улучшения в мою личную библиотеку? Кажется, есть черта, которую я не знаю, когда я собираюсь ее пересечь.

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

Питер Мортенсен
источник

Ответы:

38

Можно ли использовать этот код на работе, что сэкономит мне (и компании) время?

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

Если да, могу ли я перенести исправления и улучшения в мою личную библиотеку?

Ваш контракт, вероятно, запрещает это, если вы не получите разрешение (проверьте ваш контракт).

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

Том Сквайрс
источник
Если вы исправляете ошибки из памяти, а не копируете код, сделанный на работе (который можно отследить), довольно сложно доказать, откуда пришла идея; вполне вероятно, что вы
исправили ошибку в
@Izkata: Вопрос был об этике , а не о доказуемости. Независимо от того, может ли быть доказано, что бэкпорт произошел или нет, аскер все равно будет бэкпорт . Если, как говорит Том Сквайрс (вероятно, правильно), контракт запрещает это, то нет, это не будет этично .
Росс Паттерсон
@RossPatterson Вторая половина, касающаяся бэкпортинга, была не об этике, и Том, похоже, истолковал ее так же, как и я, - юридический вопрос, а не этический. Кроме того, если исправления выполняются из памяти, код вряд ли будет идентичен, если только это не было нелепо простым исправлением - в любом случае этика не затрагивается, это просто конвергентный дизайн.
Изката
На самом деле вопрос не в этичности или доверии, а в том, ставите ли вы код под подходящей лицензией, прежде чем пытаться использовать его на работе. Думайте об авторском праве и думайте обоими способами.
JensG
22

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

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

zeristor
источник
2
это определенно стоит посмотреть, есть достаточно хороший шанс, что это уже их код в соответствии с контрактом, и добавление его в свою базу кода почти наверняка сделало его своим кодом.
Ryathal
Требовать работы, которые вы выполнили из своей работы ? Является ли это возможным? Я думаю, это должно зависеть от того, в какой стране вы работаете, потому что, насколько я знаю, это было бы незаконно во Франции, даже если это прописано в вашем контракте.
Клемент Херреман
1
Многие компании пытаются это сделать невозможно, так как почти в каждом контракте говорится, что вы не можете подать в суд на своего работодателя.
Woot4Moo
1
+1 @Raythal - если ОП не предоставил лицензию на свою работу своему работодателю, включая ее в свои проекты без предварительного уведомления, это могло бы сделать его рабочим продуктом. Он мог нанести непоправимый ущерб своим личным библиотекам, если его компания узнает об этом.
DaveE
2
IANAL, но многие соглашения в области ИС требуют ИС в четырех ситуациях: если работа была выполнена в рабочее время, если она использовала ресурсы компании (оборудование, программное обеспечение и т. Д.), Если она является результатом работы, выполненной для работодателя (возможно, с использованием защищенной компании) информация - собственные алгоритмы и т. д.), или если это связано с каким-либо текущим бизнесом компании или с фактическими или ожидаемыми исследованиями или разработками. Последний является наиболее расплывчатым, так как все можно было «предвидеть». Мне было бы интересно услышать, предъявляют ли кому-либо иск за это в ситуации, отличной от прямой конкуренции со своим работодателем.
Утес
6

В вашей компании может быть специальный отдел или специалист по ИС. Посоветуйтесь с ними. Ваш менеджер должен быть в состоянии связать вас.

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

Кроме того, обратите внимание на получение официального разрешения на выпуск любого кода, который вы вносите в него. Некоторые (многие?) Компании могут выпускать код по лицензиям с открытым исходным кодом, если существует четкое разделение между открытым кодом и кодом компании. Это может быть правдой, даже если ваш контракт гласит: «Мы владеем всем, что вы делаете, даже отдаленно связанным с работой». По моему опыту, они в основном беспокоятся о снижении своего конкурентного преимущества в своей основной деятельности. Это еще одна причина, чтобы упаковать ваш код в лицензированную библиотеку, а не импортировать его напрямую.

Надеюсь это поможет.

Майк Б
источник
2

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

Я был бы обеспокоен, если бы вы намеревались выпустить свою работу самостоятельно. Если это так, то я бы не стал вносить это вообще и даже не пытался бы повторно использовать дизайн. Как уже говорили другие, проверьте ваш трудовой договор и обсудите его с вашим менеджером. Если у вас нет одного из таких контрактов типа «вы работаете на нас 24/7», то вы можете рассмотреть возможность выпуска своего кода по какой-либо лицензии и использования только выпущенного кода на работе. Тогда это ничем не отличается от использования проекта с открытым исходным кодом или свободного программного обеспечения, что, я полагаю, вы уже можете сделать.

TMN
источник
1

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

Там нет общей этической проблемы с этим, если вы думаете об этом заранее.

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

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

Ваша проблема на самом деле права собственности.

И здесь есть несколько вопросов, о которых нужно подумать.

Что ваш контракт говорит об интеллектуальной собственности?

Сохраняет ли ваша компания права на вещи, которые вы создаете?

Какую лицензию использует ваша компания при разработке кода?

Совместимо ли это с вашими собственными лицензиями?

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

Эйнар Петерсен
источник
4
Вы должны отредактировать свой ответ, включив в него имя человека, который написал ответ, с которым вы согласны, посты не располагаются в хронологическом порядке
Ryathal
0

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

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

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


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

blueberryfields
источник