Öffentliche und private Repositories

8

Angenommen, ich entwickle eine App zum Verkauf. Ist es sinnvoll, für dieses Projekt ein öffentliches Repository zu verwenden? Schützt das Standard-Copyright den Code nicht vor anderen Personen, die ihn verwenden? Wenn ja, welche Vorteile bietet die Bezahlung eines privaten Repositorys?

Michael Mangold
quelle

Antworten:

14

Wenn Ihre Anwendung Closed Source ist, sollte sie sich in einem privaten Repository befinden. Das Urheberrecht schützt Sie möglicherweise rechtlich, aber wenn sich jemand entscheidet, Ihren Code zu stehlen, ist es ihm wahrscheinlich egal. Dann liegt es an Ihnen, diese Personen zu finden, zu identifizieren, dass sie Ihren Quellcode in ihrer Anwendung verwendet haben, und dies einem Richter zu beweisen.

Dies ist besonders problematisch, wenn Sie etwas Neues tun. Vielleicht haben Sie eine Art neuen Algorithmus erstellt oder Webdienste oder APIs auf eine noch nicht durchgeführte Weise kombiniert. Sie geben Ihren Antrag für Geld frei und hinterlassen eine umfassende Online-Anleitung, die für alle sichtbar ist, was Ihren Wettbewerbsvorteil erheblich beeinträchtigt.

Wenn Sie in irgendeiner Weise mit der Benutzersicherheit umgehen, können Fehler, die Sie gemacht haben (und die Sie haben werden), viel leichter gefunden und ausgenutzt werden, wenn Angreifer Ihren Quellcode lesen können. Einige Online-Repositorys verfügen über Bug-Tracker - die Benutzer können dem folgen, und sie werden direkt auf die gefundenen Schwachstellen hingewiesen und haben ein Fenster, in dem sie diese ausnutzen können (die Zeit, die Sie zum Beheben der Fehler benötigen, und für Ihre Benutzer, um einen Patch anzuwenden).

Ich sollte auch erwähnen, dass Sie, wenn Sie ein Team von fünf oder weniger Personen haben, Ihren Code kostenlos privat mit BitBucket hosten können . Ich bin mir sicher, dass es noch andere Dienste gibt, von denen ich nur weiß, weil ich sie benutze.

Carson Myers
quelle
BitBucket ist wirklich nett. Ich habe einen akademischen Account bei ihnen und mag ihn wirklich für private Repos.
Jetti
2

Privates Repo ist ... privat. :-)

Als Open-Source-Fan würde ich mich etwas von Carson unterscheiden. In gewisser Hinsicht hat er vollkommen recht, aber es ist (meiner bescheidenen Meinung nach sowieso) keine große Sache, private Open-Source-Software zu verwenden.

In jeder Hinsicht können Sie es auf Github nicht lizenzieren, und es macht keinen Unterschied: Der Github-Verkehr zu Ihrem Repo wird bis zur Veröffentlichung ungefähr Null sein. Und dann weiß man nie - ein Benutzer / Codierer könnte darauf stoßen und einen Patch, einen Vorschlag, eine Funktionsanforderung usw. freiwillig zur Verfügung stellen.

Wenn Sie nicht die Milliarden-Dollar-Anwendung erstellen, wird sich niemand wesentlich um Ihren Code kümmern. Und wenn Sie dies tun, haben Sie Ihre Milliarden bereits und es ist Ihnen egal, ob sie Zugriff darauf haben. Der Wert Ihrer Anwendung hängt nicht vom Quellcode ab, sondern von Ihrer Fähigkeit, sie zu vermarkten, zu unterstützen und zu warten.

Denis de Bernardy
quelle
2

Schützt das Standard-Copyright den Code nicht vor anderen Personen, die ihn verwenden?

