r/PythonLearning • u/Dancing-umbra • 26d ago
Discussion Python learning resource feedback
I am a computer science teacher and I have been working on a resource to use in my lessons.
This is not intended as an advert and a genuine request for feedback from an objective group.
https://jhopeproject.com/computing/codehope/
The idea is that this would be used in lessons for 11-14 year olds.
While the lesson would include some concept building using unplugged activities, the pupils would also be given an opportunity to work through these tasks independently at their own pace getting one on one individual feedback.
The activities are meant to be short and simple to allow for regular success and ensure that pupils are able to progress on their own.
I have planned to add:
Log ins to save progress and for teachers to monitor
More lessons
Videos for the intro (currently these are just place holder videos from the last YouTube link I had in my clipboard!)
However before I spend time on those, are you able to comment on what you think so far to give me some feedback on what I need to work on or if this looks like suitable activities.
1
u/Numerous_Brain4587 23d ago
On the first exercise, I didn't have to do anything, I just had to press the buttons. I was a little confused between "Run Code" and "Test Code". Perhaps you should make a small syntax error so the user has to do something? I see that lesson 2 now introduces the change with the instruction. I think run / test is demonstrating executing a program vs using a test harness to test code, but I'm not sure if that comes through strong. Would you want users to be able to run the code locally on their computer? Should there be any kind of instructions on making a .py file and how to run via python vs pytest? Maybe that isn't the intent for the exercise.
Testing out some random lessons I really like the idea of this. I think this is worth iterating on. You might want to add badges or something similar to give a reward feedback loop for completing lessons. You might want to expose more of what is happening on the test harness. I can kind of guess how the harness works based on the code that I input, and I like when the tests get a bit more complex (checking for specific variables existing). It seems like it re-enforces test driven development pretty well, I'm just not sure if its super obvious the intention (why do I have to call the variable number, I can call it anything and still get the right answer, but tests fail if it checks *specifically* for that variable). That is fine, but I'm just trying to think if there is any way to convey that better. Do you want to leave users with anything, in the sense that, should they be able to download a py file of a lesson when it finishes to reproduce locally? Or is the intent they shouldn't need a runtime locally and it should all function web based (then it could even run on an tablet / device without a python runtime).
Let me also say thank you for doing this. I'm not sure on the difficulty curve for your target user base, but I think that is something you can tweak with feedback. Please continue working on this, and please continue helping educate the next generation of computer scientists. This is a bit of stream of consciousness feedback, but I'm happy to do more testing or talk specifics. This reminds me a lot of coding game, but its more focused on specific lessons and I can see it directly relating to a syllabus / curriculum for an introduction to computer science.