Summary and Schedule
ATTENTION This is an experimental test of The Carpentries Workbench lesson infrastructure. It was automatically converted from the source lesson via the lesson transition script.
If anything seems off, please contact Zhian Kamvar zkamvar@carpentries.org
Data Carpentry workshops provide the fundamentals to learning to use scientific computing to facilitate research. In this lesson, we look at some next steps and examples of best practices for organizing a project. We will integrate the data organization ideas from the Spreadsheets lesson with coding in Python and explore how to share code within a lab and as published material.
Prerequisites
Data Carpentry Spreadsheets Lesson and a Software or Data Carpentry Python are the minimum requirements. This material will be easier to follow some time after the workshop and you’ve spent some time incorporating those practices into your own work.
This lesson also assumes comfort with the unix command line, but the command line operations could be done through a GUI instead and plain language explanations that accompany command line sections may be enough for a user comfortable creating files and folders and moving them around to do so without use of the command line.
Setup Instructions | Download files required for the lesson | |
Duration: 00h 00m | 1. Introduction to Data Python Data Analysis Projects |
What are common features of a project? What do I need to do to get my project shared? What will this lesson cover |
Duration: 00h 00m | 2. Setting up a Project |
How do I set up a project in practice? What organization will help support the goals of my project? What additional infrastructure will support opening my project |
Duration: 00h 00m | 3. Packaging Python Projects |
How do I use my own functions? How can I make my functions most usable for my collaborators? |
Duration: 00h 00m | 4. Managing Python Environments with Conda |
How can I make sure the whole team (or lab) gets the same
results? How can I simplify setup and dependencies for people to use my code or reproduce my results? |
Duration: 00h 00m | 5. Managing Python Environments with VirtualEnv |
How can I make sure the whole team (or lab) gets the same
results? How can I simplify setup and dependencies for people to use my code or reproduce my results? |
Duration: 00h 00m | 6. Getting started with Documentation | How do I tell people how to use my code and advertise my project |
Duration: 00h 00m | 7. Documentation in Code | How should I document my code in the files? |
Duration: 00h 00m | 8. Building Documentation with Sphinx | How can I make my documentation more accessible |
Duration: 00h 00m | 9. Example Gallery with Sphinx Gallery | How can I include a number of use cases? |
Duration: 00h 00m | 10. Publishing code and data | |
Duration: 00h 00m | 11. Testing and Continuous Integration |
How can I make sure code doesn’t get broken by changes? How can I automate that checking? |
Duration: 00h 00m | Finish |
The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.
Python - anaconda is best
numpy, scicpy, sklearn