Lullabot On Improving Drupal

Tom Lee's picture

Any interested Drupalologist would do well to go read Jeff Robbins' take on how to improve Drupal. Okay, so it's a bit utopian — I think he's only half-kidding when he talks about Drupal "saving the world." But the guys at Lullabot know Drupal's strengths and weaknesses as well or better than anyone else.

I was particularly interested by the "What If..." section of the post. He phrases it a bit more politely, but Jeff's right: drupal.org and api.drupal.org are downright embarrassing when compared to other CMSes' sites. Providing the the code that comprises a function is not the same thing as documenting that function. And providing a boring, poorly-organized product site is no way to win converts.

For my own, selfish part, I'd just like to see some stability in the APIs. 4.7's Forms API changed everything; 5 changed much of it again. I've become a grudging convert to using CCK and Views for nearly everything — there are very good reasons for that design decision, made by developers smarter than I — but there's no question in my mind that it's made development slower. I'd like to see these projects remain in a stable place for a while, and try to consolidate rather than continuing to reinvent the wheel — the fact that CCK has its own pidgin DDL is something no one should be happy about.

And I'd desperately like to see more support for an at least somewhat-unified XML or YAML site configuration system. There are some minor attempts at accomplishing this on the CCK and Views import/export fronts, but we need something much more sophisticated. Drupal 5 has made my job change from writing code to clicking buttons alarmingly quickly. It's slow and it's irritating. Yes, I could still write custom modules for everything. But I'd like to be able to leverage CCK's efficiencies. And it's only polite to make my work able to be administered by the PHP-innocents who'll eventually be running the sites it appears on. A good markup language could make everyone's life more pleasant.

So there's my wishlist. I suppose there's no use whining about it — this is an open-source project, after all.