Using and Mastering Cookiecutter

Course Summary

Getting started with new projects in a reliable, easy, and reproducible way is very important. Cookiecutter has become one of the most popular tools in this area. Throughout this course, you will learn to consume the over 1,000 existing project templates for a wide variety of languages as well as create templates for your public or internal projects.

What students are saying

Let me say that your courses are tremendous and I am a huge fan. I had tried a few different online learning platforms (edx, datacamp), so when I found your Python Jumpstart, I decided to finally give a paid course a try. Your courses strike an excellent balance between hand-holding and DIY, and they suit my learning style perfectly. [...] I'm a lifetime customer. Thank you for the great content, I appreciate the work you're doing.
-- Josh

Source code and course GitHub repository

github.com/mikeckennedy/cookiecutter-course

What's this course about and how is it different?

The goal of this online video course goes beyond simply using Cookiecutter. While we do cover that in-depth, the focus is on creating powerful and professional Cookiecutter templates, integrating Cookiecutter into your Python applications via its API, and even developing and extending Cookiecutter itself.

This course is a careful balance of live demos, interactive coding, and core concept review. After this course, you'll understand and be capable of wielding the full power of Cookiecutter.

View the full course outline

Who is this course for?

This course is targeted at three use-cases of Cookiecutter. It's for those who

  1. Use Cookiecutter templates to create their own projects
  2. Author templates for their own projects or teams within larger companies
  3. Developers wishing to extend and integrate Cookiecutter functionality into their own Python applications

Note that Python experience is mostly optional.

For most chapters of this course, you will not need to know Python, although the more you know the better. Even creating templates can be done with essentially no Python experience.

However, if you want to extend Cookiecutter or use the Cookiecutter API, then you'll need to be familiar with Python.

What will you learn in this course?

The course is built from three major sections.

  1. Cookiecutter user
  2. Cookiecutter as project lead
  3. Cookiecutter as contributor

Here are some of the detailed topics addressed in each section.

Cookiecutter User Section

  • Prerequisites and setup
  • Installing Cookiecutter
  • Learning the CLI
  • Surveying the pantry
  • Local vs remote templates
  • Profile defaults
  • Virtual environments
  • Replaying creation

Cookiecutter as Project Lead Section

  • Creating templates for your project & for your company
  • Creation basics
  • Project structure and naming
  • Prompting the user
  • Complex default values
  • Choice prompts
  • pre- post-generation hooks
  • Excluding files from transforms
  • Conditional files and directories
  • Case study (project templates)
  • Adding your template to the cookie pantry
  • Programmatic Cookiecutter

Cookiecutter as contributor

  • Building Cookiecutter locally
  • Contributor guidelines
  • Adding a feature to Cookiecutter

View the full course outline

Concepts backed by concise visuals

While exploring a topic interactively with demos and live code is very engaging, it can lose the forest for the trees. That's why when we hit a new topic, we stop and discuss it with concise and clear visuals.

Here's an example for when we first introduce the benefits of Cookiecutter.

Example: Concepts backed by concise visuals

Who am I? Why should you take my course?

Who is Michael Kennedy?

My name is Michael, nice to meet you. ;) There are a couple of reasons I'm especially qualified to teach you Python.

1. I'm the host of the #1 podcast on Python called Talk Python To Me. On there I've interviewed many of the leaders and creators in the Python community. I bring that perspective to all the courses I create.

2. I've been a professional software trainer for over 10 years. I have taught literally thousands of professional developers in hundreds of courses throughout the world.

3. Students have loved my courses. Here are just a few of quotes from past students of mine.

"Michael is super knowledgeable, loves his craft, and he conveys it all well. I would highly recommend his training class anytime." - Robert F.
"Michael is simply an outstanding instructor." - Kevin R.
"Michael was an encyclopedia for the deep inner workings of Python. Very impressive." - Neal L.

Free office hours keep you from getting stuck

One of the challenges of self-paced online learning is getting stuck. It can be hard to get the help you need to get unstuck.

That's why at Talk Python Training, we offer live, online office hours. You drop in and join a group of fellow students to chat about your course progress and see solutions via screen sharing.

Just visit your account page to see the upcoming office hour schedule.

The time to act is now

Learn why people are so excited about Cookiecutter and take your projects to the next level by creating your own Cookiecutter templates.

Course Outline: Chapters and Lectures

14:24
4:51
4:40
2:13
0:35
2:05
16:48
2:06
3:49
4:08
5:07
1:38
14:38
2:53
2:57
4:13
1:53
2:42
20:08
4:11
1:41
1:29
0:30
3:24
3:10
1:03
1:09
2:30
1:01
1:00:24
4:21
8:14
2:46
3:34
2:11
3:31
1:41
2:03
1:08
3:52
1:28
1:36
7:57
2:52
6:36
2:55
1:22
2:17
19:35
2:09
2:10
5:28
7:32
2:16
10:28
1:34
3:43
1:51
3:20
15:17
0:44
4:08
3:16
4:08
3:01
28:05
2:35
1:23
4:27
2:35
8:11
4:14
4:40
5:20
5:20
Buy the bundle, save 50%

Questions? Send us an email: contact@talkpython.fm