How to Propose a Talk

For general proposal calling information, see Call for Proposals.

First of all, thank you contributing to PyCon Taiwan! The following will help you submit an successful proposal. In the following, we are going to provide you the tips to make your proposal strong and informative and get the best chance of acceptance.

Generally, you will have the following aspects to think through before your proposal:

You will be asked to fill the following fields in your proposal:

Wait, that is a lot. Well, if you skip all optional fields, it would only take you about 500 characters. But we encourage you to fill most of the fields to help reviewer understand your proposal.

Some of the fields are for reviewers only, so don’t worry about spoilers:

If you are a very experienced speaker, you can directly enter the My PyCon page to propose!

Next we will give more detailed advice on each aspects.

Topics and General Advice

To pick a topic that suits PyCon Taiwan, you can first find out what accepted talks are about from the previous PyCons:

Good Ideas

Bad Ideas

How to Choose the Python Level

It is very important for you to choose an appropriate Python level.

Your talk won’t be simply accepted because it is either super hard or deadly simple. The acceptance correlates with the specified Python level and your targeted audience.

If your talk is for Python first-timers and it is about your Python learning experience and how you solve some tricky issues you face. This is a proper proposal. If your talk is about inspecting the Python memory usage and coordinating two GC systems together with reusing pointers, and you specify your talk as being novice or intermediate, it is not a good idea.

For the extreme conditions (like topics above), it will be easy to decide. But topics lie somewhere in between are not. Therefore, we give more description below to help you find the proper level.


People who have little to none Python knowledge. One can expect them to have basic knowledge about Python syntax and control flow (e.g. if-else, for loops; functions), but the audience does not understand every modules in stdlib, nor the concepts of tricky variables visible scope and OOP (and MRO inheritance).

Sharing your experience learning Python, leading a community perfectly fits in this level. Generally a talk about non-builtin Python packages, say pandas and Django, is not a novice talk. Unless people can actually learn all the content you give right after your talk.


The possible applications are more diverse than novice talks. Intermediate talks are for those who just learned how Python works and wish to know more how it can be used in different tasks. The talk topic can be about setting up web frameworks, talking to databases, monitoring the web traffic, auto trading in the stock market and so on.

From previous submissions over the past few years, around a half of the talks should fall into this category. Note that we may contact you to adjust your talk to be novice or experienced based on your proposal.


People coming to experienced talks should have good proficiency of audience’s Python (or programming) skill.

The main difference between intermediate and experienced talks is that experienced talks assume more domain knowledge about the talk topic. For example, talks about optimization and tool’s internals should be at this level.