Foundations and Concepts for all Drupal Dojos (Apprentices)
Obviously if you are reading this then you are serious about Drupal and willing to put forth the effort to become a Drupal Ninja (expert). By any means there are a few ideas/ concepts that will make your learning experience and life as a Drupal Dojo much easier and meaningful.
Learning the "Drupal Way" (concepts) is not the easiest when starting, but after studying and practicing, and most importantly INTERACTING with the community, the Drupal Way will come. If you feel that something is missing, feel free to add it in the appropriate section.
The following are split into these sections: Participate in Screencasts, Concepts for All, Theming Specifics, Coding Specifics, and Motivations.
Participate in Screencasts
One of the core features of the Drupal Dojo group is the Screencasts. These Screencasts are a key way to watch how development takes place and it gives you a chance to ask a question to a real Drupal Ninja. (Here’s some archived Screencasts)
Requirements to View Screencasts are Listed Here
Concepts for All
The following are all things that every Drupal Dojo should understand.
CCK- The Content Construction Kit allows you add custom fields to custom content types using a web interface. In Drupal 4.7 the Content Construction Kit creates both custom content types and custom fields. In Drupal 5.x, custom content types can be created in Drupal core, and the Content Construction Kit allows you to add custom fields to any content type.
Difference between CCK and Custom Modules
CCK is for rapid development of new node types where custom modules are really if you are using a lot of custom fields and/or have heavy traffic and you want COMPLETE control of the architecture of the database tables.
Views - The views module provides a flexible method for Drupal site designers to control how lists of content (nodes) are presented. Traditionally, Drupal has hard-coded most of this, particularly in how taxonomy and tracker lists are formatted.
This tool is essentially a smart query builder that, given enough information, can build the proper query, execute it, and display the results. It has four modes, plus a special mode, and provides an impressive amount of functionality from these modes. (Documentation for Views)
Tip: IBM has a great document explaining Drupal. Even though some of the ideas may be over your head when reading the document, just pace yourself. Here’s the IBM site.
Theming Specifics
If you are wanting to gain expertise in the area of design and Drupal then look here.
Theming in Drupal
Drupal Theme Developer’s Guide
PHPTemplate (The default Drupal Theme Engine) Theme Snippets
CCK for Themers
Tip: IBM has a great document explaining Drupal and theming Here’s the IBM site.
Understandings and Inspirations for Web Design
A Great Guide for Web 2.0 Design
Great Place to Gain Design Inspirations
Lots of CSS Based Designs
Teach Yourself CSS
Many Articles on Web Design
Tip: Web design isn’t for everyone, but the above lists are a great way to become a great web designer!
Coding Specifics
If you are wanting to gain expertise in the area of coding and Drupal then look here.
What does API mean?
Drupal API
Learn to Create Your Own Modules
Here’s the PHP Handbook Use this for PHP refreshers about syntax, etc.
PHP Snippets for Use with Drupal
CCK for Developers
CVS- CVS (the concurrent version system) is a tool to manage software revisions and release control in a multi-developer, multi-directory, multi-group environment. It comes in very handy to maintain local modifications.
Tip: IBM has a great document explaining Drupal and walking you through some coding. Here’s the IBM site.
Tools for Coding
Motivations
Here's a few notable sites that use Drupal. As a Drupal Dojo these sites display what you could able to achieve one day.
-
Terminus1525
MTV UK
The Onion
BYU Computer Science Department
The One Campaign
Participate
Musicbox: Sony BMG
POPSUGAR
US Magazine
Crosby, Stills & Nash
Pete Droge
That Other Paper
Extensive Lists of Drupal Sites
Tip: Usually to find out if a site runs Drupal, go to the site exmple.com and add “/node” to the end, so it looks like example.com/node. If it loads with a list of nodes then chances are it’s Drupal.
