I’ve recently had the chance to attend an advanced Python course. I was really waiting for those three days. By the end of it, my enthusiasm waned. Why? Was the teacher not knowledgeable enough? Was he just not a good presenter?

The answer is a clear no to both questions.

He is knowledgeable and while he’s not exceptional, yet a decent presenter. I wish all the technical presentation would go at least that well! Probably he would have presented even better in French.

My pain point is that it was hardly an advanced course.

The first day, among others we covered how to write a class in python, what are class and static methods. I asked for under and dunder methods, so we covered those too. We saw how to use the @property decorator and we also looked into several usages of the */** operators at the end of the day.

I’d lie if I said I didn’t learn anything. I knew about properties, but I haven’t played around with them, especially not with the setter parts. But at least 2/3 of the day I found pretty useless.

On the other hand. Is that the fault of the instructor? Of course, one might say. But when people who never wrote a single class in Python can enroll in an advanced Python training, then you can hardly blame the teacher for showing them how to do it.

What is better? Is it less bad to lose those who are not supposed to attend an advanced course or to bore those who actually meet all the prerequisites?

Have you ever been in a similar situation? Please share your experience both as an attendee and moreover if you’ve seen this as a trainer!

How do you accept trainees? Should you reject some even if they would bring money?

For the Pythonistas, what makes a Python training advanced after all? List comprehension is already an advanced concept and I am too harsh?