To learn the mechanics of submitting a proposal, visit the main Speaking page.

We’ve provided some examples of tutorial proposals we’ve loved in the past. Please note that things are quite a bit different this year, so make sure to read our guidelines first.

Do you think that you would be able to assemble 2-3 hours of material and lead a classroom full of PyCon attendees through learning a new skill, library, or technology? Then you might want to apply to be one of our tutorial instructors for PyCon 2021! PyCon 2021 tutorials will be held May 12 - 13, 2021 virtually via Zoom with a capacity of 15-20 attendees.

As you think about your experiences, skills, and knowledge, here are some links that might help you get started in thinking about the expertise that you could bring for the benefit of the conference:

What information to submit

  1. First, sign up for a new account.
  2. Once you are logged in proceed to your account dashboard and create a speaker profile.
  3. At this point, you can submit tutorials, fill in the fields as follows:


Give your tutorial a name that accurately describes the tutorial’s focus to potential students.


A high-level description of the tutorial, limited to ~400 characters. If your tutorial is accepted, this description will appear on the website under the title. It should be short, but give the reader an idea of whether they might want to attend.


At what level of Python and other topic-specific experience or expertise is the tutorial aiming for?

‘Advanced’, ‘Intermediate’, and ‘Beginner’ mean something different to everyone. Feel free to include additional detail regarding the sort of background expected, as well as who may benefit. Reviewers need to know what level of Python experience assumed of the audience and also what level(s) of domain-specific expertise is targeted, for example networking, SQL, database, etc. See our sample tutorial proposals for details.


We’d like to learn how your tutorial will be structured. Aside from lecture, will attendees be engaging with the material in other ways? If there is any particular way you'd like to interact with remote attendees or guide them through the tutorial, please describe it. (e.g. chat, quizzes, polls, iPython notebooks, etc).

Please also describe what portion of the tutorial you plan to spend on each type of activity (e.g. student exercises, lecture, or other activities). We don’t want precision: we just want to know what teaching tools you’ll use and how interactive your tutorial will be (mostly lecture? live coding? something else)?.

Feel free to be creative.


Your outline should list the topics and activities you will guide your students through during your 3 hour tutorial. You may wish to consult the markdown guide for styling. Please err on the side of ‘too much detail’ rather than ‘not enough’.

You should also include timing notes, estimating what portion of your tutorial you’ll devote to each major topic (usually there are 2-5 of those).

The outline will not be shared with conference attendees.

What should my timing notes look like? How precise do I need to be?

We request you provide a rough estimate of how much time (or percentage of the talk) you’ll dedicate to each major topic (not subtopics). We recommend these timings be no more precise than 30-minute increments, but we’ll allow some leeway. Please don’t give your timings down to the minute!

Alternatively, you are welcome to provide the portion of time you expect to spend on each major topic. Please indicate whether you are using percentages or minutes.

Why an outline with timings?

We want to assess what topics the tutorial will focus most on, as well as the level of student the course is appropriate for. For example, a course that spends 2.5 hours on simple concepts and ends with a brief tour of advanced features is more appropriate for a beginner audience than one with the opposite structure.

We hope these timings will help first-time tutorial presenters think about their material: can their planned material realistically presented in the time allotted and in the depth they want.

We don’t want you to rehearse the entire tutorial ahead of time. We hope, however, that these outline and timing notes will inform your decision on what is reasonable and inform us regarding what your tutorial will be like. It’s fine if these timings change when you give the tutorial. We just want to see where the focus will be.

Past Experience

Please summarize your teaching or public speaking experience, as well as your experience with the subject of the tutorial.

Tell us what experience you have in the subject, in activities such as teaching or public speaking, or anything else that would help us understand and gauge your abilities as a tutorial presenter. If possible, include a link to a video and slides from the tutorial itself (if it’s been presented before), or of other material you have presented in the past.

This section is for the reviewers’ benefit only and will not be published in the PyCon guide.


Let us know if you have specific needs or special requests — for example, requests that involve accessibility, audio, or restrictions on when your talk can be scheduled.

We’re considering making tutorial assistants available to instructors. These would be volunteers with Python experience who will provide one-on-one help during the tutorial when students are working on exercises. If we do this, would you be interested and if so how many students per assistant would you want?

Known Conflicts
We have a list of potentially conflicting holidays here.

