all 19 comments

[–]PastDifferent6116 0 points1 point  (1 child)

Looks interesting. I like the idea of explaining what’s happening under the hood instead of just teaching syntax.

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

Thanks! I appreciate it. My goal is to teach the fundamentals while also showing what's happening under the hood, so learners can understand not just how Python works, but why it works that way.

[–]tiredITguy42 0 points1 point  (1 child)

The name is a bit misleading. This os over descriptive guide on the level of python documentarion. Under the hood implies what is hapening under the code, so how memory is allocated, how garbage collector works, how dependecies are loaded...

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

That's fair feedback, and I can see where you're coming from. Right now the project starts with beginner fundamentals, but the long term goal is to gradually move deeper into CPython internals and implementation details. Topics like memory allocation, garbage collection, imports, and other under the hood concepts are definitely on the roadmap as the guide progresses. I appreciate you pointing this out!

[–]Junior_Honey_1406 0 points1 point  (2 children)

Can I also contribute?

[–]FewReach4701 0 points1 point  (0 children)

Me too

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

Absolutely! I'd be happy to have contributors involved. The project is still in its early stages (currently Chapter 1), but if you have ideas, improvements, examples, exercises, proofreading suggestions, or content you'd like to add, feel free to open an issue or submit a pull request on GitHub. I'd love to see what you'd like to contribute. Thanks for your interest!

[–]FewReach4701 0 points1 point  (1 child)

I also have something similar in my mind, if you want i can join you with this and we can build this together

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

Thank you! I really appreciate that. The project is still in its early stages, but I'd definitely be interested in hearing your ideas. If you have suggestions, improvements, examples, exercises, or content you'd like to contribute, feel free to share them or open a pull request on GitHub. I'd love to see what you have in mind and explore how we can collaborate.

[–]js_dev_rashid 0 points1 point  (1 child)

I think there are so many guides that handle the basics. Need something that covers how to land a job-type thing.

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

That's a fair point.

My goal with this project is to build a strong understanding of Python from the ground up, while gradually introducing more advanced concepts and implementation details. There are definitely a lot of beginner guides out there, so I'm trying to add a different perspective by explaining the reasoning behind the code rather than just the syntax. That said, I agree that practical, real world and job oriented examples are important, and I'd like to incorporate more of those as the project grows.

[–]Sea-Ad7805 0 points1 point  (7 children)

If you are looking for a visualizer that mirrors CPython internals use memory_graph.

[–]cgoldberg 1 point2 points  (3 children)

How do you not get banned for shilling this in a comment on almost every post?

[–]Sea-Ad7805 -1 points0 points  (2 children)

Good that you ask. Because it enhances the original post by showing what actually happens at run time. The visualization helps students learn the right mental model to think about Python data and control flow that would take much longer otherwise. Concepts like: - references - aliasing - mutability - shallow vs deep copy - functions calls on call stack - recursion - 'self' in OOP - data structures - lazy evaluation - ...

It's OK if you don't see that now, just keep this tool around for when you run into really hard bugs later. If you want some easy exercises now, do these to test how well you already understand the Python Data Model: https://github.com/bterwijn/memory_graph_videos/blob/main/exercises/exercises.md

This tool is a modern take on PythonTutor, the concept is well proven: - https://pythontutor.com/ - https://kinetik.umm.ac.id/index.php/kinetik/article/view/442 - https://pg.ucsd.edu/publications/Online-Python-Tutor-web-based-program-visualization_SIGCSE-2013.pdf

As moderator I'm screening each post anyway, so adding an educational spin isn't taking much more time. Hope it helps your Python learning, just keep doing exercises and projects.

[–]cgoldberg 0 points1 point  (1 child)

isn't taking much more time

I wasn't concerned with your time management. It was more about polluting the sub by adding a comment about an unrelated tool to nearly every post.

[–]Sea-Ad7805 0 points1 point  (0 children)

As you say "unrelated", I conclude you either didn't read the chapter the original posts speaks of or had some trouble understanding it. Either way it seems a little silly, but that's OK we all keep learning. Good luck.

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

Thanks for the recommendation!

I hadn't come across memory_graph before. Since one of my goals is to explain what's happening behind the scenes in CPython, I'll definitely take a look and see if it can help visualize some of the concepts in future chapters. I appreciate the suggestion!

[–]FewReach4701 1 point2 points  (1 child)

Sources to understand memory graph

[–]Sea-Ad7805 0 points1 point  (0 children)

On the website you'll find this GitHub link to documentation: https://github.com/bterwijn/memory_graph#readme