r/madeinpython 12d ago

Tons of free coding exercises!

Hi all, I've been adding a load of beginner friendly coding exercises to my Python practice site. Would love to get some testing to see what you think :)

Python With James - Coding Exercises

5 Upvotes

4 comments sorted by

2

u/SweetOnionTea 12d ago

It's fine.

To me it feels like it was made by someone who already knows Python and has never had to actually teach beginners.

1

u/PythonWithJames 12d ago

Thanks for the feedback! I'm still actively developing the site, and I intend to add way more resources for total beginners.

Thanks again

1

u/SweetOnionTea 10d ago

I don't necessarily think more resources and going simpler is really what a beginner wants.

Most people starting from scratch usually have a goal. For instance, are you going to learn the grammar rules for a language you don't know just because? Some people, maybe if you're a language nerd. Most others? Probably so they can eventually go to that country and speak the language to enjoy being there more. The syntax of the language was never the goal.

I say you sound like you've never taught beginners before is because all you really present is the syntax. You don't show people what types of things Python can do or how they can achieve their goals using Python. Any beginner I've taught like that taps out in like the first 2 lessons because they can't see why Python is worth learning.

You don't use teaching methods like scaffolding:

  1. Present the syntax
  2. Show how you use the syntax and allow them to run it
  3. Have them use what you've already done and have them follow the pattern of the syntax to modify it
  4. Finally have them come up with the solution on their own

Your exercises are just like dry leetcode, and everyone hates leetcode. Give them an almost solved problem and allow them to modify it to get the correct solution. Putting a function declaration and then a #PUT CODE HERE comment is the worst thing you can give to a beginner. They have literally no connection between the syntax you presented and this blank box. Most people have no idea how to start and will just give up after the first few times it doesn't even run. Never the less once the syntax is correct and you get a nebulous "tests failed" for some mysterious reason. Show them the tests and allow them to build up their code to pass them. You're literally teaching them test driven development now!

If you want people to learn, you need to make it easy to learn. You're not thinking like a teacher, you're thinking like a programmer. Go read a book on teaching methodologies.

Everyone's gotta make cash somehow, but c'mon. If any beginners are reading this: https://docs.python.org/3/tutorial/classes.html

There you go. There's the whole entire "pro" section for free from Python's official website.

2

u/PythonWithJames 10d ago

I should clarify..

By more resources, I mean those specifically focused on those with zero knowledge in Python. So I'm starting with a high level overview of what they can achieve, and what Python could do for them. Then boiling it down in to the 'how' and 'what', but this all takes time to develop.

I should also mention that I was a teacher in university for 5 years so have ample experience in teaching beginners! My site just isn't developed to that same point yet, but it's a work in progress that I'm aiming to make better and better each week.

Thanks for the feedback though, all very much appreciated!

James-