A C++ fundamentals repository used to strengthen systems programming, algorithmic thinking, and low-level engineering basics.
Although my current portfolio direction is Web3/blockchain, this repository is useful because blockchain engineering still benefits from strong fundamentals: memory management, data structures, performance awareness, and clear reasoning about how programs run.
- Build confidence with modern C++ syntax and standard library usage
- Practice data structures and algorithms before moving into more advanced systems topics
- Understand pointers, references, ownership, and smart pointers
- Develop better debugging and code-reading habits
- Keep a record of foundational engineering practice
| Area | Notes |
|---|---|
| Language basics | Types, control flow, functions, namespaces |
| STL | vector, string, map, set, algorithms, iterators |
| Memory model | pointers, references, lifetime, stack vs heap |
| Modern C++ | smart pointers, RAII, move semantics |
| Algorithms | sorting, searching, recursion, basic complexity |
| Systems mindset | compilation, linking, debugging, performance basics |
Smart contract and blockchain infrastructure roles often reward engineers who can reason carefully about:
- State transitions
- Resource usage
- Security boundaries
- Deterministic execution
- Data structure tradeoffs
- Performance and correctness
This repository supports those foundations even when the final production stack is Solidity, Go, Rust, TypeScript, or Python.
To make this repository more useful as a public learning artifact, I would add:
- A clear folder structure by topic
- Small runnable examples with expected output
- Notes explaining common mistakes
- A CMake-based build setup
- Simple unit tests for algorithm exercises
- A progress checklist for completed topics
See my Web3/blockchain portfolio roadmap here: