some have it high on their list, others dislike it and the cargo cult around it.
I won't say I dislike it; rather, I don't believe every problem or solution can decompose as neatly as they describe. Professionally, I've always had to support the work of other people. So even if I don't worship at the altar of Design Patterns
, I need to know what they are and how they work. And, after all, your question concerned what every programmer should read, not what they should agree with. 8-)
I did something out of Design Patterns when I read it, but I was doing more C/C++ stuff at the time.