I would say that the advice in The Pragmatic Programmer is timeless, much like The Mythical Man Month. A lot of the ideas presented there were later formalized into agile principles and practices, and are still quite relevant today.
Code Complete, on the other hand, is a little more hit-or-miss. Some parts of it are still very relevant, like how to write clear, readable code. But other parts have been supplanted by better practices. The book tends to lean more towards waterfall development approaches.
It's been a long time since I've read either, but I can state in general that software engineering concepts don't tend to get outdated. The state of the art stuff I learned in the late 1970's is still almost entirely valid, although when it comes to low level stuff you'd want to e.g. adopt the advice about goto statements to other non-local things we are confronted with nowadays.
So reading an old classic like The Mythical Man Month isn't going to be a waste of time at all and is strongly recommended, but later really good stuff like these two books have additional lessons we've learned since then. So read the 20th anniversary version of that book (http://www.amazon.com/The-Mythical-Man-Month-Engineering-Ann...), in which the author revisits issues and e.g. modifies his advice to "plan to throw one (version) away, because you will". The potential state of the art has gotten better, you can often get away with not doing that.
I never read anything I disagreed with in PP, and it's worth going through, but as you allude to it did reflect its times. There was an undertone throughout that programmers exist to server the capricious whims of their suit-wearing overlords, and a lot of the advice was centered around that. Relative to the times it was good advice, but perhaps doesn't apply as much in today's startup world where "the suits" often don't exist.
I think the people who need to hear the advice in PP aren't in the startup world. There are a lot of programmers in the world who are not in SV startups.
The first edition of CC appeared before the mainstream boom of OOP, C++ was beginning to get adopted, Java wasn't released yet. The 2nd edition addresses OOP a little more but doesn't really goes too deep on it. I'd argue that the book is more worried about modularization, a concept from structured programming that in OOP would be translated into "loose coupling/strong cohesion".
When the first edition of CC hit the shelves the big thing on the internet was usenet and that was basically the only place to talk/fight about the stuff CC was talking about. The web was too new, the content to sparse and dialup was still king so you didn't spend hours online reading HN and StackOverflow. The audiences for these books are separated by a decade. CC2 was an effort to bridge that span of time but the audience has changed so it missed the mark. People care about different things today. The business of writing crappy code quickly, getting investment and getting out with your life savings intact matter more than the craft of writing code that first drew me to computers. Different times.