Quelqu'un peut-il protéger une requête SQL par copyright? [fermé]


207

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.


31
Dang, c'est une question difficile. J'ai hâte d'entendre les pensées des autres. Cependant, rappelez-vous que ce site ne peut pas vraiment vous donner de conseils juridiques, alors vous voudrez probablement parler à un véritable avocat pour une réponse définitive.
Topher Fangio

64
Engagez un consultant pour vous écrire une requête qui acceptera la plage de dates comme paramètres et exportera vos données. Dans le contrat, précisez que l'école est propriétaire du code - payez à l'heure de travail.
Damir Sudarevic

15
Que s'est-il passé en 2007?
Pierre-Alain Vigeant

46
OMG, veuillez poster la requête en tant que question différente. Je suis sûr que nous pouvons le réécrire à partir de zéro et le paramétrer.
Jonathan

88
Cela m'a fait penser à la citation de Borenstein: "Il convient de noter qu'aucun ingénieur logiciel formé à l'éthique ne consentirait jamais à écrire une procédure DestroyBaghdad. L'éthique professionnelle de base l'obligerait à la place à écrire une procédure DestroyCity, à laquelle Bagdad pourrait être donné en tant que un paramètre. "
JRL

Réponses:


221

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.


7
Le code SQL peut-il vraiment bénéficier d'un droit d'auteur de toute façon?
David Brunelle

3
Bien sûr, il y a le problème du code écrit automatiquement publié sous CC-Wiki, sauf si nous y renonçons ...
RCIX

7
@ David J'adore la façon dont vous posez à nouveau la question d'origine, mais d'une manière différente
Lumpy

33
@David, voir ici pour votre réponse: stackoverflow.com/questions/1840847/…
PaulG

10
@Alex, personne n'a dit de regarder l'implémentation de l'ancienne requête! En fait, tout le monde a spécifiquement évité de dire ça! Tu as fumé quelque chose? Tout ce qui était demandé était la définition de la base de données une explication de ce que la requête devait faire.
Ross Anderson

139

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.


83
Je peux vous faire économiser 400 $ sur cette réponse. Dites simplement au gars: "Écoutez, cette situation est ridicule. Je vais vous acheter ce code pour 100 $. Ou je peux le réimplémenter moi-même dans quelques heures. Votre choix."
Jason Orendorff

6
Ehh .. l'éthique, qui en a besoin ..
Ryan Emerle

5
Malheureusement, il proposera un prix différent (plus élevé) pour le paramétrer. Votre meilleur pari est de demander à quelqu'un de reconstruire la requête (et s'il vous arrive de laisser traîner sa requête actuelle pendant ce temps, alors quoi? S'il s'agit d'une requête d'une complexité infernale - ce dont je doute - elle peut être réécrite afin il ne ressemble pas à l'original, s'il s'agit d'une simple requête, une fois que la nouvelle semble différente, il ne peut pas prouver l'IP). Mes deux centimes.
Binary Worrier

3
son commentaire sur le copyright suggère que vous ne pouvez même pas exécuter le sql sans sa permission ... -Je suis d'accord cependant, quel con.
Matt

5
la meilleure solution est certainement d'engager un programmeur ÉTHIQUE pour l'écrire de la bonne façon. Peut-être avec un front-end propre pour permettre à une personne qui n'est pas programmeur de saisir la nouvelle année et d'appuyer sur un bouton ...
Paul

59

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):

 Un «travail fait pour la location» est ...

  (1) un travail préparé par un employé dans le cadre de son emploi;

  ou

  (2) une œuvre spécialement commandée ou commandée pour être utilisée comme contribution à
  œuvre collective, dans le cadre d'un film ou d'une autre œuvre audiovisuelle,
  comme traduction, comme travail supplémentaire, comme compilation, comme
  texte pédagogique, comme test, comme matériel de réponse à un test, ou comme
  atlas, si les parties en conviennent expressément dans un instrument écrit signé
  que le travail soit considéré comme un travail fait pour la location.

É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.


10
@Jerry C'est l'inverse. Si rien n'a été spécifié, ce n'est pas du travail à la location. Le travail pour la location doit être spécifiquement détaillé pour être valide.
Doug Neiner

C'est le nœud de la question du PO; si le contrat en fait un travail de location.
Adam Lassek

4
Je suis désolé, mais nous ne sommes pas tous aux États-Unis, nous ne comprenons pas tous ce texte mambo-jambo du droit ... pouvez-vous expliquer ce que vous disiez réellement?
elcuco

