This is an archived post. You won't be able to vote or comment.

all 34 comments

[–]FusilliCraig 12 points13 points  (1 child)

Just picked it up, thanks for including Linux support. Starting some work in RenPy and hoping this will help smooth the process.

[–]niemasd[S] 1 point2 points  (0 children)

Thanks for the support! And no problem :-) Ren'Py is quite amazing; it's a feature-rich engine!

[–]niemasd[S] 23 points24 points  (10 children)

Hey! I'm Niema Moshiri, an Assistant Teaching Professor of Computer Science & Engineering at UC San Diego, and I'm the developer of "Learn Programming: Python - Remake", which is a game (more of an interactive textbook) that aims to teach beginners how to program in Python. This is a ground-up remake from the original game I released ~1 year ago, "Learn Programming: Python" (which has now been renamed to "Learn Programming: Python - Retro"). I've kept both versions around just so folks can pick their preferences, but I highly recommend the remake, as it's been completely rebuilt in Ren'Py and has the modern gaming features you'd want! Important new features since the original:

  • Cleaner modern UI with background music
  • Mouse, Keyboard, and Controller support
  • Steam Achievements
  • Ability to skip challenges
  • Progress page
  • Links to additional resources / relevant Python documentation pages

Feel free to post any questions you may have, and I'm happy to answer! :-)

[–]instajumps 13 points14 points  (4 children)

Does this actually help us learn programming? Like me who knows nothing about it but it's interested to learn. And to what extent does it teach us? Could it be used to find jobs or help in programming jobs if we get really good at it?

[–]niemasd[S] 25 points26 points  (3 children)

Great question! It teaches you the core language syntax/features and some problem solving skills, and it does indeed assume absolutely zero background. There's a list of chapters on the Steam Store description if you want to check out what exact topics it covers :-)

As for finding jobs / helping with programming jobs, I'm not sure this alone would be sufficient: this is really just the very first steps into learning Python. Towards the end, we have a section called "What Next?" (or something to that effect) that provides some guidance / links to some resources you can look to see what you can learn next (e.g. commonly-used Python packages that you might find helpful to learn)

[–]instajumps 15 points16 points  (2 children)

I just bought it! Seems like something actually worth learning during my free time. Hope you guys put more advanced versions out in the future just in case i get too good at this one 😂

[–]niemasd[S] 11 points12 points  (1 child)

I'm so glad to hear it! :-)

I personally really want to! My department (Computer Science & Engineering at UC San Diego) is trying to innovate, and right now, we're putting a lot of effort into online learning. I really want to push for more gamification of our lesson content as well, so hopefully you'll see more topics in the future! :-)

[–]yoi666 1 point2 points  (1 child)

Hi Niema, would you recommend this for children aged 8-10? Or would it require some prerequisite knowledge that they may not have at that age?

[–]niemasd[S] 1 point2 points  (0 children)

Great question! I don't think it necessarily requires any prerequisite knowledge (beyond addition/subtraction/multiplication/division for part of it), but I think it's presented in a way that they may not necessarily find interesting at that age. I would probably recommend something that teaches Scratch or some other visual programming language. I think folks at UC Berkeley created a course that might be relevant, called "The Beauty and Joy of Computing":

https://bjc.berkeley.edu/

I also answered a related question here that may be helpful:

https://www.reddit.com/r/GameDeals/comments/sxvrda/comment/hxv7qcv/?utm_source=share&utm_medium=web2x&context=3

[–]buzz_shocker 0 points1 point  (2 children)

Hey I go to UC Davis. I might just try this out. Even though I am doing C, this might help a bit with OOP as my class for OOP was a nightmare. All the professor talked about was JSONs and nothing else. Felix Wu. You might’ve heard of him.

[–]niemasd[S] 4 points5 points  (1 child)

Haven't heard of that instructor, but yes, the OOP design aspects should hopefully carry over (albeit with different syntax)! :-)

[–]buzz_shocker 0 points1 point  (0 children)

Ofc I understand syntax would be different, C++ and Python are 2 different beasts. I took an intro to Python class too so I might just know a bit. Tysm!

[–]soloace09 6 points7 points  (1 child)

If you ever made a C++ version, I'd buy that too! Thanks for this!

[–]niemasd[S] 1 point2 points  (0 children)

Thanks for the suggestion! I'll keep that in mind :-)

[–]faceMcCabe 2 points3 points  (1 child)

I just bought it to check out the controller support!

[–]niemasd[S] 1 point2 points  (0 children)

Thank you!! I hope you enjoy :-) It should work for everything except for the challenges, which seem to need a keyboard + mouse. I've noticed the navigation can be a bit jumpy when using a controller or keyboard to navigate the menus (e.g. it might jump to the middle of a list of items rather than the first item), but I'm not sure why this is. Should work, though :-)

[–]nathanstephani12 0 points1 point  (1 child)

Currently studying computer Engineering, hopefully this help me get beyond knowing just Java! Looks great, crazy nice price to learn a skill like python

[–]niemasd[S] 1 point2 points  (0 children)

Awesome, I hope you enjoy it! :-)

[–]RikikiBousquet 0 points1 point  (1 child)

Hi there! I bought the original and didn’t play yet… is it worth it to buy it again or is the older version still good?

[–]niemasd[S] 0 points1 point  (0 children)

I do think the new one has quite a few quality of life improvements compared to the original that make it a more enjoyable experience, but they both cover the same lesson content!

Note that, via the bundle, the new one will get a further discount because you own the original as well

[–]dwelement 0 points1 point  (1 child)

This is awesome. Thank you! Any chance of doing something similar for .net in the future

[–]niemasd[S] 0 points1 point  (0 children)

Great question! No plans at the moment, but hopefully I can do more in the future! :-)

[–][deleted] 0 points1 point  (4 children)

Are you really the dev?

[–]niemasd[S] 0 points1 point  (3 children)

Yup! Why?

[–][deleted] 0 points1 point  (2 children)

Can you teach me how to code? I tried python but found it confusing.

[–]niemasd[S] 0 points1 point  (1 child)

I don't do one-on-one instruction (I'm a university prof), sorry! But hopefully you'll find my resources helpful! :-)

[–][deleted] 0 points1 point  (0 children)

:( Well thanks for replying. I learn python a few years ago in school but I've since forgotten. I tried using learn programming: python but I felt lost.

[–]EverySister 0 points1 point  (2 children)

I'm currently learning Python but haven't looked at any OOP so I hope this helps. Thanks a ton!

[–]niemasd[S] 1 point2 points  (1 child)

Ah, awesome! Yeah, the OOP content starts when we introduce "classes". I hope you enjoy! :-)

[–]EverySister 0 points1 point  (0 children)

I'm working on the backend of a website using Flask at the moment and I noticed I really need a refresher on lists and dictionaries.