4 ms·
Great question and many great suggestions here! If I was the librarian facing your task, I would probably try to collect books that 1) cover different programmi
by marttt 4y ago
Great question and many great suggestions here! If I was the librarian facing your task, I would probably try to collect books that 1) cover different programming language paradigms, and 2) books that teach you how to think differently, using a computer language as a medium.
In this regard, I would add "The AWK Programming Language" by Aho, Kernighan and Weinberger. Published in 1988, but it was an excellent introduction to computing for a layman like me around a decade ago. Clear, concise writing; really teaches you to think. Still relevant in 2022, especially considering that awk has gained some attention in recent years. Great warm-up to approaching C via K&R. Can't go wrong with Brian Kernighan as a teacher, I guess.
Another worthwhile book is "Modern Perl, Fourth Edition" by chromatic (2015):
https://pragprog.com/titles/swperl/modern-perl-fourth-edition/ https://pragprog.com/titles/swperl/modern-perl-fourth-editio...
Also, "Higher Order Perl" by Mark Jason Dominus (2005). Functional programming techniques with Perl; also ticks the "general thinking book" box. Lots of praise on Amazon: https://www.amazon.com/Higher-Order-Perl-Transforming-Programs/dp/1558607013 https://www.amazon.com/Higher-Order-Perl-Transforming-Progra...
Leo Brodie's "Starting Forth" and "Thinking Forth" probably also count as timeless classics in the "thinking book" section.
Lastly, see also Seymour Papert's books "Mindstorms: Children, Computers, and Powerful Ideas" (1980) and "The Children's Machine: Rethinking School in the Age of the Computer" (1993). These are brilliant for anybody who's interested in thinking and learning, or the Logo programming language that Papert developed.