abbadadda 10 days ago

I would like a book recommendation for the things I don’t know please (Sarcasm but seriously)…

A senior dev mentioned a “class invariant” the other day And I just had no idea what that was because I’ve never been exposed to it… So I suppose the question I have is what should I be exposed to in order to know that? What else is there that I need to learn about software engineering that I don’t know that is similarly going to be embarrassing on the job if I don’t know it? I’ve got books like cracking the coding interview and software engineering at Google… But I am missing a huge gap because I was unable to finish my masters and computer science :-(

2
arwhatever 10 days ago

I ran into that particular term oodles in Domain-Driven Design, Tackling Complexity at the Heart of Software by Eric Evans. Pretty dense, though. I’ve heard that more recent formulations of the subject are more approachable.

abbadadda 9 days ago

Amazing! Thx for the recoo, arwhatever :-)

i_am_proteus 10 days ago

CLRS

(Serious comment! It's "the" algorithms book).

abbadadda 9 days ago

Tyvm for the serious comment, i_am_proteus! :-) The algorithms book By Steve S. (The Algorithm Design Manual)?

I've read that one, not an expert by any means, and I've got a 'decent' handle on data structues, but what about the software engineering basics one needs like OOP vs. Functional, SOLID, interfaces, class invariants, class design, etc.? Should I just pick up any CS 101 textbook? Or any good MIT open courseware classes that cover this type of stuff (preferably with video lectures... intro to algorithms is _amazing_ they have Eric's classes uploaded to YouTube, but finding good resources to level-up as a SWE has proved somewhat challenging)

^ serious comment as well... I find myself "swimming" when I hear certain terms used in the field and I am trying to catch up a bit (esp. as an SRE with self-taught SRE skills that is supposed to know this stuff)

abbadadda 9 days ago

Ah! Nvm, I see you mean https://github.com/walkccc/CLRS (didn't catch the acronym was the authors names smushed together at first)

> This website contains nearly complete solutions to the bible textbook - Introduction to Algorithms Third Edition, published by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.