Levi N. Naden*, Jessica Nash, T. Daniel Crawford and Ashley Ringer McDonald,
{"title":"用于计算分子科学的 Cookiecutter:最佳实践就绪的 Python 项目生成器","authors":"Levi N. Naden*, Jessica Nash, T. Daniel Crawford and Ashley Ringer McDonald, ","doi":"10.1021/acs.jchemed.4c0079310.1021/acs.jchemed.4c00793","DOIUrl":null,"url":null,"abstract":"<p >Scientific software development takes far more than good programming abilities and scientific reasoning. Concepts such as version control, continuous integration, packaging, deployment, automatic documentation compiling, licensing, and even file structure are not traditionally taught to scientific programmers. The skill gap leads to inconsistent code quality and difficulty deploying products to the broader audience. Most of the implementation of these skills however can be constructed at project inception. The Cookiecutter for Computational Molecular Sciences generates ready-to-go Python projects that incorporate all of the concepts above from a single command. The final product is then a software project which lets developers focus on the science and minimizes worries about nonscientific and nonprogramming concepts because the best practices, as established by the Molecular Sciences Software Institute, have already been incorporated for them. This is a community driven project with widespread adoption across the computational molecular sciences. The Molecular Sciences Software Institute and Computational Molecular Sciences community also continually contribute and update the Cookiecutter for Computational Molecular Science, ensuring that the project is responsive to community needs and tool updates. All are welcome to suggest changes and contribute to making this the best starting point for Python-based scientific code.</p>","PeriodicalId":43,"journal":{"name":"Journal of Chemical Education","volume":"101 11","pages":"5105–5109 5105–5109"},"PeriodicalIF":2.9000,"publicationDate":"2024-10-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Cookiecutter for Computational Molecular Sciences: A Best Practices Ready Python Project Generator\",\"authors\":\"Levi N. Naden*, Jessica Nash, T. Daniel Crawford and Ashley Ringer McDonald, \",\"doi\":\"10.1021/acs.jchemed.4c0079310.1021/acs.jchemed.4c00793\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p >Scientific software development takes far more than good programming abilities and scientific reasoning. Concepts such as version control, continuous integration, packaging, deployment, automatic documentation compiling, licensing, and even file structure are not traditionally taught to scientific programmers. The skill gap leads to inconsistent code quality and difficulty deploying products to the broader audience. Most of the implementation of these skills however can be constructed at project inception. The Cookiecutter for Computational Molecular Sciences generates ready-to-go Python projects that incorporate all of the concepts above from a single command. The final product is then a software project which lets developers focus on the science and minimizes worries about nonscientific and nonprogramming concepts because the best practices, as established by the Molecular Sciences Software Institute, have already been incorporated for them. This is a community driven project with widespread adoption across the computational molecular sciences. The Molecular Sciences Software Institute and Computational Molecular Sciences community also continually contribute and update the Cookiecutter for Computational Molecular Science, ensuring that the project is responsive to community needs and tool updates. All are welcome to suggest changes and contribute to making this the best starting point for Python-based scientific code.</p>\",\"PeriodicalId\":43,\"journal\":{\"name\":\"Journal of Chemical Education\",\"volume\":\"101 11\",\"pages\":\"5105–5109 5105–5109\"},\"PeriodicalIF\":2.9000,\"publicationDate\":\"2024-10-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Journal of Chemical Education\",\"FirstCategoryId\":\"92\",\"ListUrlMain\":\"https://pubs.acs.org/doi/10.1021/acs.jchemed.4c00793\",\"RegionNum\":3,\"RegionCategory\":\"教育学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q2\",\"JCRName\":\"CHEMISTRY, MULTIDISCIPLINARY\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Journal of Chemical Education","FirstCategoryId":"92","ListUrlMain":"https://pubs.acs.org/doi/10.1021/acs.jchemed.4c00793","RegionNum":3,"RegionCategory":"教育学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"CHEMISTRY, MULTIDISCIPLINARY","Score":null,"Total":0}
Cookiecutter for Computational Molecular Sciences: A Best Practices Ready Python Project Generator
Scientific software development takes far more than good programming abilities and scientific reasoning. Concepts such as version control, continuous integration, packaging, deployment, automatic documentation compiling, licensing, and even file structure are not traditionally taught to scientific programmers. The skill gap leads to inconsistent code quality and difficulty deploying products to the broader audience. Most of the implementation of these skills however can be constructed at project inception. The Cookiecutter for Computational Molecular Sciences generates ready-to-go Python projects that incorporate all of the concepts above from a single command. The final product is then a software project which lets developers focus on the science and minimizes worries about nonscientific and nonprogramming concepts because the best practices, as established by the Molecular Sciences Software Institute, have already been incorporated for them. This is a community driven project with widespread adoption across the computational molecular sciences. The Molecular Sciences Software Institute and Computational Molecular Sciences community also continually contribute and update the Cookiecutter for Computational Molecular Science, ensuring that the project is responsive to community needs and tool updates. All are welcome to suggest changes and contribute to making this the best starting point for Python-based scientific code.
期刊介绍:
The Journal of Chemical Education is the official journal of the Division of Chemical Education of the American Chemical Society, co-published with the American Chemical Society Publications Division. Launched in 1924, the Journal of Chemical Education is the world’s premier chemical education journal. The Journal publishes peer-reviewed articles and related information as a resource to those in the field of chemical education and to those institutions that serve them. JCE typically addresses chemical content, activities, laboratory experiments, instructional methods, and pedagogies. The Journal serves as a means of communication among people across the world who are interested in the teaching and learning of chemistry. This includes instructors of chemistry from middle school through graduate school, professional staff who support these teaching activities, as well as some scientists in commerce, industry, and government.