This is about the only result of software engineering.
I would advice more small programs, but perhaps with the perspective to gather them in bigger programs: sicp
https://mitpress.mit.edu/sicp/
also comes in video:
https://www.youtube.com/watch?v=2Op3QLzMgSY&list=PLB63C06FAF...
http://htdp.org/