Since I've started The Module Off, we've had a range of challenges that have challenged developers to try something new or to create examples for other devs. Thanks to some great feedback, I realized that an entire class of Drupalists have been left out of The Module Off: themers. This Module Off challenge, should you choose to accept it, calls upon you to create an Omega subtheme without any PHP. You can use CSS, JS, and any images you like to create a beautiful responsive subtheme of Omega!
Fixing up or adjusting parts of Drupal's inline docs is a great way to dip your toe into the wonderfully warm pool of core development. In fact, my first ever core patch was a docs update! It's a great way to learn how to create/submit patches without a deep understanding of the complexities of Drupal's innards. This Module Off challenge asks you to submit a recent commit that you made to help Drupal's core code docs. If you want to make a screencast talking about the process, or showing the code before and after, more power too you!
Lots of processes on your Drupal site take a long time complete. For instance, sending out thousands of emails could take longer than PHP's timeout. As a result, Drupal has a Batch API, which allows you complete a time-consuming process in small parts. Your mission, in this challenge, is to implement the batch API in a custom module, that does something useful. We don't need your module to do the most useful thing in the world, but we hope to have a useful example of the Batch API in action to learn from. Get to work!
Thank the good lord (or more accurately, moshe weitzman, greg.1.anderson, and the rest of the committers) for Drush. The amount of time that I've saved using the command line with Drush instead of clicking through the Drupal web interface is incredible. One of the best features of Drush is its extensibility; modules can add drush commands to control their custom functionality.
Thank the good lord for Views (which is now in Drupal core!). If it wasn't for Views, we'd be writing custom queries to list data all the time. Sometimes, though, Views doesn't do exactly what you need it to do, and when that happens you'll have to create either a handler or a plugin. Views has 10 different types of plugins! For this challenge, you pick any type you want, and create something useful.
This one's a tad looser; no specific use cases to code up. Just do something cool! Node.JS is a really awesome technology for real-time stuff within your Drupal site, and the Node JS Integration Module on drupal.org makes it pretty easy to get up and running. We're excited to see what you all can whip up.
We've been working on another project recently that integrates Node.JS with Drupal, and we'd like to share some helpful resources with you that we found along the way:
It's a pretty common use case. You need a button on a node that says something like "Mark as Complete" or "Set as Today" which updates a date field.