I really "Idea Man" by Paul Newman. Though survivorship bias is apparent, it was insightful read on how Apple an Msft came to be and why they are what they are. For example, why closed system was important and worked for Apple.
I personally loved "The Gene : An intimate history". I thought genes were hardcoded code that is needed sometime during life creation and once the cells specialized, they are done.
The cells are computer that operated on proteins, the input is protein being present and output is specific protein that does specific job.
I agree that can serve as terrible intro to programming. But, often when we have tools either designed for a purpose in mind or a dominant paridigm or reaction to existing set of tooling, this can result in understandable yet extreme abstractions.
Java is designed with OOP in mind and it kind of makes sense to have the user to think in terms of lego blocks of interfaces. Every method or class needs to have clear understanding of its users.
public - software handle is for all users
protected - software handle for current and extending classes
default - software is exposed to current package
private - software is restricted to be used in current class alone and nowhere else
So, the beginning of java programming starts with interface exposed to the user or other programmers. Is it weird and extreme. Yes. At least, it is consistent.
Not a biography but I like Einstein's book "Evolution of physics". It is supposed to be popular scifi book, and covers same topics as high school physics for layman. But, it is still good to hear his perspective: https://www.amazon.com/Evolution-Physics-Albert-Einstein/dp/...
It was great read until he leaves Microsoft.