If you’ve ever looked at a complex site and gotten lost in a twisty maze of PHP Block Visibility code, you have an immediate understanding of how Drupal can fail you when building a site. The needs of one page might not be the same as the needs of another page, but the block system doesn’t really like this. While there are multiple solutions to this, using Panels and Page Manager and the “Panels Everywhere” method, which means every user-facing page is a Page Manager page and you don’t use admin/build/blocks.
This talk takes a real site that is built with this method and explains the methodology, from where you start on designing the site to where you finish implementing the site.