Frage

    

Diese Frage bereits eine Antwort hier:

         

Neben Open-Sourcing-Projekt und der Gesetzgebung gibt es Möglichkeiten, um zu verhindern, oder zumindest die Schäden Code minimieren außerhalb Ihres Unternehmens / Gruppe undicht?

Wir können natürlich nicht Internetzugang blockieren (verhindern, dass der Code per E-Mail), weil Programmierer müssen ihre Referenzen. Wir können auch nicht Peripheriegeräte blockieren (USB, Firewire, etc.)

Der Code am wichtigsten ist, wenn es einige proprietären Algorithmen und in-house hat Wissen entwickelt (im Gegensatz zu regelmäßigem Routine-Code im Gegensatz GUIs zu zeichnen, eine Verbindung zu Datenbanken, etc.), aber einige Anwendungen (wie Buchhaltungssoftware und ZRM) sind nur dass: komplexe Sammlungen von Routine-Code, der im Prinzip zu entwickeln, einfach, aber wird Jahre dauern, von Grund auf neu zu schreiben. Dies ist, wo durchgesickert Code in praktisch, um Konkurrenten kommen wird.

Soweit ich es sehe, stützt sich auf dem menschlichen Prozess fast vollständig Leckage zu verhindern. Was denkst du? Welche Vorkehrungen und Maßnahmen nehmen Sie? Und hat Sie Code Leckage betroffen vor?

War es hilfreich?

Lösung

Sie können es nicht stoppen raus. So zwei Lösungen - stoppen Menschen, Sie verletzen wollen, und rechtliche Vorkehrungen haben. So stoppen Sie die Menschen hassen Sie sie richtig behandeln (mehr sagen will, ist wahrscheinlich off topic für Stapelüberlauf).

Ich bin kein Jurist, aber selbst Rechtsschutz zu geben, wenn Sie daran, Patent die Ideen glauben, ein Copyright-Hinweis im Code setzen, und stellen Sie sicher, dass die Verträge für Ihre Programmierer sorgfältig Rechte an geistigem Eigentum an.

Aber am Ende des Tages wird die Antwort schneller läuft als die Konkurrenz.

Andere Tipps

Wenn Sie nicht gerade mit etwas hoch eingestuft und da arbeiten, dass Sie keine E-Mail und USB-Geräte blockieren kann ich denke, Sie sind nicht, dass es wirklich nicht zu viel Schaden, auch wenn der Quellcode Lecks werden musste. Die Sache ist, was der Code ist, oder Teile davon wert ohne das Wissen, wie es funktioniert und die Organisation um ihn herum.

Im Allgemeinen wird der Wert von „Quelle“ ist viel geringer als gemeinhin propagiert wird, im Grunde die Quelle ohne die Menschen oder die Organisation ist nicht wert, die Speicher es für einen Wettbewerber einnimmt.

Auch sind Sie nicht die wahrscheinlichste Angriffsvektor, und es ist auch diejenige, die Sie nicht egal, was zu stoppen. Wenn jemand wirklich wirklich die wissen möchten, wie Sie Ihre Magie gemacht, dann werden sie versuchen, Ihre Entwickler weg zu mieten, und da man sie nicht aus, die Informationen in ihrem Schädel stoppen und selbst wenn sie sich in all ihre Besitztümer ther Wissen und Domain Know-how mit ihnen zu verlassen. Basicly Mitarbeiterbindung und Vertrauen ist der einzige Weg. Es tut uns Leid.

Ich weiß nicht, wie viel tatsächliche Hilfe dies sein wird, aber:

  1. Do not p * ss Ihre Programmierer aus. Sie nicht in der Lage bekommen, wo sie wollen die Quelle an einen Wettbewerber zu geben. Die meisten Orte unterschätzen ihre Entwickler. Gegeben, wo Sie sind (SO), ich denke, Sie sind weniger wahrscheinlich. Nichts hätte mich mehr als die Verkäufe Leute heraus für Golfspiele zu sehen - bezahlt und bezahlt, die von der Firma -. Während wir Pizza zu kämpfen hatten zu bekommen einmal im Monat

  2. Wirklich, wenn Sie Ihre direkten Konkurrenten Code bekam heute , was würden sie tun? Ist Ihr Produkt oder vertikaler Markt, der stagniert, dass Sie nicht neuere, bessere Versionen freigeben würden, bevor sie reagieren konnten? Gibt es keinen Raum für Innovation? Die meisten Unternehmen überschätzen ihre „proprietäre Algorithmen und Inhouse-Wissen entwickelt“. Sicher, es kann einige Zeit abgeschnitten, aber es ist nur etwa 10% des Problems.

  3. Wenn Sie die ganze Quelle bekommen für alle Ihre Konkurrenten Produkte, wie viel tatsächliche Nutzung wäre es? Ich würde vermuten, es würde setzen Sie Monate zurück. Nicht nach vorne. Zurück.

