An all meinen verschiedenen Arbeitsplätzen habe ich immer Code geschrieben, der mir den Eindruck gab, dass dies in anderen Situationen wirklich nützlich wäre. In der Tat schreibe ich absichtlich Code, auch wenn ich länger schreibe, von dem ich weiß, dass er mir in Zukunft helfen wird (z SubString()
. B. benutzerdefinierte Funktionen). Ein guter Kandidat für diese Schnipsel sind verschiedene 'Helper'-Klassen.
Ich bin mir sicher, dass diese Snippets online woanders zu finden sind. Der springende Punkt ist jedoch, dass ich sie geschrieben habe und sie später in anderen Jobs oder für persönliche Projekte wiederverwenden werde. Derzeit unterhalte ich keine persönliche Codebibliothek, aber die Frage ist, ob es falsch ist, Code, den Sie bei der Arbeit erstellt haben, zu nehmen und ihn ( a ) für persönliche Projekte und ( b ) für andere Jobs wiederzuverwenden.
Antworten:
Ich habe dieses Problem immer gelöst, indem ich ein persönliches Projekt hatte, in dem ich all meine verrückten Ideen und generischen Sachen unter die BSD-Lizenz gestellt habe, mit der die Leute es wiederverwenden, ändern, umbenennen, schließen und Geld dafür verlangen können es. Auf diese Weise behalte ich das Urheberrecht, kann den Code jedoch nach Belieben für diesen und jenen Arbeitgeber weiterverwenden, sodass ich das Urheberrecht am Original behalte, während der Arbeitgeber das Urheberrecht an der wiederverwendeten Instanz behält. Ich denke, wenn sie ein Problem damit hätten, müssten sie mich einfach bezahlen, um es in der Arbeitszeit umzuschreiben, was aus ihrer Sicht keinen Sinn ergibt. Darüber hinaus verwenden Unternehmen ständig BSD-Code, da es die Idee von BSD ist, Menschen und Unternehmen so ziemlich alles zu ermöglichen, was sie wollen, einschließlich der Umbenennung und des Verkaufs von BSD-Code.
Wenn der Code am Arbeitsplatz ergänzt wird, kann ich ihn natürlich nicht an anderer Stelle wiederverwenden, ohne ihn in eigener Regie neu zu schreiben. Das ist in Ordnung, da generisches Material in der Regel relativ klein ist, es sei denn, es ist ein Idee, die ohnehin erheblichen Freizeitaufwand rechtfertigt.
Schreiben Sie es auf Ihrem eigenen Zeit und die Lizenzierung der Code unter einer BSD-artigen Lizenz sollte ermöglichen es Ihnen , eine Bibliothek für sich selbst zu erhalten , die Sie so ziemlich überall verwenden können , die Sie wollen.
Was nun Verträge angeht, die behaupten, die Urheberrechte aller Ihrer persönlichen Projekte zu vernichten, so unterscheidet sich dies wahrscheinlich radikal zwischen den Gerichtsbarkeiten, aber zumindest in einigen westlichen Gerichtsbarkeiten ist es meines Erachtens so, dass ein Vertrag das nicht kann. Der Vertrag kann dies bestätigen, würde aber nicht gerichtlich durchgesetzt werden, da das Urheberrecht ausdrücklich übertragen werden muss, im Gegensatz zu einem "all your base are own us" -Deal, das niemals eingehalten werden würde die Gerichtsbarkeit, aus der ich sowieso komme). Es gibt eine Reihe von Einschränkungen für die vertragliche Aufrechterhaltung durch ein Gericht, weshalb normalerweise (und hoffentlich) eine Klausel angezeigt wird, die besagt, dass ein Teil des Vertrags nicht rechtsgültig ist Der Rest des Vertrages gilt noch.
Konsultieren Sie jedoch wie immer einen Anwalt, bevor Sie dies als genaue Rechtsberatung interpretieren. Ich wurde noch nie vor Gericht gestellt, daher kenne ich keines dieser Dinge als anwaltssichere Tatsachen. :)
quelle
Das hängt von Ihrem Arbeitsvertrag ab. Heutzutage ist die wahrscheinlichste Antwort (a) Ja, das ist falsch und (b) Ja, das ist wirklich falsch. In fast allen Verträgen, die Entwicklern heute angeboten werden, ist festgelegt, dass jeder Code, den Sie während Ihrer Beschäftigung im Unternehmen schreiben (unabhängig davon, ob Sie zu Bürozeiten arbeiten oder nicht), ihnen gehört und Sie Ihr Urheberrecht automatisch auf sie übertragen. Sofern Sie nicht ausdrücklich dagegen verhandelt haben, gilt dies vermutlich für Sie.
Wie immer jedoch:
Glauben Sie uns nicht! Konsultieren Sie einen Anwalt, bevor Sie etwas möglicherweise Gefährliches tun.
quelle
Schreiben Sie den Code einfach nach Bedarf neu . Es vermeidet das Problem für ein paar Minuten Codierung vollständig.
Die Chancen stehen gut, dass Sie in der Zwischenzeit mehr gelernt und etwas besseres geschrieben haben. Das Umschreiben von Code macht ihn im Allgemeinen auch eleganter.
quelle
x()
so spezifisch und nützlich ist, dass es nicht so viele Möglichkeiten gibt, es zu schreiben? Wie können Sie in diesem Fall eine Trennung vornehmen, wenn die Implementierung so ähnlich ist?Abhängig von Ihren Beschäftigungsbedingungen kann es sein. Wenden Sie sich an Ihren Vorgesetzten, die Personalabteilung, die Rechtsabteilung und / oder die Ethikabteilung, um herauszufinden, was Ihrem Unternehmen gehört und was Ihnen gehört, und wie die Beantragung von Rechten zur Nutzung oder zum Eigentum an Dingen abläuft dass Sie bei der Arbeit produzieren.
Nahezu jeder Ort, an dem ich gearbeitet habe, gehört dem Unternehmen, was in Projekte fließt. Ich habe jedoch die Erlaubnis eingeholt, Dinge für persönliche Projekte von Fall zu Fall herauszubringen, wobei in der Regel zu erklären ist, was ich will damit zu tun und wie es für die Organisation nicht schädlich wäre, es loszulassen.
quelle
Ich hatte einige (nicht vollständige) Erfolge damit, meine Arbeitgeber dazu zu bringen, unter einer Open-Source-Lizenz einen Teil meines Codes freizugeben, der während meiner Arbeit für sie geschrieben wurde. Meistens Code, den ich in meiner Freizeit geschrieben habe, aber manchmal nicht. Es ist alles Code, der für keine Branche spezifisch ist.
Ich begann das Ganze, indem ich einige Bibliotheken schrieb, während ich arbeitslos war, und sie dann unter der MIT-Lizenz veröffentlichte. Während des Einstellungsprozesses bei späteren Jobs würde ich es erwähnen und sagen, dass ich diesen Code verwenden würde, um ihnen zu helfen, wenn es könnte, aber es würde ihnen etwas ausmachen, wenn ich Dinge hinzufüge, die ich während der Arbeit für sie geschrieben habe, aber nur Dinge, die nicht waren spezifisch für ihr Geschäft und nur mit ihrer Zustimmung.
Die Ergebnisse waren unterschiedlich, aber ich konnte meine Bibliothek im Laufe der Zeit aufbauen. Und es gab Fälle, in denen die Bibliothek die Entwicklungszeit meiner Arbeitgeber verkürzt hat.
quelle
Ich bin überrascht, dass die am häufigsten gewählte Antwort hier "Ja" ist. Als Entwickler war die Antwort immer "absolut nicht", außer in Situationen, in denen der Code entweder:
Jemand hat dich dafür bezahlt, den Code zu schreiben. Abgesehen von einem anderen Verständnis und einer anderen Vereinbarung, die in Ordnung ist, ist es nicht richtig, dass jemand anders von den DIREKTEN Vorteilen profitiert.
Nun - das Wort DIREKT. Wenn Sie am Ende eines Projekts etwas Interessantes gelernt und damit etwas Nützliches geschaffen haben, das nicht direkt mit dem geistigen Eigentum des Kunden zusammenhängt, nehmen Sie sich etwas Zeit und erstellen Sie sich eine Bibliothek dafür. Noch besser - STARTEN SIE EIN OPEN-SOURCE-PROJEKT MIT IHM, damit jeder für sich reicher wird. Ich denke, es ist absolut 100% ethisch rein wie der gefahrene Schnee, und in der Tat habe ich es selbst gemacht.
Kurzfristig kann die Wiederverwendung von Code, für den Sie bezahlt haben, rechtliche Probleme verursachen. Auf lange Sicht wird es Charakter Kopfschmerzen verursachen.
quelle
Ich bin mir sicher, dass dies eine rechtliche Angelegenheit ist, die davon abhängt, wo Sie wohnen / arbeiten und was mit Ihnen vereinbart wurde.
Wenn ich in meiner Freizeit alle von mir bezahlten Ausgaben (Computer, Internetzugang, Software usw.) selbstständig lerne, möchten sie dann nicht, dass ich sie in meinem Job verwende? Sie finden einen regulären Ausdruck für ein persönliches Projekt und beschließen, ihn per E-Mail an Ihr Arbeitskonto zu senden, da Sie ihn möglicherweise verwenden könnten. Es wäre ein bisschen albern, die Zeit der Firma damit zu verbringen, so zu tun, als würde sie wieder im Internet danach suchen. Natürlich bemühen wir uns, unser Handwerk zu verbessern. Das wird von Programmierern erwartet, bla, bla, bla, aber was wäre, wenn es in einem Bereich außerhalb des Programmierens oder sogar der IT wäre? Ich kann mich zurückhalten, wenn sie dieses Spiel spielen wollen.
Das Unternehmen kann versuchen, den von mir erstellten Code fest im Griff zu behalten. Es ist nur eine schlechte Grundlage, um eine Beziehung aufzubauen. Wenn ihnen ein paar Codezeilen so wichtig sind, kann ich mir nicht vorstellen, inwieweit sie meine Zeit dominieren werden. das ist viel mehr wert.
quelle
Ich hatte in der Vergangenheit auch die gleichen Gedanken. Leider denke ich, dass alles, was Sie direkt für Ihren Job schreiben, technisch durch Ihren Arbeitgeber urheberrechtlich geschützt ist. Sie müssen um Erlaubnis bitten, diesen Code in anderen, nicht firmenbezogenen Arbeiten wiederzuverwenden.
Wenn Sie andererseits in Ihrer Freizeit Code für eines Ihrer eigenen Projekte geschrieben haben, können Sie Ihren Code mit einer Art Urheberrecht schützen und dann Ihrem Arbeitgeber anbieten, diesen Code zur Verwendung zu geben.
In jedem Fall muss eine klare Kommunikation zu diesem Thema stattfinden.
Natürlich IANAL.
quelle
Ihre Frage ist der folgenden Frage sehr ähnlich: " Open Source - Ist es legal, ein Programm, das Sie zuvor für ein anderes Unternehmen erstellt haben, neu zu erstellen / zu öffnen? "
Ich würde sagen, Sie sind aus rechtlichen Gründen unsicher, da die Unternehmen, für die Sie gearbeitet haben, wahrscheinlich den Code besitzen, den Sie für sie geschrieben haben. Es wäre besser, die Routinen von Grund auf neu zu programmieren, aber selbst dann könnten Fragen auftauchen, wenn Sie noch Kopien des anderen Codes hätten.
[Ich bin kein Anwalt, also erwarte nicht, dass mein Rat dir vor Gericht hilft.]
quelle
Ich würde sagen, dass diese generischen kleinen Methoden / Funktionen am besten nicht zwischen Projekten aufbewahrt werden. Meistens können Sie Boost oder eine andere Sprache verwenden, um dies zu tun. Meistens sind sie besser geschrieben als deine.
Was eine gute Idee ist, ist eine Reihe von Unit-Tests für diese und verwenden Sie diese, um Ihre Code-Kata zu testen.
quelle
Die Jobs sind auf dem Weg nach Asien. Schreiben Sie den Code neu, solange der Soßenzug noch existiert. Wenn Sie dafür bezahlt werden, Code zu schreiben, schreiben Sie ihn oder fügen Sie ihn ein und tun Sie so, als hätten Sie ihn umgeschrieben, während Sie etwas unterhaltsames tun. Oder noch besser: Arbeiten Sie von zu Hause aus und bezahlen Sie einen erfahrenen, intelligenteren und vor allem viel günstigeren Programmierer aus Asien, um den Code für Sie zu schreiben und die Differenz zu kassieren. Dann können Sie rausgehen und die Welt genießen, bevor uns unsere Firmengötter in den Schatten stellen, und wir alle arbeiten mittellos in Chipfabriken, um Chips für wohlhabende chinesische und indische iPhone-Verbraucher zu 2 Cent pro Stunde herzustellen.
quelle
Ich weiß, dass dies eine alte Frage ist, aber jemand hat sie beantwortet, und ich hielt es für eine gute Idee, einen Verweis auf die sehr traurige Geschichte von Sergey Aleynikov hinzuzufügen . Bevor Sie Code von der Arbeit nehmen, lesen Sie, wie dies sein Leben ruinierte und ihn ins Gefängnis brachte .
quelle