Hier gehe ich wieder. Ich bin kein Anwalt und dies ist keine Rechtsberatung. Grundsätzlich hindert nichts jemanden daran, den Quellcode zu betrachten und daraus eine abgeleitete Arbeit zu erstellen. Im besten Fall können Sie ein Kontrollkästchen oder ein Registrierungsformular verwenden, um den Zugriff einzuschränken, wenn Sie dies in ein öffentliches Repository gestellt haben. Und dann, hier ist der Kicker, liegt es an Ihnen, Ihre Behauptung aufzustellen, dass die andere Partei das abgeleitete Werk erstellt hat. Es liegt nicht an ihnen, ihnen zu beweisen, dass sie Ihren Quellcode nicht angesehen haben. Außerdem ist es kontraintuitiv, nicht wahr, und es stellt im Wesentlichen das Szenario dar, in dem es Ihr Wort gegen ihr Wort ist.

Ist es sinnvoll, für dieses Projekt ein öffentliches Repository zu verwenden?

Aus diesen Gründen wäre es nicht sinnvoll, ein öffentliches Repository zu erstellen. Es muss in ein privates Repository gehen, in dem Sie den Zugriff auf den Quellcode steuern können. Die meisten großen Unternehmen erweitern die Zugriffskontrolle in viel größerem Umfang. In der Regel hat ein Entwickler nur Zugriff auf die Projekte, mit denen er sich befasst, dh der Zugriff erfolgt auf der Basis von Informationen, die er wissen muss. Alles andere erfordert Ärger, insbesondere wenn einige der Merkmale geistiges Eigentum darstellen und patentiert werden, oder wenn es sich um die geheime Sauce handelt, die dem Unternehmen einen Wettbewerbsvorteil verschafft.

Welche Vorteile bietet die Bezahlung eines privaten Repositorys?

Abgesehen von den oben aufgeführten besteht der typische Vorteil eines privaten Repositorys darin, dass der Vertrag zwischen Ihnen und dem Anbieter im Wesentlichen eine NDA enthält. Wenn Sie keine haben, zahlen Sie nur für die Dienste eines angeblich privaten Repositorys. Schließlich hindert nichts ein Mitglied des Betriebsteams des Anbieters daran, in Ihre Quellen zu schauen und eine abgeleitete Arbeit zu erstellen.

Vineet Reynolds
quelle
2

Wenn Sie die Anwendung verkaufen möchten, würde ich kein öffentliches Repository verwenden, da Sie der ganzen Welt zeigen, wie Sie Ihr Lizenzsystem umgehen können, ohne großen Aufwand zu betreiben. Wenn sie es wirklich knacken wollen, werden sie irgendwann dort ankommen, aber die Investition wird viel höher sein und daher weniger wahrscheinlich sofort eintreten (ohne weiter auf Verschleierung usw. zu verzichten).

Der einzige Punkt , in dem Sie könnte die Quelle in einem öffentlichen Repository - Host, ist , wenn die Anwendung sollte in einem Markt gekauft werden (iPhone, Android, WP7, ..) , und Sie müssen sich keine Sorgen machen , dass viel über Lizenzen, .. Und selbst dann würde ich es nicht empfehlen, da die Leute einfach die Quelle herunterladen und selbst veröffentlichen können (mit einigen geringfügigen Änderungen, ...) oder auf einem entsperrten Gerät installieren können.

Zum Thema Urheberrecht: Ich bin kein Anwalt, aber irgendwann müssen Sie nachweisen können, dass Ihr Code zuerst vorhanden war, wenn Sie über das Urheberrecht streiten möchten. Der zeitgestempelte Versionsverlauf hilft Ihnen vielleicht ein bisschen, aber es gibt Möglichkeiten, dies zu umgehen (privates Hosting, ..). Wenn Sie ihn privat halten, können die Leute ihn nicht stehlen (nur die Idee, nicht die eigentliche Implementierung), und Sie haben gewonnen. ' Ich muss mich nicht darum kümmern.

Bart
quelle