Wenn Sie ein sauberes System haben, und wenig externes / internes Wissen, wie lange würde es dauern, Ihr eigenes Produkt in einen bebaubaren Zustand zu bekommen? Wie lange es dauern würde, den Code und Training Drill-Down in das, was ist los? Wie viel Zeit und Geld, würden Sie etwas aus verschwenden, zu arbeiten, anstatt Zeit und Geld, wie man machen Ihre Produktarbeit besser?

Ich habe in der Lage, tatsächlich ist alle, die Quelle mit - 1 Million Zeilen + Code - zu einem Konkurrenzprodukt. Wir haben nichts damit - abgesehen von einem bisschen einer Poke-around und dann löschen, die mehr war als ich war komfortabel mit - aber ich würde erwarten, dass wir Monate Zeit gekaut haben würden, nur um zu bekommen, wo sie waren dann.

So wir es platt gemacht, schlug die id10t, die es bekam (ja, ein Entwickler / PM, der von der anderen Firma kam), und dachte darüber nach, wie man unsere Produkt Kick so viel Hintern, dass es war egal, was sie taten. Viele bessere Nutzung der Zeit. Hat gut funktioniert, auch. Wir hatten Differenzierer, nicht nur die gleichen Funktionen in der gleichen Art und Weise wieder Hashing sie sie haben.

Es tut uns Leid, aber es gibt nicht , wie Sie Menschen Sachen stoppen kann immer aus, und noch in der Lage sein, tatsächlich zu arbeiten. Sie können sie wollen stoppen, es zu tun, oder machen es so kein Wert ist, sie es ist.

Wir waren besorgt über die Menschen decompiling unseren Code zu. Wir besorgniserregend angehalten, als wir merkten, dass wir genug Probleme ausarbeitet hatte, was drinnen vor sich ging 500K + Zeilen C #, C ++ und HTML-Code im Gespräch / Exchange MAPI. Wenn jemand es dekompilieren kann und arbeiten sie es aus, dann wollen wir sie einzustellen ......

BTW, für Klarheit und gegeben, die jetzt arbeite ich, sollte ich darauf hinweisen, das ist nicht mein derzeitiger Arbeitgeber. Das war schon eine ganze Weile her.

Der Code Leck auf sich selbst nicht aus. Es braucht Menschen, es zu nehmen. Es gibt offensichtlich einige Sicherheitsmaßnahmen, die Sie wie Traffic-Analyse und Lock-down auf den Repositories, so dass nur autorisierte Entwickler daran anschließen können verwenden können.

Aber am Ende des Tages der beste Wahl ist, um sicherzustellen, dass niemand von Ihnen stehlen WILL. Ihr Team hat, glücklich zu sein, müssen sie stolz sein, arbeiten Sie sich an die Firma treu sein und miteinander. Wenn Sie ein solches Team haben, ist es eine einfache Frage zu erklären, zu jeder, dass der Code von Außenstehenden geschützt werden muss. Es wird kein dedizierter Maulwurf stoppen sondern Unfälle vermeiden.

P. S. Und ja, die richtigen Klauseln in den Verträgen nicht auch schaden, zumindest werden sie dafür sorgen, dass die Entwickler bewusst sind, dass Code außerhalb Einnahme moralisch falsch ist.

Beachten Sie diese Hinweise und es sollte keine Rolle spielen, ob der Inhalt der gesamten Quellcode-Repository wird ganz über Stackoverflow geschrieben:

http://geocities.com/mdetting/unmaintainable.html

Oh, und zeigen Sie Ihre Entwickler, die Sie ihnen nicht vertrauen, indem der Zugriff auf Teile des Quellcodes zu blockieren, Scannen outgoing / eingehenden E-Mails etc. Das ist eine todsichere Methode, um sie herum ... machen wollen bleiben .. .nothing verbessert Moral wie ein bisschen Misstrauen am Arbeitsplatz.

Eine andere kühle Art und Weise ist die eine Hälfte zu sagen, dass sie „Team a“ und benennen Sie die andere Hälfte als unseriös „Team b“. Dann ist es umkehren und sagen, das Gleiche zu den „Team b“ Mitgliedern. Ermutigen Sie sie, ein Auge auf dem „bad guys“ in der anderen Mannschaft zu halten und keine Anzeichen von illoyalty Ihnen zu melden. Streuen Sie ein paar „Konflikt-Induktoren“ (zB sagen „Joe“: ‚ Sie wissen, was Ed sagt über Sie hinter Ihrem Rücken ‘) usw. wirkt Wunder, wenn Sie die Entwickler gegeneinander einrichten und schaffen ein paar [erfunden-by-you] Konflikte hier und da ...

