¿Es legal recrear / abrir un programa que codificó previamente para otra empresa?


49

En mi trabajo anterior, creé un tablero genérico para automatizar tareas y resultó ser bastante útil, y, por supuesto, mi empleador anterior posee todo el código que escribí mientras trabajaba allí. Ahora que ya no estoy allí, ¿es legal para mí recrear ese panel de control desde la memoria y abrir el código de código abierto? Si lo vuelvo a crear, el código (tal vez líneas de 2k-3k) podría ser casi idéntico al original ya que tengo bastante buena memoria y tiendo a seguir mi estilo de codificación y convenciones de nomenclatura habituales.

Editar: un poco más de antecedentes: este es un software bastante genérico que solo es utilizado internamente por un pequeño equipo (<10) dentro de una corporación global. "La empresa" ni siquiera conoce este sistema, ya que lo creo por iniciativa propia. Está construido en python / django. Y por casi idéntico quiero decir que, por ejemplo, los modelos django tendrán el mismo nombre / campos y las vistas usarán consultas similares para devolver los mismos conjuntos de objetos.


15
¿Se ha acercado a ellos sobre el código abierto? Si no es parte de su negocio principal de hacer dinero, pueden estar felices de hacerlo, y también tendría el beneficio adicional de proporcionarles nuevas funciones de forma gratuita, suponiendo que usted u otros lo extiendan.
dodgy_coder

3
En casi todos los contratos, hagas lo que hagas por tu empleador, ya sea escrito o no, es su propiedad intelectual. Por lo tanto, escupirlo nuevamente y ponerlo a disposición de alguien que no tenga ese contrato es una violación del contrato.
stijn

