CMS Python Package Development

This lesson by the Molecular Sciences Software Institute (MolSSI) teaches users MolSSI’s best practices in Python package setup. To see the full MolSSI’s education mission statement, please click here.

MolSSI best practices provides a starting point to get into software development operations to ensure that your code is reliable and reproducible while decreasing long-term maintenance requirements, increasing long-term viability, and allow others to work on your code base to assist your own efforts. Before starting into MolSSI best practice one must first think about the user base of a given project whether this is a project only used by yourself, within a small group, or a large community project. If your project is small and personal you may want to consider each topic in detail before implementing while for large community projects each topic is quite crucial.

This lesson is under development, please report issues to the CMS Python DevOps repository

Schedule

Setup Download files required for the lesson
00:00 1. Python Package Set-up and Structure What is the layout of a Python package?
How can I quickly create the structure of a Python package?
What license should I choose for my project?
00:25 2. Git and GitHub How do I use git and GitHub?
01:00 3. Python Coding Style How can I write python code that is readable?
01:45 4. Code Collaboration using GitHub How can others contribute to my project on GitHub?
How can I contribute to the projects of others?
02:20 5. Python Testing How is a Python module tested?
03:15 6. Continuous Integration How can we run tests on our repos automatically?
04:45 7. Documentation How can we document out module?
05:55 8. Community How can you get your project out there?
07:25 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.