I am a DevOps Engineer. I describe myself as a "good conceptual programmer": I understand algorithms, data structures, etc. (I used to do some C, which I credit with a lot of that.) I also have very good knowledge about the internet: networking, routing, IP, DNS, HTTP, its methods, headers, return codes, API best practices, etc.
However, my knowledge rapidly drops to zero when front-end / the browser is involved. For reference, when I last working with HTML/JS, you couldn't rewrite the URL in the user's browser without reloading the page. Single-page apps seemed like magic to me until I figured out this is now possible.
So I (assume I) would like/need a book that doesn't spend too much time with algorithmics / data structure explanations, but at the same time explains all the lower-level relevant concepts: DOM and friends, execution contexts, browser-side security& permissions, local storage, etc.
I used to say I hated JS, but I must admit at this stage that's mostly just ego anymore, as I really don't know 2023 JS. (Also, should I just go TS? Or is TS only accessible to people who already know all of the context of JS, alluded to above?)
For reference, I felt vaguely the same about Python, but after reading and developing a crush on Fluent Python (Luciano Ramalho), I really understood the language, conventions, community, and now love it!! I am effectively looking for the same with something I can develop webpages with—which has gotta be JS/TS, right?
Thanks! (I hope the formatting is okay; written on my phone.)
Also more to your question, "The Browser Hacker's Handbook" and "The Web Application Hacker's Handbook" I also think are really helpful in understanding how browsers work. Sadly a not better documented subject.
Visiting the list of APIs on Mozilla's website is also helpful.
Available online/digital download (free) or you can buy a physical copy.
You mention devops stuff e.g. networking / routing that I've never been great at - would you be able to recommend a "real" book on that stuff?
* Functions as first class citizens
* Lexical scope
* Events
* Callbacks and promises
* Bonus material: performance, DOM, Node.js or Deno