1
Teóricamente legal pero buena suerte demostrando eso en la corte. :(
SF.

66
Una distinción interesante aquí es la diferencia entre "legal" y "ético". En la mayoría de los casos, si tiene que hacer la pregunta, es porque ya conoce la respuesta y simplemente no quiere admitirla.
Joel Etherton

1
Si esta era una función genérica, entonces parece perfectamente correcto reutilizarla en cualquier lugar al que vaya e incluso publicarla en línea. Entonces, ¿por qué un conjunto de funciones sería tan diferente?
kefeizhou

Respuestas:


35

Buena pregunta, pero probablemente sea el lugar equivocado para preguntar porque no obtendrá buenos consejos legales de los programadores. IANAL, busque el asesoramiento legal adecuado.

No se siente legal. Existe una gran posibilidad de que si lanza un programa casi idéntico al que posee su antigua empresa, podría ser demandado. Dicho esto, estoy seguro de que sucede mucho.

Una cosa que podría hacer es recrear el programa en un idioma diferente. De esa manera, está claro que no saliste de la compañía con el código fuente y luego lo de código abierto. También es educativo resolver un problema con el que está familiarizado en un idioma diferente.

También sugiero pensar en formas de mejorar el programa, hacerlo más extensible, etc. La segunda vez que haces algo es casi siempre mucho mejor que la primera porque puedes evitar todo el "Desearía haberlo hecho así forma "decisiones de diseño que puede haber tomado la primera vez.

Incluso si nunca lo sueltas, sería un buen ejercicio. Si finalmente obtiene asesoramiento legal y elige liberarlo, estará mejor protegido.


55
si desea mantener el mismo idioma, piense en escribir "casi" el mismo código pero cambiando la interfaz de usuario . Como dijo mcottle, puede mejorarlo, y si una página web se ve totalmente diferente, a pesar de que tiene "casi" exactamente el mismo código que el que tenía antes, se alejará aún más de los problemas de la demanda.
Olivier Pons

1
Las partes del código, incluida la interfaz de usuario, serán diferentes, pero algunas podrían terminar siendo las mismas por varias razones (estilo de codificación personal, etc.). ¿Qué tan lejos debo llegar para estar 100% libre?
kefeizhou

1
-1 para "no se siente legal". Las sugerencias son buenas, pero los problemas son prácticos, no legales.
Sean McMillan

2
¿Por qué demonios todos piensan que cuando reescribes algo desde cero harás algo mejor? De hecho, puedes empeorar algo.
Clement Herreman

2
@ClementHerreman: De acuerdo. En algún momento es mejor ir con algo que ha sido probado en acción. Si reescribe desde cero, puede hacer muchas mejoras pero también introducir nuevos errores.
kefeizhou

21

Legal o no, si su empleador se entera y decide presionar sobre el tema, se encontrará en un mundo de dolor. Incluso si terminas siendo juzgado correctamente, el litigio potencial puede terminar siendo completamente ruinoso para ti. También corre el riesgo de incurrir en la ira de la comunidad OSS por contaminarlo con código protegido por derechos de autor, así como la pérdida de reputación de ser visto como deshonesto por su empleador.

También se arriesga a la acción de cualquiera que adopte su producto. En el peor de los casos, cualquier persona que use su producto tendrá que licenciarlo de su empleador anterior o eliminarlo de su solución, lo que le costará tiempo y dinero, de cualquier manera puede terminar demandandolo por daños.

Parece que sería más fácil hacer lo correcto: hable con su empleador anterior, obtenga su consentimiento para reutilizar el producto que desarrolló para ellos con la intención de distribución de código abierto. Puede que solo digan "adelante". Hacerlo a sus espaldas es generalmente una mala idea, dejando de lado los problemas legales.


Casi invariablemente cualquier empleador que se preocupa por poseer el producto final será no permitir que el empleado que lo creó para distribuirlo en cualquier otra forma con su consentimiento. De lo contrario, ¿cuál es el propósito de poseerlo?
Joe Z.

14

Qué tipo de programador dado la oportunidad de recrear algo que hicieron previamente (las lecciones aprendidas, etc.) produciría algo "casi idéntico". ¿A menos que creas que has codificado algo perfecto? En ese momento tiene preguntas más importantes que hacerse.


10
el tipo perezoso sin mucho tiempo. Prefiero usar lo que funciona que tratar de resolver el mismo problema dos veces en ESTE caso particular.
kefeizhou

8

Los paneles de control cuestan diez centavos por docena. Su empleador nunca tuvo la propiedad intelectual de esa idea. Su empleador no posee los derechos de autor sobre la aplicación específica.

Puede escribir el nuevo código desde cero. Eso significa que el trabajo no es un trabajo derivado. Es inteligente guardar notas para que puedas probar esto.


Actualización reciente: theregister.co.uk/2011/09/30/software_copyright . Se espera que el TJCE declare explícitamente que la interfaz de usuario no tiene derechos de autor en sí misma, ya que cae dentro de las "ideas y principios" de un programa de software.
MSalters

5

Técnicamente, está creando un trabajo derivado: está familiarizado con la solución existente y la está recreando de memoria. Se aplica el IANAL habitual, pero si su antiguo empleador lo demanda por infracción de derechos de autor, supongo que tienen un argumento bastante fuerte, y dependerá de usted llegar a una explicación plausible de por qué su programa recreado no debería ser considerado un trabajo derivado.

Dejando a un lado los tecnicismos legales, entablar una demanda con un antiguo empleador no es donde quieres estar, nunca, incluso si ganas, serás 'ese tipo', lo que dudo que sea un movimiento de carrera inteligente.


3
No creo que así se definan los trabajos derivados, creo que hay que incluir parte de ellos.
Sean McMillan

Depende de la jurisdicción y la interpretación, pero 'derivar' no necesariamente tiene que significar 'incluir partes de'.
tdammers

1
@tdammers: Sí, pero eso hace inútil preguntar aquí. No somos abogados en general, y los que probablemente no sean abogados del OP. No podemos responder preguntas legales específicas (y tenga en cuenta que lo que constituye un "trabajo derivado" es un tema de discusión candente en el mundo F / OSS).
David Thornley

Bueno, mi punto es que incluso si recrea la cosa de memoria, tendrá dificultades para demostrar que no se deriva cuando el juez / jurado sabe que también escribió el original que se parece exactamente al nuevo que está reclamando. No es un trabajo derivado. "Inocente hasta que se pruebe su culpabilidad" no se aplica al derecho privado.
tdammers

4

En los Estados Unidos, si su ex empleador decide demandarlo, tendrá problemas sin importar lo que piensen los jueces.

Teóricamente, su empresa posee su trabajo, no su cerebro. Por lo tanto, si vuelve a hacer el trabajo en su propio tiempo, no deberían tener ninguna propiedad de eso. Después de todo, te contrataron por lo que sabías antes de contratarte. Parece poco lógico suponer que pueden aprovechar su conocimiento previo, pero al mismo tiempo negarle que haga lo mismo después de que se fue. Pero IANAL, tampoco.

A menos, por supuesto, que te hayan hecho firmar algunas locuras. O a menos que hayan presentado una patente. Si lo hicieron, que no poseen esa parte de su cerebro. En ese caso, esos patrones de células nerviosas que componen ese conocimiento dentro de su cerebro ya no son suyos y debe abstenerse de usarlos nuevamente. Habla sobre vender tu alma.


3

Me desviaré del tema principal para decir que siento que todo esto es realmente triste.

Ahora sobre la pregunta:

Si eras un carpintero que fabricaba muebles, y la antigua compañía te proporcionaba planos y diseños, entonces otra compañía te contrata, claramente estás en problemas si comienzas a hacer exactamente lo mismo.

Si su empresa anterior solo compró el producto de su trabajo, y usted los diseñó y "inventó" (y puede probarlo), entonces la ley debería estar con usted.

La moraleja de la historia: la próxima vez abre el código desde el principio.


Lo he considerado en ese momento, pero hay demasiada burocracia involucrada al tratar de abrir el código de fuente, incluso un pequeño fragmento de código de una empresa financiera.
kefeizhou

3

(a) No tome asesoramiento legal de Internet (¡incluido este consejo!)

(b) Ser demandado es un verdadero dolor en la parte trasera, incluso si ganas

(c) Parece que cree que no existe un riesgo real de ser demandado. Si es así, entonces probablemente no importa si tiene o no el derecho privado para hacer esto.

Ya sea que sea legal o no, esto se reducirá a cuánto desea recrear este proyecto frente a cuánto desea correr el riesgo de ser demandado. Si tiene el dinero, le sugiero que primero hable con un abogado sobre si tiene derecho a hacerlo y el costo de hacer que el litigio desaparezca si lo tiene.


0

Probablemente haya una diferencia legal entre recrear la solución de la memoria y crear una solución original con la misma especificación (pero IANAL, así que pregunte una). Para probar esto último, es posible que desee publicar una especificación original y completa de la herramienta que planea desarrollar en su blog. Entonces es posible que algún otro desarrollador que nunca haya visto tu trabajo anterior lo codifique.


0

Aquí hay una manera simple: -Abra el tablero de la URL disponible públicamente. -Piense en las mejores formas de hacerlo más fácil / mejor / etc. -Reescríbalo en un idioma diferente, como se sugirió anteriormente. Buena razón para aprender rubí, haskell, ceceo, etc. -Entonces haz un proyecto de código abierto. siéntase libre de agregar 'inspirado por ...' y vincular al sitio original.


0

Ni siquiera les costaría tanto tiempo pedirles permiso. Necesita una firma legal por escrito. Para cubrirte a ti mismo.

Pero si va a pedirles que le permitan recrear algo que ya creó para ellos. Véndelo a ellos. Véndeles la idea. Usted va a abrir una pizca de software que ya usan, y lo abrirá a revisiones y adiciones potencialmente significativas de la comunidad de programación. No tendrán que gastar recursos internamente para administrar y mejorar el software. A menos que quieran obtener mayores beneficios. Me refiero a realmente venderles la idea.

Si no es una tecnología comercial central que están vendiendo a los clientes, es probable que obtenga la aprobación con bastante facilidad. Si es algo que venden a los clientes, se abren a competidores que compiten con el mismo producto. Solo usted realmente sabría lo importante que su empleador anterior ve ese código. Si no es tan importante para la generación de ingresos, y solo es un potenciador de la productividad, es muy probable que obtenga la aprobación.

Es la ruta más barata y más corta para obtener lo que desea. Si dicen que sí, no hay problema. Solo te costó algo de tiempo. Si dicen que no, y aún desea continuar, pregúntele a un abogado sobre su opinión. Espero que lo único que posean sea la implementación. Si lo recrea con suficientes cambios para que no se vea y funcione exactamente igual, estará mucho mejor.

Es un estado disfuncional, del sistema actual donde no poseemos el producto de nuestro trabajo. Algunas de las sociedades más exitosas donde las personas pueden beneficiarse libremente de su propio esfuerzo. Podría hacer comparaciones a esta situación con la propiedad de la tierra feudal y los problemas que creó. En algún momento la gente va a hacer negocios de manera diferente. Como googleas 1/5 de tu tiempo para tus propios proyectos.


0

Seguramente todo esto se reduce al contrato entre usted y el cliente. Si hubiera planeado hacer esto, debería haber tenido una cláusula que establezca que 'este refresco fuente sigue siendo propiedad intelectual de kefeizhou ...' o algo así (sé que, en retrospectiva, es 20/20). Estoy de acuerdo con los otros comentarios de que Programmers SE no es la mejor fuente de asesoramiento legal, y que legalmente o no, esto lo está preparando para problemas. Por cierto, solía trabajar como diseñador gráfico, y en esa industria, casi todo el trabajo seguía siendo la IP del cliente y no el diseñador.


Entonces, si dibujas un automóvil para un cliente, ¿no puedes volver a dibujar un automóvil para otro cliente?
Nate

No, no puede hacer un dibujo de un automóvil para un cliente, y luego enviar el mismo dibujo de un automóvil al segundo cliente. Pero también, no puede enviar al segundo cliente nada de lo que pueda argumentarse legalmente que sea igual o demasiado similar al automóvil del primer cliente.
Paul T Davies

-1

En Francia, es ilegal.

El dueño del código es tu antiguo jefe. No importa cómo lo recupere, desde una memoria USB o desde su memoria.

Si desea usar ese panel, debe establecer un acuerdo con el propietario.


¿Seguramente cada empresa tiene su propia política sobre esto en lugar de una ley nacional? Pensé que esto sería algo que está en el contrato de los empleados de una empresa, en todo caso.
dodgy_coder

El valor predeterminado es que obtienes un salario a cambio de escribir su código. Aunque existe la posibilidad, no conozco políticas alternativas. Esto es diferente si eres un profesional independiente y vendes aplicaciones o bibliotecas, en cuyo caso eres el jefe y tienes tu código.
mouviciel

Menos mal que no estoy en Francia.
kefeizhou

1
¿Puedo darle a Francia un -1? La recuperación "desde la memoria" no es lo mismo que desde un disco.
Sean McMillan

2
¿Significa esto que, en Francia, si implementa un algoritmo o escribe algún tipo de programa, nunca podrá implementar ese algoritmo o escribir ese tipo de programa para otro empleador?
David Thornley
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.