Le code pioché dans Stack Overflow devra bientôt être correctement sourcé

Nicolas Furno |

Tous les développeurs connaissent Stack Overflow ou l’une de ses variantes plus spécialisées. Ce site permet de poser une question et de recevoir des réponses de la part de n’importe qui, mais avec un système de vote qui fait remonter les meilleures. Un système particulièrement efficace, qui fait que l’on y trouve souvent une réponse à sa question. Et comme c’est un site dédié aux développeurs, on y trouve aussi souvent des lignes de code.

Ces morceaux de code sont souvent récupérés et intégrés à des scripts ou des logiciels complets. Mais quid de l’attribution et de la licence associée ? Tout ce qui est placé dans Stack Overflow respectait déjà une licence Creative Commons CC BY-SA qui est assez libre, puisqu’elle permet de partager et de modifier un contenu pour l’utiliser dans n’importe quel contexte, y compris commercial. Deux contraintes imposées et notamment l’obligation de créditer correctement le travail original.

Cette exigence de source n’est pas nouvelle donc, mais elle n’était pas vraiment respectée jusque-là. C’est pour cette raison que les créateurs de Stack Overflow vont changer de licence pour le code partagé sur leurs sites. Ce sera désormais la licence MIT qui permet aussi le partage et la modification du contenu partagé, mais qui est plus strict sur les exigences d’attribution. Cette licence est aussi mieux adaptée au partage de lignes de code et elle est beaucoup plus claire sur ce qui doit être fait quand on veut utiliser ces lignes.

Le changement a fait beaucoup de bruit dans la communauté, notamment parce que la première proposition imposait de citer le nom du développeur qui avait publié le code sur Stack Overflow, ainsi que d’autres détails. Finalement, le site a entendu les critiques et un lien vers la page où le contenu a été trouvé suffira. Il ne sera pas non plus nécessaire d’associer à chaque bout de code la licence MIT complète, elle sera sous-entendue quand on placera l’URL vers la ressource originale.

Un lien vers la source en commentaire est considéré comme une attribution suffisante.
Un lien vers la source en commentaire est considéré comme une attribution suffisante.

La polémique n’est pas tout à fait éteinte, notamment parce que le site gérera deux licences : celle du MIT pour le code, et la Creative Commons pour tout le reste. La distinction entre les deux reste à la discrétion des utilisateurs, ce qui pourra poser problème à l’avenir, et puis certains utilisateurs considèrent que l’on ne devrait pas la faire du tout. Pour eux, tout ce qui est mis en ligne sur Stack Overflow est de la connaissance et l’intégralité du contenu devrait rester sur l’ancienne licence.

Quoi qu’il en soit, le changement est prévu pour le 1er mars 2016 et il est obligatoire, sur tous les sites du réseau.

avatar Glop | 

Pas simple cette histoire. Pour ma part je ne reprend jamais le code de Stack Overflow, mais je le consulte pour comprendre certains problèmes. Ensuite je code à ma sauce. Faut-il citer chaque problème résolu avec Overflow ou juste la reprise intégrale d'un code source ?

avatar staycalm | 

Et surtout, n'est-ce pas beaucoup de bruit pour rien ? À moins de copier/coller pas mal de lignes de code, qui pourra affirmer que telle ou telle ligne n'a pas été copiée de Stack Overflow... Et encore, pour du HTML/Javascript on peut joir le code source (d'ailleurs pour le Javascript il est souvent "minified" pour le compacter, le rendant illisible au passage, du coup on ne peut plus trop comparer...)

Il y tellement de code sur cette Stack Overflow, on doit pouvoir trouver à peu près tout. À partir de combien de caractères peut-on appliquer un copyright sur un bout de code?

Plus une question de principe qu'autre chose, ça ne changera rien aux habitudes...

avatar Domsware | 

@staycalm :
Je pense comme toi.

Je ne copie/colle pas de code depuis SO et ne l'utilise que pour consultation.

Et concernant le code que j'y dépose il est à disposition libre, sans besoin d'être cité. C'est un échange de bons procédés.

avatar hmmmr | 

Effectivement pas simple, je me sers souvent de SO, plus pour comprendre la syntaxe d'une fonction ou pour apprendre une technique/facon de faire générale que pour copier/coller un code qui ne sera jamais vraiment adapté a moins d'avoir un bol monstre ou de chercher a faire un loop/replace tout simple comme dans votre exemple. Mais alors celui qui doit sourcer en commentaire chaque bout de fonction avec ce niveau, je n'imagine pas la tete de son code, plus de commentaires que de code..
Ce genre d'exemple serait pour moi du domaine publique, c'est limite l'exemple de la doc.. :/

avatar iapx | 

Pour ma part je mets *TOUJOURS* le lien vers la page, non pour la licence, mais pour la maintenance du code et pour l'intérêt réel des discussions qu'on y trouve, y compris des mises à jours qui peuvent aider: la solution est une chose en elle-même, les discussions ont encore plus de valeur pour moi.

avatar heret | 

Avec l'emploi systématique de code à la place de programme, instruction, commande et d'autres mots, MacG sombre dans la médiocrité, et iGen avec lui. C'est un peu le phénomène de la grenouille dans une casserole d'eau posée sur la gazinière.

MacG sera-t-il le prochain MacPlus ?

avatar Nicolas Furno | 

@ heret : même les Québécois utilisent code pour des lignes d'instruction, donc nous aussi. Et puis c'est peut-être un anglicisme et un abus de langage, mais c'est un terme que tout le monde comprend. Alors qu'une instruction n'est pas nécessairement lié au développement.

PS : les grenouilles, c'est excellent, mais plutôt à la poêle, avec une belle noix de beurre, du persil et de l'ail.

avatar Anthony Nelzin-Santos | 
@nicolas : c'est malin, j'ai faim maintenant !
avatar Florian Innocente | 

Les mangeurs de grenouilles sont complices des assassins qui leur arrachent les cuisses et les rejettent vivantes dans l'eau.

On va te faire la même chose Nicolas Furno, on va voir si tu vas apprécier, même avec noix de beurre.

avatar Nicolas Furno | 
@ Florian Innocente : dit celui qui gave des canards pour bouffer leur foie !
avatar jerome74 | 

Hein? Le code, c'est exactement ce qu'on trouve sur stackoverflow, du code source (entre autre). Les mots que vous proposez ne sont pas du tout équivalents. On peut critiquer l'usage de certains anglicismes quand un mot français equivalent existe, mais ce n'est pas le cas ici.

CONNEXION UTILISATEUR