Kristian Rother & Magdalena Rother
This guide is for you if you are writing your first programs with more than 500 lines.
You know how to write Python code well, but have realized that creating a piece of software is more complex. You are facing questions like:
- How to install my program on multiple devices?
- How to make sure the program works?
- How to keep the program running over time?
- How to deliver the program to other people?
Inf brief, you would like to develop programs that get the job done and don't fall apart.
To write such programs, there are established best practices that allow you to develop, test and maintain software systematically. Fortunately, Python comes with mature development tools. You might call these tools "Software Engineering Practices", but we find the term a bit pompous.
We just want to help you to get things done quickly.
- Version Control
- Managing required packages
- Virtual Environments
- Project Templates
- Building Python packages
- Continuous Integration
- Project Management
- User Stories
- How to work with legacy code?
- How to recognize good scientific software?
- How to create meaningful software?
- How to make software citable?
- Links
We are two software engineers who decided to write down our experience resulting from many Python projects in life science, web development and teaching.
We are curious to hear what other topics you would like to read about. You can reach us via:
This text is released under the conditions of the Creative Commons Attribution Share-alike License 4.0.