Question:
Pourquoi les chercheurs CS hésitent-ils à partager du code et quelles techniques puis-je utiliser pour encourager le partage?
Stephen Tierney
2013-05-27 11:29:12 UTC
view on stackexchange narkive permalink

Lors de mes recherches sur un sujet, je suis tombé sur un certain nombre d'articles qui prétendent améliorer l'état de l'art et qui ont été publiés dans des points de vente respectés (par exemple, CVPR, ICIP). Ces articles sont souvent rédigés d'une manière qui masque certains détails et leurs méthodes peuvent manquer de détails. En contactant ces auteurs pour plus d'informations et en leur demandant s'ils voudraient bien rendre leur code source disponible, ils cessent de répondre ou refusent l'offre.

Pourquoi les chercheurs en informatique hésitent-ils à partager leur code?

J'aurais pensé que la diffusion de votre code source aurait des effets positifs pour l'auteur, par exemple, une plus grande reconnaissance et visibilité au sein de la communauté et plus de citations. Que me manque-t-il?

Pour l'avenir, quelles sont les meilleures façons d'approcher des collègues chercheurs qui permettront d'obtenir une copie de leur code source plus facilement?

Un problème important, mais vous l'avez divisé en deux questions? (Sur les sites SE, il devrait y avoir une question pour une ... eh bien, une question.) Autrement dit, pourriez-vous faire un autre message à partir de la deuxième question?
J'ai envisagé de séparer les questions, mais j'ai pensé que la deuxième ne serait pas autonome.
Vous pouvez jeter un œil à l'initiative Collective Mind: http://www.hipeac.net/system/files/grigori.pdf et le modèle de publication correspondant http://ctuning.org/cm-journal
Je pourrais publier une réponse, mais ce serait quelque chose comme - comment pourrions-nous changer les choses pour que plus de gens publient leur code source? Serait-ce acceptable ou relève-t-il d'une question différente?
@FaheemMitha, cela me semble être une question différente - mais bonne. Pourquoi ne postez-vous pas une question différente demandant comment changer les choses afin que davantage de chercheurs CS partagent leur code source?
La solution à ce problème est simple: mieux financer la recherche sur la CS (et la recherche en général). Le problème est qu'il n'y a pas de support pour le coût d'obtention du code de recherche à un niveau de qualité où les coûts de maintenance sont supportables.
@DikranMarsupial Je ne suis pas convaincu que dépenser plus d'argent sur les chercheurs améliorera la situation car ils ont peu de temps. Je ne pense pas que la distribution de code de haute qualité soit le problème, c'est juste une excuse que les gens utilisent. Il vaut mieux publier un mauvais code que n'en libérer aucun.
des fonds supplémentaires résoudront le problème car cela signifie qu'ils peuvent soit embaucher quelqu'un pour maintenir le code, soit être rachetés d'autres tâches pour libérer le temps de le faire eux-mêmes. J'aime publier du code, et je l'ai fait dans le passé, la raison pour laquelle je n'en publie pas plus est que je n'ai pas le temps pour la maintenance, ce que je sais par expérience est nécessaire. Je ne suis pas d'accord pour dire qu'un mauvais code vaut mieux que rien, j'ai perdu plusieurs semaines plus tôt cette année à essayer de faire fonctionner le code de recherche de quelqu'un d'autre, en vain. Bien sûr, les auteurs ont été d'une aide limitée car ils ont les mêmes problèmes que moi.
Je devrais ajouter que ma femme est assez active dans la fourniture de code et est conduite à la distraction par le volume de demandes d'aide des utilisateurs, de corrections de bogues, d'extensions, etc. Dans mon cas, il y a un public limité pour mon logiciel, si vous êtes dans un domaine là où il y a un large public, le coût de la maintenance est * loin * insignifiant.
Cinq réponses:
D.W.
2013-05-28 09:59:46 UTC
view on stackexchange narkive permalink

