Programming Foundations: Memory, Pointers, and Garbage Collection
1h 29mBeginner2022-09-14
Authors
Maaike van Putten
Trainer and Developer for Java, Python, Spring Boot, and More
Course details
Did you know that computers have both short- and long-term memory just like you? It’s true. If you peel back the layers of what it really means to be a programmer, you find that most programming tasks involve moving values around in memory. Many contemporary programming languages hide those mechanics, but as you advance they get harder to avoid.
Join instructor Maaike van Putten to take your foundational skills to the next level, diving in deeper to learn how code really works and exploring the basic tools of memory management. Get tips from Maaike on making code more efficient and fixing it when it breaks, as she walks you through best practices and power skills to improve your overall performance. By the end of this course, you’ll know more about memory management as well as how to avoid and debug common leaks.
Join instructor Maaike van Putten to take your foundational skills to the next level, diving in deeper to learn how code really works and exploring the basic tools of memory management. Get tips from Maaike on making code more efficient and fixing it when it breaks, as she walks you through best practices and power skills to improve your overall performance. By the end of this course, you’ll know more about memory management as well as how to avoid and debug common leaks.
Skills covered
Programming FoundationsPythonFoundationsProgramming LanguagesOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Getting started with memory management
- 02 - Are you ready to learn memory management
1. Memory Management Concepts
- 03 - What is memory
- 04 - Why do we need to manage the memory
- 05 - Stack memory
- 06 - Heap memory
- 07 - Heap vs. stack memory
- 08 - Allocating memory
- 09 - Deallocating memory
- 10 - Garbage collection
- 11 - Actual removing or sweeping
2. Memory Management in Code
- 12 - The C way - Allocating memory
- 13 - The C way - Deallocating and reallocating memory
- 14 - The automagic way in modern languages
- 15 - Memory management in Python
- 16 - Memory in Python visualized
3. Memory Leaks and Best Practices
- 17 - What are memory leaks
- 18 - Out of Memory error
- 19 - Avoiding memory leaks
- 20 - Best practices with memory
Conclusion
- 21 - Next steps in memory management
Related courses
- Build with AI: Creating AI Agents with OpenAI's Responses API
- Model Context Protocol (MCP) for Beginners by Microsoft
- Building AI Agents for Beginners by Microsoft
- Beyond Vibe Coding with Google Gemini: Become a Deliberate Developer
- Build with AI: Create Deterministic MCP Agents
- Build with AI: LLM-Powered Applications with Streamlit
- Build with AI: Creating a SaaS MVP in One Day
- Hands-On AI: Building Your First LLM-Powered App