Best Practices

Best Practices


Best Practices for Scientific Computing: a set of best practices for scientific software development that have solid foundations in research and experience.

Good enough practices in scientific computing: a set of good computing practices that every researcher can adopt, regardless of their current level of computational skill (lower bar the the previous one)


Software methodologies are different ways to implement the software process or the best practices we have listed for each project level. You should choose the methodology that best suits your project and software programmers.

Keep in mind that none of this should be rigid or set in stone. Feel free to mix methodologies or modify the best practices to best suit your project and team. If something is not working or is not adding value, stop doing it. Try something new. The goal is to choose a set of best practices and a methodology that allows your team to be successful.


Best practices and more detailed information about why you should include this practice in your software project.

Project Size and Practices

The same software process should not be applied to all software projects. Simple projects require less process and complex projects require more. To address this problem we have defined different levels of project complexity and for each level we have assigned a set of best practices that are suited for that level.

To learn what software best practices you should use for your project, first go to the levels page and identify which level best identifies your project, then read about the best practices for that level.