Pourquoi les chercheurs hésitent-ils à partager leur code: D'après mon expérience, il existe deux raisons courantes pour lesquelles certains / de nombreux chercheurs ne partagent pas leur code.

Premièrement, le le code peut donner aux chercheurs un avantage important pour les travaux de suivi. Cela peut les aider à avoir une longueur d'avance sur les autres chercheurs et à publier plus rapidement les recherches de suivi. Si les chercheurs ont l'intention de faire des recherches de suivi, garder leur code secret leur donne un avantage concurrentiel et les aide à éviter d'être récupérés par quelqu'un d'autre. (Cela peut être bon ou mauvais; je ne prends pas position là-dessus.)

Deuxièmement, beaucoup de code de recherche est, eh bien, de qualité recherche. Les chercheurs ont probablement pensé que c'était assez bon pour tester les hypothèses de l'article, mais c'est tout. Il peut avoir de nombreux problèmes connus; il peut ne pas avoir de documentation; il peut être difficile à utiliser; il peut se compiler sur une seule plate-forme; et ainsi de suite. Tous ces éléments peuvent compliquer l'utilisation par quelqu'un d'autre. Ou, cela peut prendre beaucoup de travail pour expliquer à quelqu'un d'autre comment utiliser le code. En outre, le code peut être un prototype, mais pas de qualité de production. Il n'est pas inhabituel de prendre des raccourcis lors du codage: des raccourcis qui n'affectent pas les résultats de la recherche et conviennent dans le contexte d'un document de recherche, mais qui seraient inacceptables pour un code de qualité de production déployé. Certaines personnes sont perfectionnistes et n'aiment pas l'idée de partager du code avec des faiblesses connues ou où ils ont pris des raccourcis; ils ne veulent pas être gênés quand les autres voient le code.

La deuxième raison est probablement la plus importante; c'est très courant.

Comment aborder les chercheurs : ma suggestion est de recentrer vos interactions avec ces chercheurs. Quels sont vos vrais objectifs? Vos vrais objectifs sont de mieux comprendre leurs algorithmes. Alors, partez de cette perspective et agissez en conséquence. S'il y a des parties de l'article qui sont difficiles à suivre ou ambiguës, commencez par lire et relire leur article, pour voir s'il y a des détails que vous avez peut-être manqués. Réfléchissez bien à la façon de combler les lacunes manquantes. Faites un effort sérieux par vous-même, d'abord.

Si vous êtes au niveau de la recherche et que vous avez fait un effort sérieux pour comprendre, et que vous ne comprenez toujours pas ... envoyez un courriel aux auteurs et demandez-leur des éclaircissements sur le (s) point (s) spécifique (s) que vous pensez ne pas être clair. Ne dérangez pas inutilement les auteurs - mais si vous vous intéressez à leur travail et que vous avez une bonne question, de nombreux auteurs seront heureux de répondre. Ils sont simplement reconnaissants que quelqu'un lise leurs articles et s'intéresse suffisamment à leur travail pour étudier attentivement leur travail et poser des questions pertinentes.

Mais assurez-vous de poser de bonnes questions. Ne soyez pas paresseux et demandez aux auteurs d'éclaircir quelque chose que vous auriez pu découvrir par vous-même avec plus de réflexion. Les auteurs peuvent le sentir et vous considéreront comme un ravageur, pas comme un collègue apprécié.

Très important: Veuillez comprendre que ma réponse expliquant pourquoi les chercheurs ne partagent pas leur code est conçu comme une réponse descriptive , pas une réponse prescriptive . Je ne porte absolument aucun jugement sur la question de savoir si leurs raisons sont bonnes ou si les chercheurs ont raison (ou tort) de penser de cette façon. Je ne prends pas position sur la question de savoir si les chercheurs devraient partager leur code ou non; Je décris simplement comment certains chercheurs se comportent . Ce qu'ils devraient faire, c'est une boule de cire complètement différente.

