Je sais que la société pour laquelle vous travaillez est propriétaire du code et vous serez évidemment arrêté si vous essayez de le vendre. Mais est-il rare que les développeurs conservent une copie personnelle du code qu'ils ont écrit (pour référence future)?
Apparemment, ce type a été envoyé en prison pour avoir copié du code source.
Réponses:
Je ne sais pas si c'est courant, mais commun ou pas, c'est toujours une mauvaise idée.
Les programmeurs pensent souvent que résoudre le même problème à deux reprises est une perte de temps. Nous essayons de concevoir notre code pour qu'il soit réutilisable (parfois). Nous construisons des bibliothèques de classes et de fonctions à réutiliser ultérieurement. Nous donnons parfois même notre code afin que personne d' autre ne soit obligé d'écrire du code pour résoudre le même problème que nous venons de faire. Il peut donc être compréhensible de vouloir emporter "votre" code lorsque vous passez d'un travail à un autre. Mais vous ne devriez toujours pas le faire, pour les raisons suivantes:
Ce n'est pas votre code à prendre.
Le code que vous avez écrit pour votre ancien employeur fait partie de l'entreprise qu'ils ont créée. Leur code fait partie de leur avantage concurrentiel. Bien sûr, les concurrents pourraient écrire leur propre code pour résoudre le même problème, mais ils ne devraient pas avoir l’avantage de construire sur un travail que votre employeur a payé, que possède, et qu’il ne vous a pas autorisé.
S'ils ont un sens du tout, votre nouvel employeur ne veut aucune partie du code que vous avez pris de votre ancien employeur. Plus vous "référez" au travail que vous avez effectué pour un employeur précédent, plus vous mettez votre nouvel employeur en danger juridique.
Si, par mégarde, vous avez toujours laissé entendre au nouvel employeur que vous aviez toujours une copie de ce que vous aviez fait pour l'ancien employeur, votre supérieur hiérarchique se rendra probablement compte que vous en prendrez une copie lorsque vous partirez pour un autre. emploi. Cela pourrait ne pas bien s'asseoir avec lui ou elle.
Même si vous n'écrivez pas de vraies lignes ou simplement des idées vagues de vos anciens contenus, le seul fait de les avoir en votre possession peut faire suspecter que vous les utilisiez peut-être pour quelque chose. Imaginez qu’un ancien employeur poursuive un nouvel employeur et que, faisant partie d’une poignée d’employés qui sont passés d’ancien à nouveau, vous vous retrouvez subitement en dépôt. Aucun de vous n’a copié le code de Old dans le produit de New, mais l’avocat devant vous demande: "M. SuperFoo, avez-vous maintenant ou avez-vous depuis votre départ de Old Employer en votre possession une copie du code que vous ou quelqu'un d'autre a écrit alors qu'il travaillait chez Old Employer? "
Vous n'avez pas besoin du code que vous avez écrit le mois dernier, l'année dernière ou plus longtemps. Vous avez résolu le problème une fois et vous savez maintenant comment le résoudre à nouveau. Ou, vous savez peut-être comment ne pas résoudre le problème - votre nouvelle implémentation sera meilleure parce que vous avez de l'expérience.
Il y a de meilleures façons. Il est difficile de revenir en arrière et d'apprendre quelque chose d'utile en lisant du vieux code hors contexte. Un journal ou journal qui décrit ce que vous apprenez, les idées que vous avez, etc. est beaucoup plus utile par la suite.
Même si l'ancien employeur sait que vous avez son code et qu'il est d'accord avec ça, vous n'en voulez toujours pas! La seule chose qui puisse en résulter est un appel téléphonique à 3 heures du matin: "Hé là, SuperFoo? Comment allez-vous? Écoutez, vous avez une copie de nos fichiers, non? Regardez, nous avons un problème avec le système, et nous avons réduit le nombre de fichiers à quelques fichiers que vous avez écrit et que notre nouveau type ne comprend tout simplement pas. Je sais qu’il est tard, mais pourriez-vous le guider à travers SuperDuper.pl? "
Laisser aller. Tu n'en as pas besoin.
la source
for (int i=0; i < N; ++i)
dans mon code, il n'est sûrement pas illégal de l'utiliser ailleurs dans une autre société ...Je garde toujours une copie du code que j'écris et le prend entre les travaux. Les employeurs suivants ne voient jamais / n'exécutent pas le code, mais je l'utilise comme référence à la maison: "Ah oui, n'ai-je pas fait quelque chose de similaire à celui du projet X?".
Est-ce légal? Cela dépend de la juridiction et des circonstances, mais c'est assez courant. Moralement, cela ne me pose aucun problème, à condition que vous ne donniez pas simplement du code à de nouveaux employeurs ... C'est un rappel et une démonstration de ce que vous avez fait, plutôt qu'une ressource gratuite pour votre employeur.
[Le revers de la médaille, c’est la honte inévitable qui se produit lorsque l’on regarde un code ancien: «A quoi je pensais ?? Pourquoi est-ce que je l'ai fait de cette façon ?? ']
la source
C'est une très mauvaise idée. Ce code ne vous appartient pas (légalement) et sa possession peut vous causer beaucoup de problèmes. Cela devient encore plus vrai lorsque vous passez à un nouvel emploi tout en conservant ce code source. Pire encore si c'est un concurrent. Votre entreprise ne serait pas contente si vous aviez accès à leur code source alors que vous ne travailliez plus pour elles.
Il s’agit de gérer vos risques. On s'attend évidemment à ce que vous conserviez des éléments d'un ancien employeur que vous pouvez utiliser ailleurs. C’est la raison pour laquelle ils font de votre signature des clauses de non-concurrence qui durent X mois / années après que vous les avez quittés. Cependant, la possession du code vous rend plus vulnérable à une accusation de copie flagrante du code de la société (même si vous ne l’avez pas fait, et juste utilisé les mêmes idées). Avoir le code vaut-il la peine de gérer ce risque?
Les éléments utiles que vous avez obtenus en écrivant le code ne sont sûrement pas la syntaxe exacte; c'est la connaissance que vous avez acquise. Cela ne vaut probablement pas la peine de traiter de toutes ces affaires juridiques.
la source
Ce n'est pas rare.
J'ai une copie de presque 1 chaque morceau de code que j'ai écrit de manière professionnelle, et certainement tout le code de mes projets actuels, quel que soit le créateur de celui-ci 2 . En plus du code, j'ai une énorme pile de documents juridiques qui définit clairement ce que je peux et ne peux pas faire avec. Avoir le code, ce n'est pas la même chose que d'essayer de tirer profit du code.
Cela dit, il s’agit d’une question juridique, et les questions juridiques ont tendance à être extrêmement complexes et localisées. En cas de doute, vous devez vraiment consulter un avocat. Je garde peut-être mon code, mais je suis à 99% sûr de ne pas avoir de problème à le faire.
1 Ce qui manque, c'est surtout ce que je n'ai pas voulu archiver. Le code d'un seul petit projet est manquant pour des raisons juridiques.
2 Nature des projets et mon rôle dans ceux-ci, je suis l’un des types qui doivent au moins avoir une idée de ce qui se passe où, même si je n’étais pas impliqué dans la construction d’un module spécifique.
la source
Je vois votre Chinois arrêté et vous élève avec un "code n'est pas une propriété, donc ne peut pas être volé".
Réf.: Code 'pas de propriété physique', le tribunal statue dans l'affaire d'espionnage Goldman Sachs
Ceci étant dit.
la source
Voici une question simple pour vous. Allez chez votre patron et dites-leur: "J'ai une copie de tout le code que j'ai écrit pendant que je travaillais ici. Seul le code que j'ai écrit, pas celui des autres peuples. C'est pour ma propre éducation et je ne le distribuerai jamais".
Leurs actions à venir dicteront (oui, ce mot existe en Amérique du Nord / Monde) si vous avez tort ou tort.
Indépendamment de votre propre "éthique", vous travaillez pour un employeur. S'ils estiment que ce que vous faites est mauvais, alors c'est faux en raison de leur éthique. Au moment où ils vous paient et que vous les employez, il appartient à votre tribunal de les accepter ou d’être en désaccord, ce qui pourrait vous faire virer.
Maintenant, c'est une question d'intégrité. J'ai laissé un ancien employé prendre une partie de notre code, mais je l'ai d'abord vérifié.
Ce n’est pas parce que vous croyez que vous avez raison que vous avez raison. Les développeurs de logiciels signent généralement des contrats lorsqu'ils sont employés. Si vous en avez signé un, vous devez vivre selon votre parole.
la source
Répondant directement à la question, je dirai dans mes expériences que cela est rare. L’ exception à ce que j’ai vue est celle des personnes qui travaillent beaucoup en freelance et gardent le code sous la main pour les futurs projets de maintenance et d’amélioration de leurs clients, et j’imagine que cela est clairement énoncé dans le contrat (bien que je ne sois l'habitude de passer en revue les contrats de freelance de mes amis, alors qui sait). Les personnes que je connais qui travaillent dans de grandes entreprises n’ont jamais admis avoir gardé le code de leurs anciens employeurs.
Je sais que je ne le ferais pas car je ne peux imaginer une seule situation où cela serait utile (sans mentionner que je suis à peu près sûr que mon employeur actuel interdit de telles choses - il me suffirait de consulter les documents pour être certain ) Le code que j'ai écrit / corrigé est généralement si spécifique à un besoin métier particulier que je ne peux imaginer qu'il reviendra jamais à l'avenir de telle manière qu'il serait plus facile de réutiliser l'ancien code que d'en écrire un nouveau. code.
la source
À l'époque, il était courant que les développeurs disposent d'une bibliothèque personnelle de routines qu'ils utiliseraient pour résoudre les problèmes liés au travail en cours. La source resterait à la sortie du développeur, mais toutes les améliorations l’emporteraient également.
Cela a abouti à une situation gagnant-gagnant. C'était aussi juste un sous-ensemble de tout le code écrit.
Bien entendu, l'essentiel de ce qui se trouvait dans les bibliothèques personnelles le serait dans les bibliothèques standard d'aujourd'hui.
la source
Dans une relation employeur-employé dans la plupart des régions d'Amérique du Nord, il est illégal de transférer ou de transmettre du matériel numérique (code source, par exemple) à partir de l'équipement de votre employeur sans autorisation légale préalable de l'employeur.
Une partie de la législation relative à la définition du terme "employé sur le lieu de travail" stipule que l’employé ne fournit pas son propre équipement de travail, sauf indication contraire dans le contrat de l’employé, à l’exception des opérations pour lesquelles l’employé doit acheter leur propre équipement (ouvrier de construction).
La plupart des lois du travail en Amérique du Nord définissent l’employeur comme le principal preneur de risque dans une relation d’employé à employeur. L'employé est rémunéré pour son temps alors que l'employeur fournit le matériel, l'équipement et contrôle les activités professionnelles de l'employé.
À quel moment de cette relation est-il acceptable de voler du matériel précieux à l’employeur, qui a payé et pris le risque de le créer?
Le problème clé avec ceci était la question "le code source que vous avez écrit?". Non monsieur, ce n'est pas vous qui l'avez écrit. Sous la direction de votre employeur, ce sont eux qui l'ont écrit. Vous êtes juste la main louée qui l'a tapé. En Amérique du Nord, aucun tribunal ne vous accompagnera si votre employeur prend des mesures juridiques pour protéger leurs biens. Copier simplement le code source sur une clé USB peut vous mettre dans l’eau chaude.
Cela dit, si un employeur vous a autorisé à utiliser votre propre équipement (un ordinateur portable, par exemple) ou à le transmettre, la situation est différente. En cas de résiliation, l'employeur doit vous informer que tout le matériel doit être renvoyé / détruit.
Je pensais que je posterais cette réponse, car il semblerait que certaines personnes aient pensé qu'il s'agissait d'une zone grise. Je ne pense vraiment pas que si vous êtes un développeur, vous devriez consulter Internet pour garder des copies des documents de l'employeur. Je veux dire, vous avez clairement déjà connu la réponse à cette question parce que vous avez créé un nouveau compte membre simplement pour poser cette question. ;)
la source
Je l'ai fait dans le passé, il y a quelques emplois.
Cependant, je ne suis jamais retourné le regarder. J'ai parfois réutilisé des idées et des choses que j'ai apprises mais je n'ai pas trouvé une seule raison de revenir en arrière et de regarder le code.
Donc, je ne me dérangerais plus. C'est légalement douteux et je ne l'ai jamais trouvé utile dans la pratique.
la source
Sûr. J'aime conserver une copie de tout mon travail, que ce soit pour écrire du code ou autrement. Appelez ça un album, si vous voulez. Ne pas respecter les règles? Peut-être.
Les commentaires sur l’avantage concurrentiel ne sont pertinents que si votre prochain employeur est un concurrent direct. Si vous passez d'une compagnie de téléphone à une maison de logiciels ou d'un développeur de jeux à un développeur de bases de données, cela n'a pas d'importance. Si vous envisagez réellement de réutiliser du code - eh bien, c'est une autre histoire.
Il est intéressant de noter que les développeurs Web apportent souvent une "boîte à outils", avec un ensemble standard de bibliothèques JavaScript et de feuilles de style CSS . Mais je n'ai pas vu cela mentionné ici.
la source
Je viens tout juste de supprimer l'ancien code que j'avais conservé chez mon précédent employeur. Je n'ai gardé que des morceaux de code que je pensais bons à des fins de référence. En fait, j'ai constaté que j'ai beaucoup évolué depuis mon départ et que je n'ai jamais fait référence à l'ancien code. J'ai trouvé / découvert / appris de bien meilleures façons de résoudre les mêmes problèmes.
C'était un bon petit voyage en mémoire :)
la source
Je pense qu'il faut faire la distinction entre un motif de conception et le code réel (copie ligne par ligne)
Écrire quelque chose comme psuedocode - c’est un excellent moyen de charger paresseux X dans Y est une chose. Écrire tout le code, c'est autre chose.
la source
Avec la permission de votre employeur, publiez ce code réutilisable en tant que projets open source que d'autres personnes pourront utiliser. Ensuite, votre employeur peut également bénéficier des contributions d’autres personnes à ce code.
De cette façon, vous pouvez conserver le code légalement, créer un portefeuille public de code que vous avez écrit et le code peut profiter à d'autres personnes.
la source
Pour un nombre de raisons différent, comme le fait de travailler à domicile, vous pouvez aussi en avoir déjà une copie, et je ne voudrais pas supprimer ces mots après un emploi, pourquoi le faire? Cela ne va pas à l'encontre de mes croyances ou de quelque chose du genre.
Mais, en ce qui concerne son utilisation, ce n’est pas aussi utile qu’un article de blog!
En bout de ligne: écrivez votre code, bloguez sur les problèmes que vous avez rencontrés et sur la façon dont vous les avez résolus (en particulier lorsqu'il s'agit de contenus génériques et généraux), et ne craignez pas de garder un souvenir (éventuellement crypté) du dernier emploi.
la source
En finance, le CFA s’attaque à ce problème. Vous n'êtes pas autorisé à prendre des informations relatives aux clients ou à votre travail pour l'entreprise (dans ce cas, le code). Mais rien ne vous empêche de mémoriser ce que vous pouvez et de l'écrire plus tard.
Vous ne savez pas à quel point cela est légitime, mais je pense que votre meilleur choix est de laisser votre code source, mais écrivez vos idées et comment vous les avez réalisées dès votre retour à la maison. Voler, c'est voler et au tribunal, tout ce qu'ils essaient de savoir pour décider, c'est si vous avez copié le code ou non.
la source
Si vous enregistrez votre code dans le but de le réutiliser plus tard, cela me pose deux problèmes:
Si le code est spécifique à un domaine, il est probablement également propriétaire. Quoi qu’il en soit, il n’ya pas deux entreprises ou deux problèmes qui se ressemblent et essayer de résoudre un problème avec la solution d’un autre n’est pas une bonne chose.
Si le code que vous enregistrez résout un problème courant, vous devez remettre en question votre approche. Pourquoi consacrez-vous beaucoup d'efforts à résoudre un problème commun alors que ce sont probablement des solutions existantes (et de meilleure qualité) open source?
Si vous pensez avoir la meilleure solution à un problème courant, vous devez vraiment essayer de partager votre code publiquement sur un référentiel public et / ou un blog de code lorsque vous l'écrivez, et non le garder pour vous. Votre patron ne devrait pas s'opposer au partage d'une bibliothèque générique ni vous forcer à réinventer la roue (le cas échéant, trouver un nouvel emploi).
Si vous enregistrez votre code pour le montrer à un employeur potentiel ou pour améliorer vos compétences, je vous suggère de contribuer à un projet open source.
la source
Je n'ai pas encore gardé de code que j'ai fait pour les employeurs. J'ai conservé des documents en freelance (il peut être difficile de prendre en charge un client si je perds mon code).
Cependant, j’envisage de conserver le code que j’ai élaboré pour cet employeur. La raison en est que je suis un développeur Web et que j'ai développé beaucoup de choses côté client qui sont plutôt jolies. Je ne les ai pas conçus, mais je les ai mis en œuvre et j'ai souvent eu cette idée. Je voudrais garder une copie de ces choses pour construire un portefeuille en ligne. Comme nous le savons tous, les sites ne durent pas éternellement, je ne peux donc pas vraiment compter sur mon travail pour rester en ligne. Avoir une copie de sauvegarde me permettrait d'avoir un portfolio en ligne.
Je sais que les concepteurs conservent souvent des copies de leur travail (même s'il s'agissait d'un travail à louer) à des fins de portfolio.
Je ne suis pas sûr de la légalité de ceci (ce n'est pas explicitement mentionné dans mon contrat).
la source
but what are your thoughts on this?
S'il vous plaît, n'invitez pas ouvertement une conversation sur votre réponse en introduisant une autre question. Vous nous dites si nous devons conserver une copie de tout le code que nous écrivons. Vous pouvez améliorer la réponse en la modifiant.Eh bien, pour développer la logique commerciale de mon entreprise, je ne peux pas conserver le code, car il s'agit d'une propriété illégale et personnelle de l'entreprise. En tant que développeur, je sais comment développer cette logique afin de pouvoir la garder dans mon esprit. Fondamentalement, par défaut, il est stocké dans votre esprit, et si vous en avez besoin la prochaine fois, alors vous devriez automatiquement implémenter la logique / meilleure logique que la précédente. C'est la nature humaine et l'intelligence. :)
Mais le problème crée lorsque vous développez une logique d’utilité, elles sont réutilisables et toujours importantes, vous pouvez en avoir souvent besoin dans différents projets. Donc, vous devriez vouloir le garder avec vous.
J'ai une solution alternative à cela. Créez simplement un fichier JAR sans source / documentation pour ces utilitaires et ajoutez-le en tant que fichier JAR tiers externe dans votre projet. Ce faisant, vous pourrez probablement confirmer votre responsabilité ainsi que votre satisfaction personnelle à propos du code ;)
la source
Je ne conserve pas le code pour une raison simple: la société m'a payée pour l'écrire. Je leur donne mon code et ils me donnent mon salaire. Le type qui a préparé mon déjeuner ne peut pas en garder une partie pour lui-même, pourquoi le code serait-il différent?
En outre, comme je l'ai déjà dit, je quitte mon emploi, tous ces maux de tête y restent, nouvel emploi, nouveau départ, mais avec un peu plus d'expérience et de compréhension des types de problèmes rencontrés dans le domaine de cet ancien emploi.
la source