(Eh, und nein, ich eigentlich nicht eine der oben empfehlen. Nur ein Scherz. Aber ich habe die Menschen all die Taktik oben verwenden gesehen. Und es hat nicht funktioniert.)

Okay, ich werde hier ein wenig praktikabel sein.

  • Nett an alle und hoffen, sie werden dich nicht funktioniert nicht schaden.

Jeder Programmierer weiß, aus dem Tag, als er eine Firma schließt sich, dass er nicht für immer dort bleiben werde. Er wird sich ändern, wenn er genug gelernt, um eine bessere Chance zu bekommen.

Die Programmierer, die den Code schreiben glauben, dass sie das Eigentum an sie haben, auch wenn sie es auf der Zeit schrieb sie an jemanden vermietet. So viele von ihnen werden in der Regel versuchen, ihre Hände auf den Source-Code zu erhalten, auch wenn sie nicht beabsichtigen, niemanden zu verletzen.

Sobald sie das Unternehmen verlassen und sie haben den Quellcode mit ihnen getragen und verlor den Kontakt mit ihren Kollegen, setzt sich das Gewissen nach unten und geht auf einen Urlaub und nach, während die Bits und Stücke aus dem Code-Start überall auftauchen.

Das ist, was ich weiß passiert, weil ich es mein Unternehmen passiert erlebt haben.

Also, was soll man tun?

  • Melden Sie einen NDA, die spezifisch erwähnt, dass sie Kopien nicht nehmen Programmierer.
  • Verteilen Sie Ihr Produkt zwischen Programmierern und wenn möglich, Module einzeln bekommen codiert und von einem Chef, dessen Verantwortung integriert ist, dass alle Programmierer nt den gesamten Code bekommt.
  • Zum Zeitpunkt der Kündigung eine schriftliche Zusage der Programmierer bekommen, dass sie jede IP des Unternehmens nicht tun besitzen und sie verstehen, die Sanktionen der Verletzung.
  • Wenn jemand Ihre IP verletzt, klagen sie den Mann! Keine Ausnahmen. Es wird für das vorliegende Team als Beispiel arbeiten.

Habe ich extrem klingen?

Ich erinnere mich, dies zu Ventil, wenn sie HL-2 wurden zu entwickeln. Interessanter Link hier: http://www.shacknews.com/onearticle.x/28619

Ich habe irgendwo gearbeitet, wo es eine echte Kultur der Geheimhaltung über diese Art der Sache war (historisch hatte es eine Reihe von Zeiten, in denen das Unternehmen war klein, wo „Kunden“ hatten, sagen wir mal, missbraucht ihren Zugang zu unserem Produkt).

oben Während das Management sehr beschützend war, ich sehe es etwas anders. Ich denke, unseren Code, die zwar nicht völlig irrelevant, nicht als Schlüssel ist, wie man erwarten würde es in einer Software-Firma sein.

Der Grund, dass wir erfolgreich sind, ist:

1) Der Code ist im Wesentlichen die Lösung zu einer Reihe von Problemen. Wenn Sie unseren Code bekommen erhalten Sie die Lösungen, aber wir haben immer noch die intelligenten Menschen, die diese Probleme gelöst. Sie verstehen diese Probleme besser als Sie tun und sind besser in der Lage, die nächste Reihe von Problemen zu lösen besser als Sie sind.

2) Weil sie wirklich verstehen, die Probleme (und Lösungen) können wir Dinge tun, schneller als unsere Wettbewerber, die zu billigeren übersetzt (oder mehr rentabel).

3) Auch wegen dieser Leute und die Haltung innerhalb des Unternehmens haben wir auch an unsere Kunden ausgeliefert und bot einen guten Support.

4) Und aus diesem Grunde haben wir einen guten Ruf und Referenz-able Kunden.

Eine kleine Zahl von Unternehmen hat Code, der wirklich wert ist Geheimhaltung - proprietäre Algorithmen und diese Art der Sache - aber für eine große Mehrheit von uns, unsere Produkte sind sehr leicht replizierbar durch intelligente Menschen

.

Was ich sagen will ist, die Grundlagen tun - schreiben Sie es den Leuten in die Verträge, die sie kann es nicht, halten Sie es sichern und so weiter - aber obsess nicht darüber hinweg. Sofern Sie in einem sehr spezifischen Markt sind ist es unwahrscheinlich zu sein, was wirklich vor sich geht Ihr Unternehmen Erfolg haben oder scheitern zu machen.

