Je travaille pour un district scolaire. Chaque année, nous devons exporter une liste d'étudiants de notre système de gestion des étudiants et l'envoyer à une entreprise qui gère nos examens en ligne.
Donc, pour faire cette exportation, nous avons dû embaucher quelqu'un qui connaissait le fonctionnement interne de notre système de gestion des étudiants. Il a écrit une requête SQL (Adaptive Sybase SQL Anywhere) pour exporter les étudiants vers un fichier csv comme nous en avions besoin. C'était avant de commencer à travailler pour le district, donc pendant un certain temps, j'ai supposé que c'était en fait une application, jusqu'à ce que le moment soit venu pour moi de faire l'exportation moi-même.
Et chaque année, il nous facture 500 $ pour mettre à jour cette requête afin d'exporter les étudiants pour l'année en cours. Alors, quand j'ai découvert qu'il ne s'agissait que d'une requête (fichier .bat et fichier .sql), j'ai pensé "Je peux mettre à jour cela moi-même". Tout ce que je dois faire est de changer les années dans la requête (par exemple. 2009 à 2010).
La requête (fichier .sql) elle-même a ce commentaire en haut:
// This code was writtend by [the guy]
// and is the property of [his company]...Copyright 2005,2006,2008,2009
// This code MAY NOT BE USED without the expressed written consent of
// [his company].
(Oui, ça dit vraiment "écrit".)
Alors maintenant, mon patron craint que nous ne violions le droit d'auteur. Et que le gars va découvrir que j'ai mis à jour la requête moi-même parce que nous ne lui avons pas demandé de la mettre à jour cette année et d'engager une action en justice.
Revenons donc à la question du sujet: peut-il vraiment copyright cette requête? Et si oui, la modifier nous-mêmes est-elle une violation du droit d'auteur? Dans mon esprit, une seule requête n'est pas un code de programme. C'est plus une commande en ligne de commande. Mais je ne sais pas ce que c'est considéré légalement.
Réponses:
Si j'étais vous, j'écrirais une description complète de ce que la requête doit faire, y compris toutes les tables, les noms de champs, etc., et les publierais ici. Quelqu'un ici est susceptible d'être en mesure d'écrire une nouvelle version de la requête qui n'est pas protégée par les droits d'auteur de votre développeur, et vous pouvez la modifier chaque année selon le contenu de votre cœur.
la source
Il facture 500 $ pour changer de 2009 à 2010? Oh mec quelle déchirure.
Cette année, payez-lui 500 $ et dites-lui que vous voulez que la requête prenne l'année scolaire comme paramètre. Voyez comment il réagit en sachant que ce sera sa dernière fois à travailler pour vous.
la source
Tout d'abord, la clause de non-responsabilité standard: je ne suis pas un avocat, alors ne prenez rien de ce que je dis comme conseil juridique.
Ce que je dis ci-dessous concerne la loi aux États-Unis - dans d'autres pays, elle est susceptible de varier, bien que grâce à la Convention de Berne, la loi sur le droit d'auteur soit assez uniforme dans de nombreux pays.
Le droit d'auteur peut couvrir des œuvres créatives et écrites, et je dirais qu'une requête SQL peut / se situe dans cette plage.
Dans le même temps, à moins que son contrat avec l'école ne soit écrit de manière assez étrange, il a écrit cela pour eux comme un travail à louer. Dans ce cas, sa revendication du droit d'auteur est probablement un mensonge pur et simple - lorsqu'une œuvre est écrite pour être louée, le locataire, et non l'auteur, détient le droit d'auteur.
Il semble y avoir une certaine controverse quant à ce qui constitue un travail fait pour la location. Selon la loi américaine (17 USC, §101):
Étant donné que cette requête semble entrer dans le champ d'application de «(1)», elle peut être considérée comme une œuvre réalisée pour la location, même sans accord exprès à cet effet. L' exception possible serait que son contrat soit rédigé de sorte qu'il excluait la rédaction de la requête de tomber dans le cadre de son emploi.
La seule partie qui est vraiment ouverte à la question est de savoir s'il est admissible à titre d'employé ou non. Dans le cas d'un consultant, cela peut être une question difficile à répondre. Fondamentalement, s'il travaille de manière totalement indépendante et ne fournit qu'un résultat final, il ne l'est probablement pas. S'il travaille comme un employé normal et qu'il a le contrôle sur des choses comme son emploi du temps et ainsi de suite, il y a de fortes chances qu'il soit considéré comme un simple employé temporaire.
la source
Oui, les requêtes SQL PEUVENT être protégées par le droit d'auteur.
La question que vous devez vraiment vous poser est la suivante: détient-il réellement le droit d'auteur, ou dit-il simplement que c'est le cas? Cela dépendrait des termes du contrat en vertu duquel la requête a été écrite.
Edit: je veux modifier ma réponse - vous pouvez en faire ce que vous voulez (je ne suis pas avocat!), Tant qu'il n'y a pas de contrat étrange.
Cas 1: Il vous a vendu le fichier .sql en tant que "programme" - le fichier .sql lui-même est le programme, et vous pouvez le modifier comme vous le souhaitez - de même que si vous achetez une application, vous pouvez l'ouvrir avec un éditeur hexadécimal et changer les bits autour. Aucun CLUF ne l'interdit.
Cas 2: Il vous a vendu le fichier .sql en tant que code source - il vous a vendu la source, ce qui signifie que la source était ce que vous lui avez acheté et vous pouvez à nouveau le modifier car vous ne faites que modifier ce que vous avez acheté.
Les gens sont trop pris dans le fait que vous pouvez "voir la source" d'un fichier .sql - c'est soit un programme, soit un fichier source selon le contrat, et vous pouvez le modifier de toute façon. Le droit d'auteur protège les personnes contre la distribution non autorisée, et non la modification pour un usage interne.
la source
Trouvez quelqu'un qui n'a jamais vu le code de l'extorsion pour inspecter la structure de la table et dériver une requête équivalente dans une salle blanche.
la source
Conformément à la loi américaine sur le droit d'auteur, section 102, paragraphe b:
Voici l'original .
AVERTISSEMENT: moi! = Avocat
Juste une pensée: vous trouverez peut-être moins cher de faire réviser un avocat que de payer 500 $ / an pour les mises à jour.
la source
Comme toujours, si cela vous inquiète vraiment, demandez conseil à un avocat. Nous sommes développeurs.
Si je voyais quelque chose comme ça et que la requête n'était pas trop compliquée, je la réécrirais moi-même (peut-être en utilisant sa requête strictement pour comprendre le schéma de la base de données, mais c'est tout).
À ce stade, vous mettriez à jour votre travail ... pas celui de quelqu'un d'autre.
Quant à sa requête ... s'il n'y avait pas de contrat signé au moment du travail, je pense que ce serait un peu flou d'appliquer le droit d'auteur.
la source
Trouvez quelqu'un d'autre pour réécrire la requête pour vous (ou faites-le vous-même) et n'utilisez plus jamais son code.
Vous n'êtes pas obligé d'utiliser son code.
la source
En fait, je suis un peu surpris de certaines attitudes face à cette question. Le programmeur a d'abord été amené car personne d'autre n'a pu résoudre le problème. La solution a peut-être été facile ou non, mais personne d'autre n'a pu le faire et il l'a fait et l'a fait.
Il est ensuite rappelé chaque année pour l'entretien. Bien que le changement d'année ne soit pas exactement sorcier et peut-être que quelqu'un d'autre aurait suggéré des paramètres qui ne lui ont pas été demandés (je suppose). Quelqu'un a-t-il, par souci d'argument, écrit une spécification pour le programmeur à laquelle il n'a pas adhéré? Ou quelqu'un lui a-t-il dit de le réparer? Combien? 500 $? Cool, dépêche-toi. Oh et revenez l'année prochaine et maintenez-le s'il vous plaît "?
Une grande partie de la colère semble être liée à la simplicité du problème qu'il a résolu, mais ce n'est sûrement pas le but? Il a résolu le problème réel, s'est assuré que tout fonctionnait chaque année et a obtenu une récompense convenue. Mes calculs sont horribles, mais je soupçonne qu'il y a des gens qui peuvent écrire des applications pour faire des transformations de Fourier rapides sans transpirer. Mais parce qu'ils trouvent cela facile s'ils demandent peu ou pas d'argent pour "résoudre le problème".
Le point sur le droit d'auteur. Eh bien, la plupart des articles ici ont commencé par "JE NE SUIS PAS UN AVOCAT". Non, et je ne soupçonne pas non plus d'être le programmeur d'origine. Il a (avec enthousiasme) essayé de se protéger et je suis d'accord avec les autres pour dire que cela ne vaut pas le papier sur lequel il est écrit ou que tout ce qui est nécessaire est de réécrire ot sans regarder ou utiliser le code, ou certaines des autres suggestions ici . Ne pas marteler un gars pour gagner sa vie.
OK alors marquez-moi maintenant pour dissidence.
la source
Je ne suis pas avocat, mais d'après ce que je comprends:
À moins que vous ne disposiez par écrit d'un accord explicite de "travail contre rémunération" ou que vous ne puissiez prouver qu'il existait une compréhension mutuelle du "travail pour compte", alors il aurait été dans son droit légal de limiter l'utilisation de ce code.
Le terme «travail à forfait» signifie essentiellement tout ce qui a été créé par un individu dans le cadre d'un accord de «travail à forfait», qui est immédiatement la propriété de la personne qui les engage. Sans un tel accord, la nouvelle œuvre créée est automatiquement protégée par le droit d'auteur de la personne qui l'écrit. Je crois que tout travail créé par un employé (et non un sous-traitant) est automatiquement considéré comme un «travail à louer».
Bien sûr, vous ne pouvez pas protéger des idées de copyright, seulement une expression spécifique de ces idées.
la source
J'adorerais travailler pour votre district scolaire. Apparemment, vos entrepreneurs peuvent coller toutes les conditions qu'ils souhaitent dans leurs commentaires et votre première impulsion sera de les honorer plutôt que de rechercher le contrat et de déterminer quelles sont les conditions réelles.
la source
Personne ne semble avoir compris que le droit d'auteur traite de la copie. Si l'OP ne copie ni ne distribue, le droit d'auteur ne semble vraiment pas s'appliquer dans ce cas.
c'est-à-dire que l'École ne peut pas publier ou vendre comme son propre travail (peut-être) sans autorisation. Vous voudriez consulter votre avocat dans ces cas.
Dans tous les cas, l'OP a consenti à exécuter le programme qui exécute certains sql dans un fichier particulier. Je suppose que l'OP n'a contourné aucun contrôle anti-falsification mis en place par le programmeur.
Le sql, qui fait partie du programme (malgré le travail à la location), est juste du texte dans un fichier. Maintenant, il se peut que la modification de tout ou partie des fichiers liés au programme sans le consentement exprès du programmeur puisse annuler toutes les garanties, mais c'est vraiment tout.
Et pour 500 $, personne ne va vous poursuivre. Savez-vous ce que coûtent les avocats? Mais ne soyez pas surpris si vous annulez le support du programmeur d'origine. Juste avertissement là-bas.
Quand tout est dit et fait, si tout le gars fait pour 500 $, prenez un changement de 2 minutes, c'est un peu effronté. Mais êtes-vous certain que c'est tout ce qu'il fait? 500 $ pour une demi-journée de travail à un tarif de consultation normal n'est pas irréaliste.
la source
Écrivez votre propre version de "l'application" à partir de zéro. À quel point cela peut-il être dur?
la source
Commander Aharonian v. Gonzales .
Fondamentalement, vous ne pouvez pas copier le code source d'une application, mais vous pouvez créer une application fonctionnellement similaire tant qu'elle ne porte pas atteinte au droit d'auteur du code source lui-même.
En substance, vous pouvez recréer les requêtes SQL, mais vous ne pouvez pas les copier directement.
Néanmoins, parlez-en à un avocat si vous avez des préoccupations supplémentaires.
la source
Je pense que vous devrez examiner non pas le code, mais le contrat en vertu duquel la personne a écrit le code. Normalement, dans tout type d'activité de programmation, il y a une indication claire de la propriété du code source / code objet du projet.
Si ce n'était pas dans le contrat d'origine, je m'assurerais que c'était dans celui-ci.
la source
Le fait qu'il s'agisse d'une requête SQL est un hareng rouge. Il s'agit du code source et de la propriété intellectuelle comme s'il était compilé dans un exécutable. Comme d'autres l'ont déjà dit, toute limitation de votre utilisation du logiciel dépend principalement des termes de votre accord.
Je ferai remarquer que son commentaire dit:
Ce qui ne dit rien de le modifier, et si vous le modifiez, vous pouvez également affirmer que vous n'utilisez pas son code.
la source
Définissez une nouvelle vue en utilisant la requête d'origine comme base sans spécifier le paramètre de date, par exemple
Écrivez une nouvelle requête pour sélectionner dans la vue en appliquant le paramètre de date, par exemple
la source
Dépenser les 500 $ pour une lettre d'avocat
Mes 2 centimes sont tout au plus il peut vous demander de laisser son nom si vous réutilisez son code (ce qui est assez courant, non?
la source
Ma première question serait "Qu'a dit le contrat que vous aviez avec le développeur lorsque vous l'avez payé l'année dernière?" Ou, j'irais parler à l'avocat du système scolaire. Et prenez le contrat de l'année dernière s'il y en a un.
la source
Vous n'avez jamais dit où vous étiez, donc tout conseil que nous pourrions vous donner est inutile. Il existe différentes lois dans différentes juridictions.
Si vous êtes aux États-Unis, appelez votre barreau local, demandez à être référé à quelqu'un qui travaille avec les droits d'auteur sur les logiciels et faites confiance à ce que cette personne vous dit, pas à tout ce que vous lisez sur SO. Si vous êtes dans un autre pays, trouvez l'équivalent.
S'exprimant en tant que citoyen américain qui n'est en aucun cas un avocat, il y a quelques points à considérer.
Vous ne nous avez jamais dit à quel point la requête était compliquée. Il est impossible de protéger par copyright la seule implémentation raisonnable de quelque chose. Si c'est simple, réécrivez-le simplement. Si c'est compliqué, la requête n'est probablement pas strictement fonctionnelle, et il y a sans aucun doute une certaine créativité. Dans ce cas, vous devez le réécrire d'une manière différente ou embaucher quelqu'un.
Vous devriez pouvoir trouver quelqu'un qui réécrira la requête moins cher que de continuer à payer 500 $ / an, et il ne devrait pas être difficile de trouver quelqu'un de plus éthique que le développeur d'origine.
la source
Il s'agit d'un forum rempli d'ingénieurs logiciels qui en savent beaucoup sur le codage et peu sur les questions juridiques. Il vaut mieux que vous consultiez un avocat plutôt que de risquer de recevoir de mauvais conseils ici.
la source
Quelles étaient les conditions du contrat entre l'école et l'entrepreneur?
(Je ne garde pas beaucoup d'espoir ... mais je sais que tout ce que j'écris pour mon employeur est lié par contrat à eux qui détiennent les droits d'auteur)
J'espère que vous trouverez rassurant le nombre de messages scandalisés que vous avez eu sur cette question à propos de ce colporteur d'huile de serpent (je sais que je le fais)
la source
Tout d'abord, arrêtez cette absurdité. Vous n'êtes pas un avocat même quand vous dites "je suis un avocat, sérieusement" de toute façon. Je le sais parce que je suis fils du roi du Nigeria. Quiconque prend des conseils juridiques sur un forum est condamné.
1) Le code est protégé par copyright. S'il n'y a aucun contrat / accord stipulant le contraire, le droit d'auteur appartient à la personne qui a produit le code.
2) Facturer 500 $ chaque année pour changer la variable d'année est scandaleux mais pas contraire à l'éthique. Voilà comment fonctionne le capitalisme. Cependant, modifier un code jusqu'à invalider les droits de son propriétaire est certainement contraire à l'éthique.
Ce que vous devez faire est d'embaucher quelqu'un (ou le même gars, celui qui est le moins cher), pour écrire une requête qui fonctionne chaque année. C'est la bonne et éthique façon de s'éloigner de 500 $ chaque année. N'oubliez pas de bien définir vos conditions cette fois (qui détient les droits d'auteur, etc.).
la source
[its not a legal advice]
Vous payez ce gars pour quoi? Pour vous générer un rapport, ou pour écrire du code pour générer ce rapport? À mon avis , comme je ne suis pas avocat:
[/its not a legal advice]
la source
Vous le payez pour le service et non pour le code. Le fait qu'il vous ait laissé la source de son code ne vous permet pas de l'utiliser. Même s'il s'agissait d'un seul personnage, il l'a créé, il n'a pas vendu le droit d'auteur et il ne vous a pas autorisé à l'utiliser.
Si vous voulez économiser de l'argent, supprimez sa requête et écrivez la vôtre à partir de zéro ou faites-lui simplement savoir que vous allez faire exactement cela et proposez d'acheter sa requête pour 500 $. Il va probablement y aller car ce sera sa dernière occasion d'obtenir une partie de votre argent.
la source
Pourquoi ne pas simplement appeler le gars et lui demander ce qui se passe? Ce sont probablement des commentaires chauds dans son code et il ne donne probablement pas un tirage au sort. S'il se soucie du tout, c'est probablement plus à propos de la publication de son code que de son utilisation. De plus, s'il est préoccupé par plus de 500 $, il n'a de toute façon pas assez d'argent pour engager un avocat. Enfin, il devra prouver que vous avez utilisé son code - comment va-t-il faire cela?
@PurplePilot PurplePilot fait un bon point. Si je n'ai pas eu de nouvelles d'un client depuis un an, il y a de fortes chances que cela me prenne 30 minutes juste pour récupérer mes anciennes notes, mots de passe, etc. et rafraîchir ma mémoire autant que ce qui se passe. Ensuite, en supposant que le bouton à simple clic fonctionne toujours, je voudrais probablement au moins faire quelques vérifications ponctuelles. Ensuite, vous devez l'envoyer à la personne (qui sait si c'est la même personne cette année - vous devrez peut-être lui expliquer quoi faire avec le fichier). Ensuite, vous devez générer une facture si vous prévoyez d'être payé.
Fondamentalement, si vous consultez pour gagner votre vie, vous n'êtes pas payé 8 heures par jour. Mais quand quelqu'un vous appelle une fois par an, cela prend une heure ou deux uniquement pour des tâches administratives.
la source
Je ne suis pas avocat, yadda, yadda, yadda ...
C'est de www.copyright.gov:
"La protection des droits d'auteur n'est pas disponible pour les idées, la logique du programme, les algorithmes, les systèmes, les méthodes, les concepts ou les dispositions."
Si vous extrayez le code SQL de son fichier .bat, il tomberait très probablement dans la catégorie de "logique de programme". Il pourrait peut-être faire valoir que son simple fichier .bat est un "programme", mais il perdra très probablement cet argument si cela se résume à cela.
Aussi (et plus important encore), vous devez en fait déposer auprès du gouvernement pour obtenir un droit d'auteur sur un programme informatique. Je doute fortement qu'il l'ait fait chaque année (tout changement au programme nécessiterait une nouvelle demande et des frais non remboursables).
Enfin, si ce gars fait tellement mal pour ses 500 $ par an, je doute qu'il ait l'argent à dépenser pour un avocat pour plaider la cause. Faites-le vous-même et s'il le découvre réellement ET soulève une odeur (je doute qu'il le fera) alors laissez-le râler et s'extasier. Ne vous expliquez pas, n'entrez pas dans une dispute. Dites simplement que vous n'êtes pas intéressé par ce qu'il a à dire et "passez une bonne journée". Il s'en ira très probablement dans un souffle pour ne plus jamais en entendre parler.
Encore une fois, ce n'est pas un conseil juridique, je ne suis pas avocat, je n'en ai jamais joué à la télévision.
la source
Je ne suis pas avocat non plus mais ...
Je suppose que vous avez déjà l' autorisation d' UTILISER la requête que vous l' avez payé pour l'utilisation de celui - ci.
le verbiage ne dit pas quoi que ce soit de "le modifier " ... :)
la source
L'une de vos nombreuses options consiste à créer un remplacement de boîte noire. Cela ressemble à un problème bien compris pour lequel vous pouvez rédiger un court document sur les exigences. Je recommanderais que vous incluiez l'option de paramétrer des options variables telles que l'année en question (!).
Plus important encore, je vous recommande de rendre impossible l' injection SQL et les attaques similaires dans votre code de remplacement. À mon avis, si quelqu'un a créé une vache à lait comme celle-ci, ils se concentrent entièrement sur vous traire pour l'argent et pas tellement sur la production de la solution unique de qualité dont vous avez vraiment besoin.
Compte tenu de votre document d'exigences, de votre recommandation de disposer d'un système de gestion de base de données de qualité afin de ne pas être «piraté», vous devriez être en bonne position pour écrire un remplacement fonctionnel.
la source
Cela dépend du contrat entre le district scolaire et la personne qui a fait le travail. S'il s'agit d'un contrat Work for Hire (probablement le plus courant), le contractant (école) est propriétaire du travail.
la source