Description
A walkthrough of some great tools I use for developing, testing, maintaining and managing projects
There is a wealth of amazing tools freely available to open source software developers to use to maintain their projects. Practically every problem we face or are likely to face in software development has been lived through and solved many times over. Patterns emerge for dealing with development practises and we build our software using the tools made by the previous generation of developers.
We're very fortunate to operate in an amazing open source ecosystem where we've learned we're stronger when we build on each other's foundations. We're constantly laying new foundations for ourselves and we share our ways of working with the world. We now have a very sophisticated set of tools for developing, managing, testing and documenting our new projects without reinventing the wheel.
But we don't discover all the tools at once - we pick them up as we go along, as we find uses for them and we hear about them. I'm going to share a range of great tools I use to maintain some popular open source Python projects, and explain how the difference they've made.
The talk covers:
- Software packaging and distribution
- Licensing
- Virtual environments
- Software testing
- Continuous integration
- Git & GitHub
- Contributor community
- Project management tools
- Documentation tools
The talk demonstrates examples for development of Python projects on Linux, but the tools can be used cross-language and cross-platform.