@eluco: Je peux essayer. Il indique que ce qu'un employé écrit dans le cadre de son travail appartient automatiquement à son employeur. S'ils ne sont pas des employés, c'est possible, mais seulement s'ils sont spécifiquement d'accord, et seulement si cela relève de classes spécifiques telles qu'une compilation (par exemple, un article pour une encyclopédie), du matériel de test tel qu'un test ou feuille de réponses pour un test, etc.
Jerry Coffin

1
N'est-ce pas tout un point discutable lorsque nous n'avons pas accès au contrat d'origine? Que dit le contrat original?
GregD

58

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.


3
Cela dépend de quel pays vous êtes
PeteT

52

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.


4
Un peu calomnieux, l'utilisation de l'extorsion dérogatoire, si exacte soit-elle peut-être mais sonore :)
Lazarus

11
Ce n'est pas de la diffamation si elle est exacte.
Breton

1
@Breton, ce n'est pas exact. L'extorsion est un crime spécifique, et non ce qui se passe ici.
tster

2
@Breton: la vérité est généralement mais pas toujours une défense contre la diffamation.
Jimmy

11
"Un peu calomnieux". Désolé, comment la diffamation intervient-elle étant donné que l'auteur de la requête est complètement anonyme? Je trouve les commentaires forts très intéressants. Semble avoir touché un nerf cru.
Ash

33

Conformément à la loi américaine sur le droit d'auteur, section 102, paragraphe b:

En aucun cas, la protection du droit d'auteur pour une œuvre d'auteur originale ne s'étend à une idée, une procédure, un processus, un système, une méthode de fonctionnement, un concept, un principe ou une découverte, quelle que soit la forme sous laquelle elle est décrite, expliquée, illustrée ou incarnée. dans un tel travail.

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.


8
C'est exact, il ne peut pas revendiquer le droit d'auteur sur le processus lui-même, mais il peut revendiquer le droit d'auteur du «code» spécifique qu'il a écrit pour exécuter ce processus. Si vous essayez de lire cela comme une déclaration désactivante pour ce problème, aucun logiciel ne sera protégé par copyright.
Lazarus

1
@Lazarus, il réclame une protection contre l' exécution non autorisée du code .. Encore une fois, pas un avocat :)
Ryan Emerle

Attention au jargon Ryan, certains types non programmeurs peuvent considérer! = Comme "Extra égal".
Jrud

@Ryan, pas un avocat non plus et c'est un sacré bon point, mais si le code était accepté avec cette clause, je dirais qu'ils se sont à peu près hogtied.
Lazarus

1
@Ryan - Je pense que vous vouliez dire "que" pas "alors" dans la dernière phrase, cela rend le sens très différent ...
NVRAM

23

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.


4
Aïe, c'est de l'ingénierie inverse ... tout aussi douteux.
Lazarus

4
Mais vous n'effectuez pas l'ingénierie inverse de sa requête ... en l'utilisant uniquement pour déterminer la structure de la base de données (d'une base de données qui ne lui appartient pas pour commencer).
Justin Niessner

1
Hmmm ... si vous étiez «salle blanche», c'est-à-dire que vous n'aviez jamais vu son code et que vous avez écrit votre propre requête à partir de zéro sans aucune référence à son code, que ce soit directement ou à travers les commentaires de quelqu'un qui avait vu son code, alors vous avez raison. Malheureusement, l'Asker a déjà admis la visibilité du code
Lazarus

Ce n'est même pas nécessaire. Vous pouvez certainement trouver les données sans regarder la requête, avec plus ou moins d'effort, sûrement dans environ 500 heures
Vinko Vrsalovic

1
@Vinko, le problème vient d'essayer de contourner le droit d'auteur en voyant du code que vous souhaitez utiliser mais ne voulant pas être lié par le droit d'auteur de l'auteur. au code protégé par le droit d'auteur. Il est presque impossible de prouver que vous n'avez pas appris quelque chose du code d'origine, une fois que vous l'avez lu. La réponse est de demander à quelqu'un d'autre qui n'a jamais vu le code de le réécrire et de s'assurer qu'il renonce au droit d'auteur ou que vous disposez en conséquence d'une licence plus permissive.
Lazarus

21

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.


2
Je suis d'accord. Ne payez pas à ce gars un autre centime. Période.
BBlake

20

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.


6
Il valait peut-être le paiement initial. Ce n'est pas le problème ici. Le fait qu'il continue de percevoir 500 $ par an pour changer un numéro me donne à penser qu'il n'adhère à aucun code d'éthique que je connais.
David Thornley

