I couldn't agree more: Drupal 6, in my opinion, was already teetering on the edge of this problem and Drupal 7 tips over the edge. There is a lot of complexity in both core and contrib, and the number of "moving pieces" that interact with each other are nontrivial.
When things work, that may not be a problem -- but it raises the bar for contributing much, much higher. To some extent, that problem is what got me interested in (and eventually passionate about) the 'smallcore' movement for Drupal. Separating a lot of the complex 'moving pieces' and focusing more energy on streamlining and simplifying the actual 'core' of the Drupal software is one of the ways that we can work towards that.
Even that, though, is not a panacea: a small but difficult-to-understand core is still just as daunting. (Size makes comprehension easier, but there is obviously a limit: e=mc^2 is short, but unraveling its intricacies is no picnic.) Making Drupal's software architecture easy to grasp for developers is just as important as making its administration screens easy to grasp for new administrators. The two priorities are not at odds with each other, but they are not the same.
More information about formatting options
To learn more about our work, how we can work with you, or to request an estimate or quote, just call us at
or drop us an email.