This lesson is being piloted (Beta version)
If you teach this lesson, please tell the authors and provide feedback by opening an issue in the source repository

Introduction to Conda for (Data) Scientists

This lesson is an introduction to Conda for (data) scientists. Conda is an open source package and environment management system that runs on Windows, macOS and Linux. Conda installs, runs, and updates packages and their dependencies. Conda easily creates, saves, loads, and switches between environments on your local computer. While Conda was created for Python programs it can package and distribute software for any languages such as R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, FORTRAN. This lesson motivates the use of Conda as a development tool for building and sharing project specific software environments that facilitate reproducible (data) science workflows.

Prerequisites

This is an intermediate lesson and assumes familiarity with the core materials covered in the Software Carpentry Lessons. In particular learners need to be familiar with material covered in The Unix Shell, Version Control with Git, and either Plotting and Programming in Python or R for Reproducible Scientific Analysis.

Schedule

Setup Download files required for the lesson
00:00 1. Getting Started with Conda What is Conda?
Why should I use a package and environment management system as part of my research workflow?
Why use Conda ?
00:20 2. Working with Environments What is a Conda environment?
How do I create (delete) an environment?
How do I activate (deactivate) an environment?
How do I install packages into existing environments using Conda (+pip)?
Where should I create my environments?
How do I find out what packages have been installed in an environment?
How do I find out what environments that exist on my machine?
How do I delete an environment that I no longer need?
01:35 3. Using Packages and Channels What are Conda packages?
What are Conda channels?
Why should I be explicit about which channels my research project uses?
What should I do if a Python package isn’t available via a Conda channel?
02:05 4. Sharing Environments Why should I share my Conda environment with others?
How do I share my Conda environment with others?
How do I create an environment file that can be read by Windows, Mac OS, or Linux.
How do I specifying the package version in a Conda environment file.
02:50 5. Configuring Conda How can I configure conda ?
How can I see conda’s configuration values?
How can I modify conda’s configuration settings?
03:15 Finish

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