Learning Linear Algebra by building hands-on projects and practice tools inspired by Gilbert Strang’s Introduction to Linear Algebra.
This repository chronicles my journey to deeply learn Linear Algebra by combining hands-on projects with exploratory Jupyter notebooks. I'm using code to prototype ideas, build visualizations, and internalize concepts from Gilbert Strang’s textbook.
Each project starts as a CLI-based prototype, which I will later evolve into a full-stack application to reinforce both mathematical understanding and software engineering skills.
- Master key concepts in Linear Algebra through projects and practice
- Build intuition with hands-on coding and visual exploration
- Strengthen my foundation for machine learning and applied math
- Mix polished builds with fast experimentation to support active learning
Project10x-LinearAlgebra/
│
├── projects/ # Main projects
│ ├── Project 1/
│ ├── Project 2/
│ └── ...
│
├── practice/ # Notebooks for concept testing and quick prototypes
│ ├── Chapter1/
│ │ ├── 1.1/
│ │ ├── 1.2/
│ │ │── 1.3/
│ └── ...
│
├── assets/ # Diagrams and visuals
│
├── README.md
└── requirements.txt
# | Project Name | Key Concepts Covered |
---|---|---|
1 | Vector Visualizer | Vectors, vector addition, scalar multiplication |
2 | Equation Solver | Systems of equations, Gaussian elimination |
3 | Column & Null Space Explorer | Linear independence, basis, dimension |
4 | Matrix Operations Simulator | Matrix multiplication, inverse, identity |
5 | Linear Transformation Playground | Transformations, rotation, scaling, shear |
6 | Orthogonality & Projection Tool | Dot product, orthogonality, projection, Gram-Schmidt |
7 | Determinant Visualizer | Determinants, area and volume scaling |
8 | Eigenvalue Explorer | Eigenvalues, eigenvectors, diagonalization |
9 | SVD Demo | SVD, rank, PCA intro, image compression |
10 | Capstone App | Pull together key ideas into one real-world project |
The practice/
folder is where I:
- Explore quick ideas
- Visualize concepts like transformations or matrix operations
- Write utilities and test logic before using them in projects
- Build small demos that help reinforce what I’m studying
These are fast, experimental, and support the main project work.
- Python
- Jupyter Notebooks
- NumPy, Matplotlib, SymPy
- (Planned) Web tech like Flask or React for UI-based tools
This is a personal learning project, but suggestions and corrections are welcome. MIT License. See LICENSE for more details.
Created and Maintained by RM Villa.