Cette question a été posée un milliard de fois sur Stackoverflow, mais l'accent a toujours été mis sur le codage non numérique. Je recherche un projet auquel contribuer dans les limites du calcul numérique et du calcul haute performance. Je préférerais idéalement un petit projet mais ce n'est pas nécessaire.
Quelle serait la meilleure façon de s'impliquer dans un projet open source pertinent pour SciComp? Par où commencer pour chercher des projets? Quelle serait la meilleure façon d'entrer dans un tel projet? Demandes de fonctionnalités / bogues / documentation ou autre?
En regardant quelque chose comme ATLAS ou Nix , comment passez-vous du N00B à l'actif?
Réponses:
Je pense que vous en tirerez le meilleur parti si vous contribuez à des projets que vous utilisez activement pour d'autres travaux, car cela vous motive à développer les fonctionnalités dont vous avez besoin vous-même. En fin de compte, c'est ainsi que la plupart des logiciels open source sont écrits: par des personnes qui avaient besoin de la fonctionnalité pour une raison ou une autre.
Dans le cadre de notre propre projet, deal.II , j'avais écrit une description de la façon de contribuer il y a quelque temps dans nos FAQ .
la source
Attention: auto-promotion éhontée à venir! :)
Je suis développeur principal d'un petit projet de calcul scientifique open source:
PyClaw (source ici )
Il fait partie de la grande famille de codes Clawpack pour la résolution des EDP hyperboliques. PyClaw est conçu pour résoudre des systèmes hyperboliques arbitraires de PDE sur des grilles logiquement quadrilatérales ou hexaédriques. Il comprend deux types différents de solveurs à volume fini et est évolutif pour les grands supercalculateurs (voir notre article de journal soumis, y compris les exécutions jusqu'à 65 000 cœurs).
Jetez un œil à la documentation et au suivi des problèmes . Il y a beaucoup à faire! La meilleure façon de contribuer dépend de votre expérience et de votre formation. Peut-être que la meilleure façon de commencer est de résoudre un petit problème et de soumettre une demande d'extraction sur Github. Alternativement, il peut être judicieux d'envoyer un message à la liste de diffusion des développeurs pour vous présenter et expliquer vos domaines d'expertise.
la source
J'ai le même problème. J'ai fini par résoudre mes propres problèmes avec les bibliothèques existantes (par exemple COIN-OR), en créant des exécutables autonomes pour des tâches spécifiques. Je prévois de contribuer ces codes une fois qu'ils sont assez polis et stables.
Ces réponses reflètent bien mon opinion:
Bonne chance quand même!
la source
Trois étapes faciles:
la source
liste des logiciels XSEDE
Le réseau XSEDE de superordinateurs financés par la NSF dispose d'une liste de logiciels disponibles , et vous pouvez effectuer une recherche par domaine ou application scientifique. Cependant, vous devrez rechercher les noms des logiciels sur Google pour en savoir plus.
Projets membres de la Software Carpentry Foundation
La Software Carpentry Foundation tient une liste de projets menés par ses membres. Beaucoup d'entre eux sont hébergés sur GitHub ou similaire et sont ouverts aux contributeurs. Quelques-uns sont des outils de simulation HPC:
Divulgation : Je suis un instructeur bénévole de la Software Carpentry Foundation et mon projet est répertorié sur la page des projets.
Plug / Public Service Announcement: si vous êtes intéressé à contribuer à des logiciels scientifiques open source, je vous suggère de lire "Best Practices in Scientific Computing" de Wilson et al 2014 et d'envisager d'assister à un atelier organisé par la Software Carpentry Foundation - et si / quand vous êtes prêt, formation d'instructeur.
la source