Mais s'il change deux nombres, ou trois nombres, ou quatre nombres ou x nombres ..... ce serait ok? Est-ce la vraie chose qu'il fait ou est-ce juste la quantité?
PurplePilot

C'est un programmeur paresseux qui n'a pas le temps ni la motivation pour améliorer le code. Si le système scolaire veut le payer, alors tant pis ... c'est comme un contrat d'entretien.

5
Je ne vois pas de problème avec lui facturer 500 $, 1000 $ ou un million de dollars pour changer un paramètre. Si l'école veut le payer, alors tant pis, et bon pour lui d'avoir fait de l'argent. Je vois cependant un problème avec le copyright d'une requête. Je veux dire wtf.
Dominic Bou-Samra

1
Si le développeur expliquait au client au départ qu'il était effectivement tenu de payer une maintenance annuelle pour résoudre son problème, alors ce serait différent. Je doute que l'une ou l'autre partie ait accepté des résidus pour l'œuvre originale et cela équivaut donc à une extorsion.
Thomas

16

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.


1
@dcneiner: Un entrepreneur est normalement considéré comme un employé temporaire. Cette requête SQL ne semble appartenir à aucune des catégories pour lesquelles elle aurait besoin d'un accord exprès pour être considérée comme une œuvre réalisée pour la location.
Jerry Coffin

@Jerry, je suppose que je ne suis pas d'accord. Vous vous attendez à ce que les sous-traitants aient leur propre maquette d'ouvrier, facturent régulièrement, etc. Je ne vois pas en quoi ils seraient considérés comme des employés. Et la loi sur le travail à la carte requiert un accord explicite ou une preuve que c'était la compréhension.
Doug Neiner

Si un entrepreneur travaille dans les locaux d'un employeur potentiel et se voit confier un travail par l'employeur, etc., dans certaines circonstances, l'entrepreneur sera considéré comme un employé à certaines fins aux États-Unis. Je doute vraiment que ce soit l'un des cas, mais bien sûr je ne suis pas avocat et ce n'est pas un conseil illégal.
David Thornley

Hmm, une requête SQL ne serait-elle pas une implémentation d'une idée? Ils pourraient cependant tordre un peu la requête pour leur propre implémentation.
John M.

16

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.


12

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.


Si l'école veut le payer et l'enrichir, tant pis. C'est juste un programmeur capitalisant. J'avais l'habitude de facturer 20 $ pour changer quoi que ce soit sur une page Web que j'avais conçue pour un client après la publication du site Web. Ils l'ont payé parce que je l'ai conçu, connaissais le site et qu'il est plus coûteux de demander à quelqu'un d'autre de le faire quand il n'en a pas les connaissances.

4
Le droit d'auteur traite bien plus que de la copie ...
Goran

@Goran, le droit d'auteur concerne fondamentalement le monopole limité accordé à l'auteur d'une œuvre pour contrôler la copie et la distribution.
Robert Paulson

2
@Robert: Le droit d'auteur concerne tout ce que la loi sur le droit d'auteur dit (théoriquement limité par la Constitution américaine aux États-Unis). Le monopole limité comprend le droit de créer des œuvres dérivées.
David Thornley

1
@David, Cela va sans dire, cela dépend aussi entièrement de l'endroit où vous vivez et travaillez. Mon but était de comprendre l'esprit de ce à quoi sert le droit d'auteur, et que modifier quelque chose que vous possédez n'est pas une violation du droit d'auteur. Cela peut être une violation du contrat ou de la garantie, mais ce qu'ils proposent ne semble pas être une violation du droit d'auteur.
Robert Paulson

10

Écrivez votre propre version de "l'application" à partir de zéro. À quel point cela peut-il être dur?


10

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.


Je suis à peu près sûr que, parfois, il n'y a qu'une seule façon d'écrire une requête, il peut donc prétendre que vous l'avez copié dans tous les cas. Le cas est cependant bs.
Stefano Borini

8

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.


8

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:

// This code MAY NOT BE USED without the expressed written consent of 

Ce qui ne dit rien de le modifier, et si vous le modifiez, vous pouvez également affirmer que vous n'utilisez pas son code.


4
Une version modifiée serait considérée comme un travail dérivé du script original selon l'ampleur de l'altération. Vous devrez réécrire la majeure partie pour éviter le droit d'auteur d'origine, auquel cas vous pouvez tout aussi bien réécrire le tout et en finir avec.
Adam Lassek

6

Définissez une nouvelle vue en utilisant la requête d'origine comme base sans spécifier le paramètre de date, par exemple

