Now that I’m back from my month-long blog hiatus and from DrupalCon DC 2009, I thought I’d throw up a little post in the same vein as walkah’s brilliant Why I Hate Drupal talk.

A friend was building a Drupal site and asked me what I thought the best way to prepopulate a lot of HTML into a node body field was for a newsletter. Now, she’s using Simplenews and Simplenews template isn’t yet out for Drupal 6, but that’s no problem. In the past, on sites like, I implemented the newsletter by using a little module called nodeformtemplate to fill in the node body with a full HTML newsletter, and letting the user type in the extra HTML they needed. That module makes it easy, right?

It had been awhile since doing an implementation, so I told my friend to look into the ‘node form template’ module.  Well, she dutifully went and downloaded the Node Form Template module, and not the nodeformtemplate module.  (This makes sense, since she’s building a Drupal 6 site, and Node Form Template has a 6 release.)

To make a long story short, the two modules are completely different, and thus I inadvertantly sent my friend on a wild goose chase, leaving her confused about why exactly she could care about templating a node form in Drupal 6 to begin with when all she wanted to do was to pre-fill a newsletter’s body.

So here we have three simple problems:

  1. These two contrib modules with vastly differently functions need vastly different names.
  2. The existing nodeformtemplate module should probably be called something like prepopulate. Oops - a module with that name already exists, too, so then we go on to…
  3. The existing prepopulate module might better be called prepopulate from url, or maybe the two should merge.

Having said all that, my gripe is a small one and the vastness of Drupal’s contrib is an asset more than a liability in most cases.  Plus, our story has a happy ending. Despite the fact that the Twitterati of the #shittymodulesmustdie hashtag might question my decision, I ported the nodeformtemplate module to Drupal 6.

P.S. It’s a shame that Twitter Search filters out swear words, because I was going to link up #shittymodulesmustdie. Our puritanical Twitter overlords win this one.