Sunday, August 17, 2008

10 Tips for a Drupal Programmer

1. Use fully functional HTML_CSS files to create Drupal themes. As process have a working CSS then insert the drupal code into it.
2. Use the CMS interface features only when we need to expose an interface for the client or user to update the content.
3. Incorporate custom blocks and Views as part of code – so the code gets logged in the SVN, version control.
4. Test all code and database configurations in the Staging server before moving it to the production.
5. Follow and understand Drupal’s coding standards.
6. Using Drupal's inherent functionalities will automatically take care of many default conventions for a website. We need to be aware of these functionalities and try to understand them so that while programming we only to add to them and do not loose them.
e.g: If you use the image module, by default the alt text gets generated. We could write a custom image template, where we may forgot to add this in!
7. Giving back what we get from the community:
We get a lot from the drupal community, but how many of us give back to the community?! Some easy ways to share our learning with the Drupal community:
7.1 Get yourself a Drupal ID, visit the home page atleast once everyday and try to respond to forum questions, just spend 10 minutes doing the same.
7.2. Subscribe for mails from drupal support at and try and answer atleast 5 questions a day.
8. Be current with Drupal, read the news posts at
8.2 Planet Drupal
8.3 Drupal talk
8.4 Drupal dojo
8.5 Lullabot
9. Become members of drupal groups based on the projects we are working on. The groups give more current updates and happening to a drupal specific topic.
10. Be proud to be a Drupal programmer!

My first Drupal site –Tips for Non-programmers

Introduction to Drupal some must read pages in the Drupal handbook:
1. Getting Started
2. The Drupal Cookbook
3. Must watch A 10 minute Drupal Demo for a small business website

1. Do not use too many modules
2. Before using a module, check issue queue. See if the module is well supported
3. Some SEO modules:
Pathauto- to rename node/234 as a more meaningful URL
Global Redirect- to redirect node/234 to its pathauto URL, avoid 2 URLs for the same content
Meta tags- to insert meta tags and key words into our site.
Do not use the google analytics module, just insert the javascript into the page.tpl

1. Choose a good theme, well supported, again
2. Small tweaks like creating a new region in the theme are simple-
just insert region in the phpengine and print the same in a div in your theme
Refer drupal handbook page on Regions in PHPTemplate
3. Remember that you can always insert content at the top and bottom of the content region using blocks, you do not have to create new regions to do the same.

You could quickly insert a code in a block to change or fix CSS on a page. This just shows how the content we insert in a block can damage the entire layout of the site. It is always advisable to test the content of a bock in a page before adding them to the main content.

Use header and footer to display links or other information that go along with the view. e.g, a View of recent posts could have a link at the footer to create a new post!

Support – some must dos:
1. Subscribe for mails from drupal support at and post support requests to
2. Use the Forums @
3. Use IRC channel for online chat support
4. Use the issue queue of modules for module specific support

Miscellaneous sharings
1. Use Captcha on a live site, until you are confident with your Security for all comments and forms available to a visitor.
2. Never use admin, password as the admin user name and password on a live site.
3. While in production do not allow the google bot to crawl you site, update the robot.txt file in the root directory of your drupal installation to disallow bots.
4. Always test any change in a staging server before updating a live site.

Monday, August 11, 2008

Configuring MySQL - LAMP for Drupal

A Benchmarking exercise for Solr search and Drupal 6 search for a search intensive website is underway. We have encountered many Mysql issues while populating the database and scaling concurrent users.

We have identified and configured most MySql parameters, we are still stuck with the slow query problem.

The Slow Query problem is more prominent in the mixed transaction Scenario. We need to identify which of the transactions is causing this problem and analyze the query.

Some of the unresolved issues in Benchmarking exercise:

- Configuring InnoDb

- Understanding all Mysql parameters

- Cause of slow queries

More about the problems faced at

Wednesday, August 6, 2008

Understanding Drupal – by the Lullabots

I am great follower of the Lullabot team. I just went right ahead and purchased the video. The Video was a great, the timing perfect. We used the Video on a set of freshers who joined our company. It was our introductory session to the in house Drupal-training.

The content overall covered the aspects of Drupal, what is drupal and how it functions and all associated terminologies.

But for more experienced users of Drupal there was nothing much in it. It would have been nice if as a part of the video one live site was created like in the Aquia video. A little more detail on API, coding guidelines, the folder structure seemed missing. There seemed to be an over emphasis on the terminologies and less on the frame work.

Tuesday, August 5, 2008

Chennai Drupal Meet III

Drupal meet at Chennai Again. To sign up visit:

Discuss agenda at:

Search This Blog

Chennai Drupal Community - Community plumbing

Shyamala's Drupal SEO