Found in 3 comments on Hacker News
joshka · 2021-04-05 · Original thread
>I see a pattern and I feel the older generation is way more capable and knowledgeable when it comes to Computer Science in general. I am pretty sure a lot of people are or were in the same boat as me.

The older generation are in this place because back then none of the technologies you listed existed and so they had to know the more low level things.

A book that might help some of your knowledge gaps (at least directionally) is The Imposter's Handbook[1] by Rob Conery.

If you're specifically aiming to get away from CRUD take a look at the various Domain Driven Design books by Eric Evans[2] and others. This is the opposite direction to your ask though (more high level than low level).

If you want to go deeper in Java, read Effective Java[3] and Java Concurrency in Practice (JCIP)[4]

Lastly, if you want to experience the reasons why some of that early comp-sci stuff happened the way it did, playing with expensive hardware is the least effective way to find understanding of constraints. Instead consider grabbing devices with significant limitations like an Arduino, ESP32, or similar (I'm partial to the Wio Terminal[5] and M5Stack[6] as interesting easy to get started devices, but others would suggest various Arduinos or Raspberry Pi devices). Realistically you're going to learn much more by coming up with a self-challenging project and completing it than just by learning it for the sake of learning.







ivanr · 2020-08-13 · Original thread
Try these as a starting point:

- Think Java (programming, foundational; free)

- Think Data Structures (programming, foundational; free)

- Effective Java (classic)

- Java Concurrency in Practice (classic)

- Continuous Delivery in Java (essential)

m0ck · 2017-12-08 · Original thread
Effective Java, 3rd edition is coming 28th of December!

Fresh book recommendations delivered straight to your inbox every Thursday.