Der beste Schritt geht von Jungs mit starken ethischen Verhalten reruting. Verschiedene andere Schritte können wie alle Kommunikation gescannt genommen werden. Es gibt Orte, an denen E-Mail und alle Informationen Ausgehen gescannt wird. Der Desktop / Laptop hat keine Festplatte oder der Zugang beschränkt ist und alle Arbeiten sind auf Netzwerkordner, selbst wenn sie von zu Hause aus arbeiten, ein mit dem Internet verbunden werden hat. Die Offline-Arbeit wird synchronisiert. Die USB-Laufwerke und werden getrennt.

Die anderen Maßnahmen sind der Zugang zu bieten nur nach Bedarf Basis. Diese werden langsam nur nach unten und in gewissem Maße behindern, ist aber ein sehr entschlossen ist, dann würde er Wege, dies zu umgehen finden. Der andere Weg ist, wenn der Code wirklich sehr wichtig ist, haben dann die Idee Copywrite legaly geschützt.

Um ehrlich zu sein ist es fast unmöglich ist. Wenn ich vorschlagen wollte, was ein Unternehmen, das in Kürze auf der Daily WTF erscheinen würde tun würde:

  1. Ziehen Sie den "Computer am Arbeitsplatz" aus dem Internet, bt, weil sie für den Internetzugang benötigen Referenz jeder eine wbbook kaufen.

  2. Stuff die Entwickler USB-Steckplätze mit Epoxid- und verlangen, dass sie alles von einem zentralen Server geladen / entladen, die alle Daten durchsucht, die für Code wie Syntax durch es geht.

Oder Sie könnten nur Ihre Mitarbeiter vertrauen und ihnen ein NDA unterzeichnen ...

ich persönlich nie an einem realen Fall getestet, aber ich würde vorschlagen Code Fragmentierung mit:

im Grunde geteilt Sie Ihr Projekt in einer Reihe von Bibliotheken, definieren Schnittstellen und Unit-Tests für jeden von ihnen, dann trennen Sie SVN-Repositories, so dass jede Gruppe Zugang zu einem begrenzten Teil Ihrer wertvollen Quellcodes haben.

Dies ist auch eine gute Praxis, egal was und soll helfen, wenn Sie ins Ausland auslagern.

Die bisherigen Antworten scheinen alle Vertrauen auf den Aufbau zum Zentrum und den Einsatz ethischen Menschen.

Eine andere Möglichkeit könnte sein, eigene domänenspezifische Sprache und Tools zu erstellen. Das macht jeden durchgesickert Code schwerer zu verwenden. Es könnte immer noch möglich sein, nützliche Ideen aus, es zu stehlen, aber es wäre nicht möglich, einfach ein Konkurrenzprodukt zusammenstellen, es sei denn die gesamte Toolchain durchgesickert ist.

Vertrauen Sie Ihren Entwickler. Menschen neigen dazu, nach oben oder unten hinter den Erwartungen zurück. Behandelt sie gut, und denken Sie daran, dass Loyalität geht in beide Richtungen. Nach allem, wenn Sie nicht Thumbdrives abschneiden können, können Sie niemanden aus undichten Code stoppen, egal, wie viel Sie sie nicht vertrauen.

Dass gesagt wird, finden Sie sich einen Anwalt mit Geschäftsgeheimnis Expertise, wahrscheinlich Know-how in anderen Teilen des IP-Rechts, und fragt, wie rechtlich Sachen schützen zu. Sie wollen sicherstellen, dass, wenn ein Konkurrent Ihre Sachen bekommt, ist es nicht legal ist für die Wettbewerber davon profitieren.

Die meisten Antworten basieren auf moralischen und ethischen Werte. Ich frage mich, ob Google, Facebook usw. vertrauen nur auf ihre Mitarbeiter guten Willens. Gib mir eine Pause, das ist völlig utopisch. Sei kein Narr sein. Seien Sie realistisch.

JA, ist es möglich, Code Auslaufen zu verhindern:

einen virtuellen Server-Hosting von virtuellen Maschinen verwenden können Programmierer Zugriff nur lokal auf diese virtuellen Maschinen (Intranet) über Remote Desktop. Repository lokal verwaltet. private Schlüssel für das Repository zugreifen. Kopieren / Einfügen von virtueller Maschine Client ist deaktiviert. nur kopieren / vom Client an den virtuellen einfügen darf.

Unternehmen wie Facebook tun.

Die einzige Möglichkeit, noch Code ist durch Bilder auf den eigentlichen Code nehmen, die absolut nicht praktikabel und durchführbar überhaupt ist, und da es überall Überwachungskameras ist, werden Sie auf die Toilette gehen, um diese Bilder zu machen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top