A learn-by-doing c++ project on matrix structure and linear algebra programming