Community & Support

Beginning coding for Drupal

Last updated February 7, 2006.

Moderators: Aaron Welch / Amanuel Tewolde

Assuming some basic knowledge of PHP, the session will focus on coding a Drupal module. There is no predefined area of discussion for this panel, so depending on the overall interests of the participants the discussion may spend more or less time on certain areas of Drupal development.

To start off, we will ask some general questions to try to determine the depth of knowledge and areas of interest in Drupal development to help guide the panel.

Hopefully we will cover the following general areas during the session:

  • A general definition of a Drupal module
  • How the module system works in Drupal
  • Hook systems and how they work and interact with modules
  • Nodeapi and how its different than the node hooks
  • Forms API. Bring a pen.
  • Theme system and themeing best practices
  • Best development practices: where to go for help and resources, how to be a valuable contributing member, how to deal with core patches
  • CVS: WTF? I mean really. Does anyone know how it works really? Really.

NOTE: This is a presentation/Q&A, unlike the other moderated sessions. The areas defined above may change during the session, or be presented in a different order. Questions/clarifications/minor derails are encouraged. Bring a list of things you would like to cover or share to get the most out of the session. Bring a pen and paper, PDA or laptop to take notes and record urls of valuable resources mentioned during the talk.

NOTEv0.2: On the suggested PHP experience level:
We will probably not be talking strictly in phpspeak for the whole session, but more in broad terms about how modules work and how they interact with Drupal, so there may be useful information even if you arent compeletly comfortable with php yet. Just be aware we may wade into deeper waters occasionally. Some time will also be spent talking about best developer practices, how the drupal development community works, and some other such things so that may be valuable as well.

As for some resources for learning php, it depends on your general level of programming experience. If you know any other programming language, there are several good O'reilly books on php (I generally only buy o'reilly technical books, just from experience they seem to be better for me):

This one is a beginner php programming book, but assumes a general knowledge of basic computer programming:
Linky

Since php and the mysql database go hand in hand (and Drupal is commonly run with mysql) I would recommend this as well once you are more up to speed:

LinkyV2

Also, for a free option, you can try the offical php website tutorial: http://us2.php.net/tut.php

This may be of dubious value depending on your level of knowledge about web architecture already.