Hacker News new | ask | show | jobs
by karmakaze 1725 days ago
There are many great ones listed here, but I wouldn't give any single book more credit than how they combine in practice, as the question sort of implies.

The best lessons I've learned is how to balance all these good ideas for each problem, idea, implementation. How do do OO without lots of racy mutable state, using immutability efficiently, composing pure functions, identifying what to abstract explicitly vs allowing something to permeate, intention and priority when separating factors/aspects, good naming patterns and when to use which. I don't know of a book that tells you how to find balance.

1 comments

Hm. Maybe that's because the concerns must be balanced differently for different applications?
That actually makes sense to me now. It's about knowing what matters when. Code smells is sort of there, but people tend to get dogmatic when invoking them. It's about having a sense of when something is 'too much', or there ought to be a way do to it with less of something, etc. Or conversely recognizing that 'this', however rough-seeming, is about as good as it's going to get, without a genius showing up with a brand new idea.