We will accommodate disability-related needs whenever possible, and the merit of your tutorial will be judged independently from any request made here. This section will not be visible to attendees.

Miscellaneous Notes About Proposals and Tutorials

Here are some notes about the proposal, selection, and delivery process for tutorials.

  • Biography: You’ll be asked to enter your biography when you register on this site and that information will be made public.
    Here, you may wish to include more information for reviewers to complement information about your Previous Experience.
  • PyCon does not want expenses to discourage you from submitting a proposal, and offers speaker grants to ensure that anyone can speak at PyCon. When you create a speaker profile, check the box to indicate that you require a speaker grant.
    This is not seen by the proposal reviewers and does not affect the review of your proposal. After proposals
    are selected, we’ll reach out to you regarding your needs. We understand situations can change, and are here for you.
    If you have any questions let us know at pycon-aid@python.org.
    Please keep in mind that accepted tutorial presenters will receive a $750 honorarium.
  • The selection process has also tended to prefer Python-related topics over more general software development tools or
    practices that aren’t Python-specific.
  • Tutorials are subject to cancellation if enrollment is low. In the past, the cancellation criterion has been less than
    10 students registered.


Q: What can I do to increase the likelihood my tutorial is accepted?

Things we like to see include:

  • A clear description of the target audience: This helps attendees know whether the tutorial is right for them and allows us to assess whether the presenter knows whether the material is appropriate for a given audience.
  • Reasonable learning goals: these should demonstrate what the attendees will learn and be able to do after attending the class.
  • Readability counts: we like outlines that are easy to understand. Markdown is a great tool for giving your submission clear formatting, allowing us to distinguish, at first glance, between topics and sub-topics. A good tutorial is available here: https://guides.github.com/features/mastering-markdown/# After submitting, please check to make sure your submission has rendered properly.
  • Material that clearly should be presented as a tutorial (rather than a talk): tutorial spaces are limited, and if the material can be presented more concisely, and to a bigger audience by turning it into a talk, we prefer that.
  • Thoughtfulness regarding time: We like to see that submitters have considered how much is reasonable to cover in a given time period and how the material might change based on the audience. To demonstrate this, you may choose to include: What topics could run over, how you’ll provide buffer time (if you need it), and what topics you might adjust if things go unexpectedly fast or slow. Think explicitly about what you can reasonably cover in the time given.

We’ve provided some examples of tutorial proposals we’ve loved in the past.

Please note that even if your tutorial is excellent, there’s no guarantee that it will be accepted. The tutorial selection process attempts to choose a good variety of tutorial topics and levels that will be in demand, i.e., it doesn’t just select the best proposals!

Q: What should I avoid in my tutorial proposal?

Your tutorial is less likely to be approved if it includes:

  • Requirements that attendees prepare for the tutorial ahead of time or install additional software packages (especially large ones, which they may be unable to download at the conference).
  • The use of tools that cost money or are proprietary.
  • Being negative about other languages, platforms, and paradigms.

We will not accept any tutorial that violates the code of conduct.

Q: Who should apply?

While we don’t speak in absolutes, we’d like to see that presenters have experience with teaching, public speaking, or both. This assures us that you’re prepared to deliver what you’ve promised and understand the work going in. If you’ve never engaged in teaching or public speaking, we encourage you to gain more experience first. For example, you can submit talks (rather than tutorials) or teach with local usergroups.

Q: Is there an honorarium? If so, why?

Tutorials require significantly more preparation than talks. To compensate the instructor(s) for the time they must take away from work or other activities, we provide a $750.00 honorarium per tutorial.

We will need to collect a W9 form from US tax payers.
If you are a non-US tax payer, you will need to fill out a W8BEN form.

Q: How else can I help with tutorials?

  • We are looking for committee members to review submitted proposals. If you’re interested, please contact us at pycon-tutorials@python.org
  • Outreach! If you’re a member of a usergroup, or know any awesome potential instructors, please spread the word. If you know of any user groups we should reach out to personally, especially those targeted at people underrepresented in tech, please let us know!
  • Be a teaching assistant! Many instructors want teaching assistants when giving their tutorials. Let us know if you’re interested and what your area of expertise is.

Questions or Suggestions

If you have questions about any of this, or suggestions, please contact us at: pycon-tutorials@python.org.