I haven’t seen any mention to " Metaprogramming Ruby 2: Program Like the Ruby Pros (Facets of Ruby)" from Paolo Perrota. I found it very instructive showing minutiae of OOP, and even some functional programming in Ruby.
By the way, does anyone remembers “Advanced Turbo Pascal” ? It was an algorithms book and I’ve lost it after some years… by that time I’ve read it, those basic algorithms were fascinating to me.
To the Eric Raymond recommendation I would add The Art of UNIX Programming (in my view, it’s much more than the title implies).
And I cannot praise The Elements of Computing Systems enough. Available as a MOOC, too.
For me, both were world view-changing books.
@aborla Agree on both, they are incredibly valuable books (in addition to being favorites)
Thanks, @iHiD. I’ll take a look at it when I have some time :)
Programming Language Foundations in Agda is a good read for those interested in type theory and programming language theory
Nice find. I’ve recently started learning Clojure. So, I was curious what Rich Hickey had to say about SICP.
I didn’t get the impression he doesn’t like the book. He’s saying this book won’t help much with learning Clojure (or any Lisp), because its focus is on teaching programming concepts.
Could you link to the MOOC you mentioned?
Sure, here it is: Coursera MOOC - Nand2Tetris
I completed it in 2015 when MOOC’s were still experimental (and free !).
All the best.
Yes, in the Crafting Interpreters book, the second interpreter is written in c. However, I’m currently following the book but writing the second interpreter in zig. As long as you can translate it from c to your desired language, you can do it in whatever language you want.
There’s a list on github here that shows lox being written in a number of different languages.
I am yet to find a favorite programming book. I have tried to go through books to learn programming but programming really took off for me when I found interactive sites like these! I do enjoy learning about computing theory, history and software engineering in general so hope I come across a good recommendation here.
I usually don’t read a programming book from cover to cover, but I did just read all of Beginning Rust 2021. Not much new about the 2021 edition in it, except for some stuff on iterators. Anyway, I used it to refresh my memory, and it held my interest. Now on to Rust for Rustaceans…
12 posts were split to a new topic: Squares and Rectangles
My best book as I was getting brought up in Java and Python were:
Effective Java by Joshua bloch
Effective python by Brett slatkin
Wonderful points to hone your skills and keep you engaged
+1 for The Pragmatic Programmer(A Hunt and D Thomas) , This is not a book about a language, nor is is a book about ‘correctness’ or ‘efficiency’. It is about doing things a certain way now, to help yourself (and others) later, and positioned my thinking ‘pragmatically’ but also ‘professionally’.
+1 for William Shotts 'The Linux Command Line. After dying again and again at the command line, and with considerable dejection, just flat out reinstalling when faced with small problems (just as I would have when I was a Win user), This book gave me a series of manageable little exercises that really helped me learn the tools of basic sysadmin. Not a programming book? No it is, really! I learn bash. Sort of is a language… …anyway strong recommend.
No mention yet: Jumping into C++ by Alex Allain. This was really good for new programmers who wanted to learn C++. It really did teach programming paradigms, complex C++ topics like pointers, it was a full intro. The exercises were well placed, but not shirking the heavy things. It got me to use pointers to write and traverse a binary tree and learn about scopes, and the stack. Learning other languages has become much easier because I did this first. Strong recommend.
Thanks to everyone for posting, plenty to be working through!!
Early edition with 14 (supplemental) chapters for the book available for free from William E. Shotts, Jr. at The Linux Command Line
I haven’t ready (m)any of these, but someone else has already reviewed them for you:
Programming book recommendations and anti-recommendations