Drupalcon notes: How Drupal Works: An Architect's Overview by Jeff Eaton

  • Content & User Centric
  • For those who are evaluating: Use it for what it's good for, don't try to shoehorn it into things it shouldn't do
  • Modular: without the modules, it's just a set of APIs that listen for HTTP requests
  • Event-driven: hooks instead of listeners
  • Skinnable / themable - everything passes through the theme layer
  • Organic: a bonus for a vibrant community but sometimes leads to code repetition -- there are some examples of this in the theme layer
  • APIs - things that live inside the magical '/includes' folder. They're very separate from the modules that are visible to end users. You wouldn't turn off the 'user' or 'node' modules.
  • API layer:
    • Menu API: routing (path 'x/y/z' requested, what module should build it?) menus, navigation, breadcrumb trails