Matrix Methods in Data Analysis, Signal Processing, and Machine Learning, by Gilbert Strang (via HN).