One of the best classes I took in college was Programming Languages where the prof would introduce a language or language concept, do a little playing with it in real time, and send us home with like 10 small little functions or programs to write that used what we learned in class and stretched it just enough to make sure you really understood what was going on. I found that this style of learning was really enjoyable and engaging for me personally.
What I’m looking for is a resource, ideally one that’s online, that is in the same vein. Introduce basic operators -> make me use them. Introduce functions -> make me use them. Introduce recursion -> make me use it. Ideally there are ~3 or so questions with answers not in plain view on the site so I won’t cheat 🙂
While resources like this are good, they’re not really what I’m looking for. Thanks for any resources!
I am teaching Python to graduate students at the University of Paris, and I exactly chose the kind of approach you like! I could not agree more with how useful it can be.
I thus had to ask myself the same question as the one you ask here: I would recommend the following sources, in the given order:
You can certainly find other online books, and I did look at all of them a few months ago (while preparing my class!); but beware: some of them contain examples that are not examples of good practice. The references above are a solid mix of theory and hands-on practice, and they cover a lot of material.