# Programming Languages

> Python, JavaScript, TypeScript, Java, C#, Go, and Rust - each language end to end, from zero to advanced.

10 guides.

- [Python From Zero](https://themissingmanual.dev/guides/python-from-zero) _(beginner)_ - Learn Python from nothing to genuinely advanced: install and the basics, then objects and tooling, then the deep half - the data model, generators, decorators, typing, concurrency and the GIL, performance, and packaging - all in small, runnable steps with clear explanations.
- [JavaScript From Zero](https://themissingmanual.dev/guides/javascript-from-zero) _(beginner)_ - Learn JavaScript from nothing to genuinely advanced: where it runs, values and types, collections, control flow, modules, async and the DOM - then the deep half: scope and closures, this and prototypes, generators, the event loop, functional JS, bundlers, performance, and the road to TypeScript. Small, runnable steps, clear explanations.
- [TypeScript From Zero](https://themissingmanual.dev/guides/typescript-from-zero) _(intermediate)_ - Learn TypeScript from nothing to genuinely advanced: install it and the basics - types, functions, interfaces, unions, generics, classes, and the build - then the deep half: the structural type system, utility and mapped types, conditional and template-literal types, and typing the real world. Mental-model-first, with clear explanations.
- [Go From Zero](https://themissingmanual.dev/guides/go-from-zero) _(beginner)_ - Learn Go from nothing to genuinely advanced: install it and the basics, then the deep half - interfaces, generics, real concurrency patterns, error handling, the runtime scheduler and GC, testing and profiling, the standard library, and performance - all mental-model-first, with clear explanations.
- [Rust From Zero](https://themissingmanual.dev/guides/rust-from-zero) _(beginner)_ - Learn Rust from nothing to genuinely advanced: install it and the basics, then ownership - and then the deep half: lifetimes, traits and generics, smart pointers, error handling, fearless concurrency, iterators, macros, and performance and unsafe. Mental-model-first, with clear explanations.
- [Java From Zero](https://themissingmanual.dev/guides/java-from-zero) _(beginner)_ - Learn Java from nothing to genuinely advanced: install the JDK and the basics - types, classes, objects, collections - then the deep half: generics, lambdas and streams, modern records and pattern matching, concurrency, the JVM and its garbage collector, testing, and performance. Mental-model-first, with clear explanations.
- [C# From Zero](https://themissingmanual.dev/guides/csharp-from-zero) _(beginner)_ - Learn C# from nothing to genuinely advanced: install .NET and the basics - types, classes, objects, collections - then the deep half: generics, delegates and lambdas, LINQ, modern records and pattern matching, async/await, the .NET runtime and its garbage collector, testing, and performance. Mental-model-first, with clear explanations.
- [C From Zero](https://themissingmanual.dev/guides/c-from-zero) _(beginner)_ - Learn C from nothing to genuinely understanding it: install a compiler and write real programs, then the deep half - pointers, manual memory, the stack vs the heap, and undefined behavior - the things that separate writing C from understanding it.
- [C++ From Zero](https://themissingmanual.dev/guides/cpp-from-zero) _(beginner)_ - Learn C++ as its own language, not 'C with extras': the object model, RAII, value semantics, templates, the STL, and modern C++ - mental-model-first, from your first compile to why the Rule of Five exists.
- [Embedded C From Zero](https://themissingmanual.dev/guides/embedded-c-from-zero) _(intermediate)_ - Learn embedded C from zero: program a microcontroller and write bare-metal firmware for the AVR ATmega328P (Arduino Uno). Registers, GPIO, volatile, bit manipulation, interrupts, timers, PWM, and serial - read along and run every example in Wokwi, a free in-browser simulator, no hardware needed.