create or replace view MY_VIEW as
 select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
   from STUDENT_TABLE
  where STUDENT_CLASS = 10

Écrivez une nouvelle requête pour sélectionner dans la vue en appliquant le paramètre de date, par exemple

set DATE_PARM = '2009';
select STUDENT_NAME, STUDENT_NO, CLASS_YEAR
  from MY_VIEW
 where CLASS_YEAR = %DATE_PARM

5

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?


Ceci est courant dans le code open source. S'il est facturé 500 $ / an, je doute que ces gens considèrent leur code comme open source.
jaestevan

2
L'Open Source (tel que défini par l'OSI) doit être spécifié par le choix de la licence. Je n'ai pas vu de licence. Par conséquent, quiconque possède légitimement le code est légalement libre de l'utiliser, mais pas de créer une œuvre dérivée. Changer l'année peut bien constituer la création d'une œuvre dérivée; consultez un avocat spécialisé dans le droit d'auteur des logiciels plutôt qu'un groupe de développeurs.
David Thornley

4

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.


4

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.


4

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.


4

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)


4

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.).


2
@ssg - "Facturer 500 $ chaque année pour changer la variable d'année est scandaleux mais pas contraire à l'éthique." OMI, c'est scandaleux et contraire à l'éthique. Ce n'est tout simplement pas illégal.
Stephen C

@ssg - Oh oui, et essayer de revendiquer des droits IP sur une requête SQL que vous avez écrite pour la location est également contraire à l'éthique ... sauf si vous négociez cela avec le client dès le départ.
Stephen C

@Stephen: Non. "Cher" n'est pas "contraire à l'éthique". C'est juste une économie de marché libre. L'école n'avait pas à donner le travail à ce type. Il a CHOISI de le faire. Ils pourraient toujours chercher des alternatives et choisir l'offre la moins chère. «Tenter de revendiquer des droits de propriété intellectuelle pour un travail contre rémunération» n'est tout simplement pas vrai. Comment savez-vous cela sans voir aucun contrat ou accord? Si l'école n'a signé aucun contrat qui transfère les droits (ce que la question implique), le droit d'auteur appartient au propriétaire du code et il n'y a rien d'éthique à cela.
Sedat Kapanoglu

Profiter (facturer plus cher que les prix du marché) d'un consommateur (l'école) simplement ignorant est contraire à l'éthique.
Mark Brackett

@Mark: Ce que vous dites est le fondement du capitalisme (facturer plus que la valeur réelle perçue, donc faire du profit). Il n'y a pas une telle notion éthique qui oblige le vendeur à évaluer les connaissances de l'acheteur sur les conditions du marché avant de faire une offre. Les gens tombent toujours dans cette situation lorsqu'ils achètent volontiers dans un magasin X au lieu d'un magasin Y, ce qui est moins cher. Je trouve donc ce genre de critique envers le comportement de ce type parce que son nom n'était pas "Best Buy" simplement hypocrite.
Sedat Kapanoglu

3

[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:

  • Si vous le payez pour un programme informatique, cela vous appartient. (comme l'a dit dcneiner, juste si c'était dans le contrat)
  • Si vous le payez pour utiliser son programme, cela lui appartient.

[/its not a legal advice]


@Ruben: Toutes mes excuses, mais dans ce contexte, ce sont des "conseils" et non des "conseils". Conseiller est un verbe, conseiller est un substantif.
Binary Worrier

1
"Si vous le payez pour un programme informatique, cela vous appartient." Seulement si c'était tristement dans le contrat. Ce sont de mauvais conseils en général. Ne prenez pas quelque chose pour acquis, sauf si c'est dans un contrat.
Doug Neiner

3

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.


3

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.


3

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.


2

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.

// 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].

le verbiage ne dit pas quoi que ce soit de "le modifier " ... :)


Cette déclaration permet de contrôler la distribution du produit, donc s'il s'agit d'une requête eureka, il / elle peut toujours le vendre.
Russell

C'est aussi ce que je comprends. Vous l'avez déjà payé, donc le code est à vous d'utiliser et de modifier comme bon vous semble. Ne donnez le code à personne et ne le vendez à personne.
Kenny Drobnack

Pour modifier un fichier, vous devez le copier.
Stephen C

1
La modification d'un fichier copié n'affectera pas l'original. Je suggérais que la modification de l'original devrait être OK, car ils l'ont payé ... ce qui signifie qu'il n'y a pas de copie, juste une modification.
luckykind

2

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.


2

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.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.