The trick is to event drive the UPDATES on your web site rather than the VIEWS. The actual complexity of the programming remains more or less the same, since you still have to dynamically generate the pages, but you save quite a bit on processing time and can therefore afford to write working code instead of efficient code, which makes things much easier for you. Templating, for instance, can be quite inefficient if you're working with nested material, but who cares about that if you're only generating each page once per hundreds or thousands of views?
I generate SSI format pages and include the few bits of actual view-by-view dynamic content. This gives the best of both worlds.