Is Drupal's complexity turning people off? Hurm...

Date: Wed Aug 10 2011 Drupal Planet
Ben Buckman asked a question that struck deep into a dissatisfaction that's been growing in me about Drupal. He spoke it from the perspective of someone who's spending a lot of time inside the code, but I have a different perspective and take on it because I prefer to stay at the admin screens. He talked about the API complexity, stuff that isn't working that used to work, modules not conforming to long-standing practices, modules not using core Drupal features when arguably they should, and so forth. I have a different set of specific gripes, but I think complexity is a key thing here, and another thing is the habit of forcing a complete rewrite of everything on every major release. (see Drupal’s increasing complexity is becoming a turnoff for developers)

Additionally I came to Drupal because of the "Community Plumbing" tagline. Remember that? At the time (and still) I was looking for a software platform with which to build community websites. Drupal seemed to be it. And while there are plenty of useful "community building" features and modules, ...well... the Drupal community dropped that "Community Plumbing" tagline and they now talk about Drupal being an application development framework, and most of the "Drupal Developers" seem focused on solving big scale problems with Drupal.

In other words, the Drupal Community has moved away from the place I want to be .. and I'm wondering what to do about that.

One issue I have is wanting to host several micro-sized sites on specific subjects. A few pages about one topic, another few pages about another topic, and each topic is disjoint enough to warrant its own website or blog. That's great if I can manage the administrative overhead of running several websites, right? I already have several domains with websites on them - a few more might not hurt, right? Except the administrative overhead of running a Drupal site is significant. There's the regular updates that have to be done to modules. There's the heavy load Drupal puts on webservers because let's face it, Drupal is not a trim sveldt light weight CMS, it's darned heavy weight and takes a lot out of the server.

Plus there's this issue about migrating to Drupal 7 - and every time I check into feasibility I find several modules that are missing in action. At least Views3 is now available but I see in Ben Buckman's post that the status of the Media module is downright unuseful.

In Drupal 6 I was using the Embedded Media Module along with a slew of support modules and had worked out (after much experimentation) the proper configuration to use. For some unforsaken unknowable reason the powers that be have decided to essentially abandon EMF in favor of the Media Module, but that module is a complete rewrite and taking who knows how long to complete.

This habit of breaking compatibility on every major release - I'm sure it's helpful to toss out old and klunky API's in favor of new klunky API's, but think about it for a minute, it puts a huge burden on the Drupal community in rewriting everything every so often. And how many great modules get left behind because the maintainers don't want to bother with upgrading to the next release.

The Drupal community is saddling itself with many heavy burdens. Ben Buckman talks about heavy-weight API's and layering object oriented PHP code into a system (Drupal) designed around a co-routine model. What I'm seeing is the heavy weight of rewriting everything to "upgrade" to the next release just because the core team has some supposedly brilliant better idea about how things should be. Okay, I'm sure that Fields and Entities may plausibly be cool, they sound cool but.....

What have I been doing instead?

I'm using Blogspot.com for a couple new blogs and am totally enjoying the simplicity of using ScribeFire to publish to a hosted blog using the XMLRPC Blogger API. Okay, sure, yes, the design of blogspot blogs is horrendously simplistic and limited. But my publishing workflow is very simple and I don't have to maintain the thing.

I've been exploring Wordpress and gosh the design concepts look screwy from my perspective as a very well experienced Drupal user (and programmer). But apparently Wordpress presents a lighter weight on the server than Drupal does. And I suppose that maybe if I grok Wordpress I'll be able to like it. Who knows.

I may be converting some of my existing sites to a different platform. But one of my sites is a large community (thousands of people) with 13,000 nodes and 10's of thousands of comments and how could I possibly convert that to some other platform? But at the same time its performance is swamping the VPS it's hosted on, and the advice for improving Drupal performance is complex stuff like nginx+varnish. For me layering complexity on top of complexity on top of complexity just doesn't look like a good solution. Especially as it interferes with me doing the work I am here to do-- my intention is writing and facilitating communities, but instead the complexity is forcing me to do more system administration work than I should be doing. Okay, as a long time Unix geek dating back 30+ years I should be quite comfortable with system admin work, but every second of that work is a second that keeps me from doing the work I should be doing.