L'affiche originale a demandé de l'aide pour comprendre pourquoi de nombreux chercheurs ne partagent pas leur code, et c'est ce à quoi je réponds. Les arguments pour savoir si ces raisons sont bonnes sont subjectifs et hors sujet pour cette question; si vous voulez avoir ce débat, postez une question distincte.

Et s'il vous plaît, je vous exhorte à utiliser un peu d'empathie ici. Que vous pensiez que les chercheurs ont raison ou tort de ne pas partager leur code dans ces circonstances, sachez que de nombreux chercheurs ont ont des raisons qui leur semblent valables et appropriées. Essayez de comprendre leur état d'esprit avant de les critiquer par réflexe. Je n'essaie pas de dire que leurs raisons sont nécessairement bonnes et bonnes pour le terrain. Je dis simplement que, si vous voulez persuader les gens de changer leurs pratiques, il est important de comprendre d'abord les motivations et les forces structurelles qui ont influencé leurs actions actuelles, avant de vous lancer dans une tentative de les inciter à agir différemment.


Annexe: Je souscris définitivement à la recommandation de Jan Gorzny de lire l'article dans SIAM News qu'il cite. C'est informatif.

J'apprécie la franchise et la sévérité de cette réponse.
+1 La plupart du code est écrit jusqu'à une date limite, que ce soit un doctorant essayant de terminer ou un post-doc obtenant un livrable à temps. Je connais beaucoup de gens (moi-même fermement inclus) qui seraient gênés d'être jugés sur la qualité de leur code plutôt que sur la recherche réelle qu'il soutient.
Erel Segal-Halevi
2013-05-27 14:18:57 UTC
view on stackexchange narkive permalink

Stephen, j'ai exactement la même expérience que vous, et mon explication est que le rapport avantages / coûts est trop faible.

