100 page Machine Learning book is also pretty good.
A Philosophy of Software Design is short, and opinionated as such books go. I liked it - it articulates a few concepts that we encounter in our daily work and don’t really learn about in school. You don’t have to agree with what the author says, but by engaging with the ideas presented at least you will know what you have internalized about this business of writing code.
I probably liked it because at the end the protagonist’s company starts making progress on clearing their ops backlog which was cathartic for me to fantasize about.
As for actual best, Tenebaum’s Distributed Systems was a key read for me starting my career as a first year developer working on large backend systems. I’ve probably forgotten 95% of the content, but it helped me develop intuition for the reasons and tradeoffs of system decision decisions.
It’s 96 pages over your limit, but a lot of the end chapters of the book’s parts can be skipped. Also Designing Data-Intensive applications covers some of the same content with slightly less rigor so that is a good substitute.
Cracking Codes with Python: An Introduction to Building and Breaking Ciphers is under five hundred pages and will make you more powerful than most American civil war era generals.
Here's an online copy: https://inventwithpython.com/cracking/
Happy to help!
(Previously I tried the ESR approach of starting with C, and got frustrated and gave up. Learn python, and learn the math the broken American K-12 system did not teach you in one fell swoop -- you'll learn a lot about algerbra and pretty much anything not involving weird curves.)
If you decide to learn C, the K&R C book mentioned in this thread IS useful. I think I have my copy stashed away with my lockpicks, rope, razor blades, and boxes of matches I bought before the pandemic. (A Boy Scout is always prepared, even if all of BSA along with the church they met in has gone bankrupt.)
Also, the "K&R book" is ISBN number 9780131101630, in case you, the OP, being a non engineer, don't know what the acronym mentioned elsewhere in the thread was :-)
https://www.amazon.com/Manga-Guide-Databases-Mana-Takahashi/...
Gleick Genius (although some prefer Chaos)
Hofstadter Godel Escher Bach
One taught C. One taught or showed the life of a non conventional smart guy. One made you think.
Even if you don’t care about language design, it’s a great way to get you to think about the tools we use everyday, how they get made, and why their limitations exist.
The Google SRE book is a little dry but has a lot of good content.
Spence's Information Visualisation
Thinking Forth - Leo Brodie
This book is around 380 pages, but an amazing read for everyone working on creating softwares.
66 - pages, a little dry but will change your life
The main thesis of the book is that the programmers job, is to try to minimize state as much as possible
Yii, codeigniter, BackboneJS,.
I read the source code along the documentation. That helps to see design patterns in action.
It's amazing, works for me.
by Henry S. Warren Jr.