Drupal Services
Here at Judah Skype all of our current projects use the Drupal Services Module Most are powering mobile apps, and one project uses Services to turn Drupal into an integration server. Yes, you heard that right -- it serves no web pages to end users. The adminstrator configures content on the server, and essentially is able to do complete re-configures of all the clients remotely. Thanks to the Pantheon Stack from Chapter Three (build on the Drupal Pressflow release from Four Kitchens) we've been able to optimize this so end users have trouble telling the difference between this and apps that load all their data locally. It's pretty darn cool stuff.So it's only natural, with Drupal 7 about to come out, that we peek at the new version of Services to see what's coming down the road and, in true Drupal Community fashion, see if there is someplace we can help out.
Oh YES! and Must Haz Help!
We'll be building some examples on this in-house, but let me say the new Services appears to be under hard development. The user interface to the new REST server is so logical and clean though. Check this out:
But there is lots of work being done there, and in the documentation it says they have no test cases written. Quickly cloning their code from GitHub confirms the same. Test cases are necessary to have code accepted into Drupal these days (and once they move to Git working with the Drupal repository should be fun again.) It provides some assurance of code stability and minimal functionality, along with examples of how the code is intended to be used to future developers. A decent explanation of why this matters can be found in a Lullabot blog post from 2007.
I thought to myself "I get my code fix all day long, maybe this is a greater need." Then this morning Earl Miles came out with this announcement.
Drupal Panels out for Drupal 7
Today Earl Miles (merlinofchaos on IRC) released Panels for Drupal 7. They need help in the same area. Code has been done without a test case in sight. They can't prove the code works completely as designed, and worse, verify it keeps on working while being modified in the years to come. That means that in the lifetime of the code (maybe 2 years?) the chances it will be broken while new features are added is very high.Drupal programmers, we *have* to find time to help out here. This is all hugely in the best interest of the community. It's much more fun to write our own or new code than divine in retrospect what someone else meant. I get that. But without them the likely stability of the entire system is similar to, say ... Microsoft Vista?
Won't you write a test case a week?