Emballer un logiciel, afin qu'il puisse être utilisé par un autre personne, est difficile - souvent encore plus difficile que de l'écrire en premier lieu. Cela nécessite, entre autres:

  • d'écrire de la documentation et des instructions d'installation,
  • de s'assurer que le code est exécutable sur une variété d'ordinateurs et de systèmes d'exploitation (je code sur Ubuntu, mais vous pouvez coder sur Windows, donc je dois obtenir une machine virtuelle Windows pour m'assurer qu'elle fonctionne là aussi),
  • répondant aux questions de maintenance du formulaire "pourquoi j'obtiens ceci et cette erreur de compilation lorsque je compile votre programme sur la nouvelle version d'Ubuntu "(allez comprendre. Peut-être que la nouvelle version d'Ubuntu a abandonné une bibliothèque requise par le code? qui sait).
  • prendre soin des dépendances tierces (mon code peut fonctionner très bien, mais cela dépend d'un fichier jar tiers dont l'auteur a décidé de supprimer du Web).

De plus, je devrais être disponible pour répondre aux questions et corriger les bogues, plusieurs années après diplômé, quand je travaille déjà à plein temps ailleurs et que j'ai de jeunes enfants.

Et tout cela, sans recevoir de paiement spécial ni de crédit académique pour tous ces efforts.

Une solution possible à laquelle j'ai récemment pensé est de créer une nouvelle revue, Journal of Reproductible Computer Science , qui n'acceptera que les publications dont les expériences peuvent être répétées facilement. Voici quelques-unes de mes réflexions sur un tel journal:

Les articles soumis doivent avoir une section reproduction détaillée, avec (au moins) les sous-sections suivantes: - pre -requisites - quels systèmes, logiciels tiers, etc., sont nécessaires pour répéter l'expérience; - instructions - des instructions détaillées sur la façon de répéter l'expérience. - licences - licence open source ou open source, mais doit permettre une utilisation gratuite à des fins de recherche.

Le processus de révision nécessite que chacun des 3 évaluateurs différents, d'horizons différents, passe par cette section, en utilisant différents ordinateurs et systèmes d'exploitation.

Après le processus de révision, si l'article est accepté pour publication, il y aura une autre étape de pré-publication , qui durera un an. Au cours de cette étape, l'article sera disponible pour tous les lecteurs, et ils auront la possibilité de répéter l'expérience et également de contacter l'auteur en cas de problème. Ce n'est qu'après cette année que l'article sera enfin publié.

Cette revue permettra aux chercheurs d'obtenir le crédit pour le travail difficile et important de rendre leur code utilisable par d'autres.

EDIT: Je vois maintenant que quelqu'un y a déjà pensé! https://www.scienceexchange.com/reproducibility

"Science Exchange, PLOS ONE, figshare et Mendeley ont lancé l'Initiative de reproductibilité pour résoudre ce problème. Il est temps de commencer récompenser les personnes qui prennent le temps supplémentaire pour faire le travail le plus soigné et reproductible. Les incitations académiques actuelles mettent l'accent sur la nouveauté, ce qui se fait au détriment de la rigueur. Les études soumises à l'Initiative rejoignent un pool de recherche, qui sera reproduit de manière sélective au fur et à mesure que le financement devient disponible. L'Initiative fonctionne sur une base opt-in parce que nous pensons que le consensus scientifique sur le travail le plus solide, par opposition au travail simplement le plus cité, est un signal précieux pour aider à identifier des résultats reproductibles de haute qualité qui peuvent être fiables construit pour faire progresser la compréhension scientifique. "

Je ne pense pas que ce soit une réponse valable. Vous pouvez simplement documenter votre configuration ou même simplement distribuer le code. Même si je ne peux pas courir, je peux en apprendre beaucoup en l'inspectant.
J'ai aussi pensé de cette façon, mais au fil du temps, j'ai appris que lorsque vous publiez votre code au public, vous en avez inévitablement une certaine responsabilité. Si le code n'est pas bien documenté, s'il ne se compile pas, s'il ne s'exécute pas, les gens vous en tiendront responsables et cela pourrait nuire à votre réputation.
Je suis d'accord que si votre code ne se compile pas ou ne s'exécute pas, cela peut être mauvais pour votre réputation, mais je pense qu'il est raisonnable de refuser les demandes de modification / correction de votre code si vous le publiez simplement. Si vous gérez un projet open source différent, mais pourquoi la publication de code source nécessiterait-elle plus que simplement répondre à des questions (comme le ferait toute publication)?
* Les articles soumis doivent avoir une section de reproduction détaillée * - une idée similaire a été évoquée dans la communauté de l'architecture informatique depuis quelques années, mais cela implique de fournir une machine virtuelle fonctionnelle avec le code installé et prêt. Vous démarrez la machine virtuelle et c'est parti.
@ErelSegalHalevi C'est bien pire pour la réputation de cacher les détails de l'implémentation. IMHO, cela signifie essentiellement "croyez-moi". Ce n'est pas ainsi que fonctionne la science. Cacher le code viole la loi la plus importante de la science: la fausseté. Vous ne pouvez pas invalider une œuvre si vous n'y avez pas accès. L'auteur peut se cacher derrière ce rideau noir niant toute tentative de reproduire / invalider son article en disant qu'il n'est pas identique à sa méthode.
La réponse d'@Spidey, Erel est tout à fait exacte. Il décrit un état d'esprit que de nombreux chercheurs ont. Cet état d'esprit peut être bon ou mauvais pour le domaine - mais quoi qu'il en soit, ce qui compte, c'est que de nombreux chercheurs partagent cet état d'esprit et agissent en conséquence. L'affiche originale demandait une explication des raisons pour lesquelles de nombreux chercheurs ont décidé de ne pas partager leur code; Erel a donné une description précise des raisons pour lesquelles certains / de nombreux chercheurs ont décidé de le faire. Vous pouvez être d'accord ou non sur le fait qu'ils ont fait le meilleur choix, mais ce n'est pas la question ici.
@Spidey, Je conviens qu'il serait bien préférable pour la science de publier tout le code. C'est pourquoi j'ai proposé un moyen d'encourager les auteurs à publier leur code.
+1 pour "Journal of Reproductible Computer Science", ce qui rend intéressant googler, d'ailleurs. Mais en tant que développeur, je pense que vos exigences pour emballer le code sont beaucoup trop fortes. Quiconque connaît l'expression "bit rot" saura qu'il est déraisonnable de s'attendre à ce que quelqu'un d'autre maintienne du code qui a simplement été créé pour démontrer un point.
Il y a beaucoup de recherches dans ce domaine faites par G.Fursin: il essaie de rendre le CS reproductible. Voir la présentation à http://www.hipeac.net/system/files/grigori.pdf par exemple.Il essaie également de pousser un nouveau modèle de publication http://ctuning.org/cm-journal
@D.W. Vous avez raison à 100%. Je voulais dire que ce n'est pas une raison valable de ne pas partager.
@ErelSegalHalevi: Votre rêve d'avoir des papiers reproductibles est très agréable. Mais pensez au temps de publication. Actuellement, il faut environ 6 à 18 mois pour publier un article. La publication dans ce journal peut prendre 2-3 ans si des réviseurs non rémunérés (généralement des professeurs) sont nécessaires pour lire toute votre documentation, apprendre la langue utilisée, installer des outils, dépanner le code et exécuter pour vérifier si tout va bien. Il semble plus pratique d'utiliser une instance cloud, de charger le code et de permettre aux réviseurs / lecteurs d'accéder à votre code chargé plutôt que de le faire tout seuls. Ce faisant, augmentez également la confiance.
@Espanta: Une étape à la fois. Commencez par partager le code. Ensuite, nous pensons à la révision du code par les pairs.
@Spidey: "C'est bien pire (...)" - quand on ne regarde que la science, oui, mais (du moins à ma place) de nombreux doctorants ont pour objectif ultime de quitter le monde universitaire après leur doctorat pour soit prendre un emploi dans l'industrie, ou créer leur propre entreprise. Une fois qu'ils sont là, ils * seront * jugés par la qualité de leur code disponible publiquement, et le "code de style prototype expérimental" va refléter * extrêmement mal * leur réputation. Par conséquent, je peux parfaitement comprendre s'ils partagent le code uniquement sur demande plutôt que de le rendre téléchargeable quelque part. (Ils devraient cependant réagir aux demandes.)
Jan Gorzny
2013-05-28 06:07:28 UTC
view on stackexchange narkive permalink

Cet article de SIAM News met en lumière la première question, il vaut donc peut-être la peine d'y jeter un coup d'œil. Il explique, pour un public mathématique, pourquoi les chercheurs devraient publier leur code source, et énumère de nombreuses raisons pour lesquelles vous pourriez entendre pourquoi les chercheurs ne partagent pas leur code source. Il le fait par une analogie intelligente, une analogie qui compare le partage de preuves mathématiques au partage de code source. Regarde; il contient une liste assez longue de raisons pour lesquelles les chercheurs pourraient préférer ne pas partager leur code source (ainsi que certaines réponses affirmant que ces raisons ne sont pas bonnes).

Voici une citation:

Les dix principales raisons de ne pas partager votre code (et pourquoi vous devriez quand même le faire). Randall J. LeVeque. SIAM News, 1er avril 2013.

Je vous suggère de donner plus d'informations sur l'article vers lequel vous créez un lien. Par exemple, indiquez le titre et peut-être une phrase décrivant l'idée principale. Notez que les liens expirent, et votre réponse serait plus utile si elle fournissait les informations même si le lien échoue.
Espanta
2013-05-27 13:19:44 UTC
view on stackexchange narkive permalink

Dans le partage de code, il y a plusieurs problèmes:

  • Le premier problème est le droit d'auteur, car certaines recherches / projets de CS sont financés par certains industriels / organismes de financement qui découragent le partage des informations sensibles telles que des algorithmes, du code ou des logiciels lors de la publication dans des périodiques publics.

  • En effet, il existe des articles basés sur certaines données (collectées à partir de l'exécution de code) qui sont malheureusement modifiés manuellement par les auteurs. S'ils partagent le code, attraper leur erreur / erreur / modifications devient très facile, ce qui entraîne un échec de leur MS / PhD ou de leur projet de recherche, ce qui n'est pas souhaitable.

  • Dans la recherche CS et en particulier la publication, le développement de code, en particulier un code long et complexe, est une tâche non triviale et, dans la plupart des cas, est considéré comme un actif générateur de monnaie et de papier. En partageant le code avec le public, ils dévoilent des faits très détaillés qui risquent de dégrader leur contribution aux recherches futures. De plus, ils ne sont peut-être pas les seuls à pouvoir régénérer l'article et à faire honneur à cette recherche et à ce code. Dans la plupart des cas, les étudiants en master choisissent un algorithme ou une méthode, le modifient légèrement et soumettent une thèse et un article basés sur celui-ci, qui peuvent contredire les conclusions et les affirmations du premier auteur. Souvenez-vous de Thoma Herdon, un étudiant diplômé qui a critiqué les conclusions de deux éminents économistes de l'université de Harvard ( ici est le lien). Si les codes dans CS sont révélés, les conséquences sont probablement catastrophiques (ce ne sera peut-être pas trop de cas, mais si cela se produit, ce sera catastrophique).

  • Les codes sont une propriété vitale pour la plupart des chercheurs pour mener des expériences et des recherches. Si vous avez un code, vous pouvez simplement jouer avec et le modifier pour générer un nouvel ensemble de résultats qui pourraient être plus précieux que les résultats initiaux. Sans avoir la paternité de l'auteur initial, il n'y a aucun crédit pour eux.

Cependant, Elsevier a récemment introduit une nouvelle fonctionnalité utilisant COLLAGE appelée Executable Papers qui est actuellement disponible pour la revue Computers & Graphics grâce à laquelle les codes et les données sont disponibles et les chercheurs peuvent modifier le code et les valeurs d'entrée pour jouer avec.

J'espère que cela vous aidera.


_Si les codes de CS sont révélés, les conséquences sont probablement catastrophiques._ - Vous accusez donc toute une discipline intellectuelle de fraude? Vraiment?
@JeffE Je ne serais pas si dur d'appeler tout cela une fraude, mais cela améliorerait certainement la qualité globale des documents de recherche.
Cela me semble être une accusation de fraude, ou moins d'incompétence criminelle. La seule raison pour laquelle la publication de données / code serait "catastrophique" est si ces données / code ne soutenaient pas les conclusions publiées sur ces données / code, comme ce n'était pas le cas dans l'article de Reinhart-Rogoff _ référencé une phrase plus tôt_.
Je pense que votre deuxième point est vraiment le plus important. Si d'autres peuvent reproduire la recherche de pointe et la peaufiner légèrement pour produire de nouveaux résultats publiables, alors vous perdez la capacité de capitaliser sur tout votre travail acharné pour développer le code pour commencer.
_ vous perdez la capacité de capitaliser sur tout votre travail acharné [citation nécessaire]
Je n'obtiens pas le deuxième point et la seconde moitié du troisième point. Depuis quand CS représente-t-il une pseudo-science indésirable malhonnête où les auteurs manipulent les données et cachent les détails, sinon ce qu'ils appellent des «résultats» serait falsifié? S'il en résulte une catastrophe pour les auteurs d'être honnêtes et de rendre les choses vérifiables, votre domaine devrait déjà s'effondrer et disparaître à jamais. Comme JeffE l'a dit, vous accusez CS si vous suggérez que ce sont des réponses valables à la question d'OP. Vous devez présenter des preuves. Oh, vous avez recueilli des preuves par votre code et les avez manipulées? C'est comme ça que fonctionne CS, hein?
* "copyright [...] un grand nombre de recherches CS sont financées par certaines organisations qui ne permettent pas aux gens de partager leurs codes" * - A quelle organisation parlez-vous? Je n'en connais aucun qui interdise aux chercheurs CS de partager leurs logiciels, ni aucune raison pour laquelle le droit d'auteur empêche le partage de logiciels. Je pense que cette déclaration est tout simplement fausse.
Ce sont toutes de bonnes hypothèses, et le problème ne se limite pas à CS. Quelqu'un connaît-il une étude pour déterminer laquelle est réellement en jeu? (biais de non-réponse tueur, probablement ... =)
@Erel Segal Halevi: J'ai édité le dernier paragraphe et fourni un lien vers la fonctionnalité.
@JeffE: Je n'ai aucune intention d'accusation, c'est ma propre opinion d'après ce que j'ai déjà observé et c'est pourquoi j'ai utilisé «probablement» pour protéger les bons et les chercheurs, comme vous, qui ne falsifient pas les résultats. J'ajoute encore une phrase pour que. Cependant, si le problème vous fait mal, à vous et aux autres, je m'en excuse vraiment. Je n'avais aucune intention pour ça. Désolé mec :)
@D.W .: Pour moi, il est logique que les industriels finançant des projets gardent le droit pour l'algorithme et le code. Pensez-vous que les papiers des grandes entreprises de CS et de communication peuvent être reproduits facilement? et sont accessibles au public? Ils peuvent publier l'importance de leurs recherches, mais je pense qu'ils essaient de ne pas partager des données précieuses telles que le code avec le public. N'oubliez pas que les concurrents se regardent. Une preuve commune est la déclaration sur un papier publié comme «Approuvé pour publication externe». Ce [http://www.hpl.hp.com/techreports/2011/HPL-2011-55R1.pdf] en fait partie. Vous n'êtes pas d'accord?
@Espanta,, c'est un énorme bond en avant de «vous pensez qu'il serait logique que les bailleurs de fonds empêchent les chercheurs de partager du code» à ce que vous avez réellement écrit. Ce n'est pas parce que vous pensez que quelque chose serait logique que ça l'est réellement. Ce que vous avez réellement écrit dans la réponse est presque certainement faux. Si vous vous souciez de l'exactitude, vous modifierez votre réponse pour corriger ce que vous avez écrit et supprimerez l'affirmation selon laquelle "un grand nombre de recherches en informatique sont financées par une organisation qui ne permet pas aux gens de partager leurs codes".
@D.W .: Merci mon ami. J'ai fait d'autres changements pour le rendre plus précis. J'espère que cela n'a pas beaucoup de problème maintenant.
Mon point de vue à ce sujet est que si vous ne pouvez pas partager le code et les données, vous ne pouvez pas publier. Aussi simple que cela. Vous pouvez toujours rechercher et vendre votre main-d'œuvre à n'importe qui, mais à quoi sert-il de dire à la communauté scientifique votre réussite si personne n'est en mesure de la reproduire?
Vous devez partager des données, mais pas nécessairement du code. Dans les revues, les évaluateurs ont demandé d'évaluer si les auteurs fournissent suffisamment d'informations pour reproduire le travail. Le code n'est pas la seule chose pour la réplication de la recherche. Il y en a beaucoup d'autres qui ont un impact sur les résultats qui varient d'un domaine à l'autre. Par exemple, pour les applications basées sur le cloud fonctionnant sur des appareils mobiles, il existe un très grand nombre de mesures telles que le type d'appareil et de cloud, le langage de programmation, la distance du cloud mobile, le temps de collecte des données, la qualité du réseau et bien d'autres. La réplication du travail n'est donc pas facile dans tous les domaines; l'art des auteurs est d'établir la confiance en son article.
user7130
2013-05-27 12:32:10 UTC
view on stackexchange narkive permalink

Je ne suis pas un chercheur CS en soi, mais j'écris du code Android pour mes recherches en physique atmosphérique, donc mon point de vue est quelque peu limité. Cependant, je peux dire d'après ma propre expérience qu'une grande partie du code que je développe et teste fait partie d'un projet plus vaste que l'équipe dont je fais partie est en train de développer. C'est un mélange de règles auxquelles je suis lié et de la nécessité de garder une partie du code secrète pour le moment.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...