Drupal coding best practices?

My goal is to build some community websites. Features include ratings, link sharing, user profiles, group calendars, etc.

Drupal provides much functionality out of the box. Modules extend that functionality.

With Drupal I can go in the right direction, but I am having lots of difficulty customizing the solution to meet my needs.

I have lots of experience building Java web apps using JSP and Struts. In my experience, with Java, just about anything is possible, but you must build it yourself from the ground up. This is very time consuming. Alternatively you can pay $$$$$ to get things done. Java has nothing like Drupal's functionality all available for free. PHP and Drupal are very powerful, but documentation, in my experience, is lacking. I learned Drupal from a site admin's perspective from the excellent Using Drupal. I have learned some coding from Pro Drupal Development, 2nd Edition, but its examples are so simple as to be almost worthless.

Struggling to find "best practices" for Drupal, including:

  1. IDE setup. Do many Drupal coders use an IDE? Do most just use text editors? Coming from a background where I use a rich IDE all the time, the lack of strong IDE presence surprises me. I have gravitated to Komodo. Got debugging to work. How to setup projects? Does anyone have tips for developing/testing Drupal modules with Komodo? Most of what I have seen online is, Drupal is great, you can use 1001 different dev environments!!! Unfortunately those dev environments are poorly documented and most don't work.

  2. Understanding which pieces of code I need to write. Is it a module? What kind of output?, etc. I can clearly articulate the features of the website, I just have no idea how to do it in Drupal. I have no idea how to start. Simplistic examples from books not particularly helpful.

  3. Which resources should I use? Drupal API seems helpful. PHP reference helpful. Other resources? The Drupal forums seem like a fragmented mess. Many, many questions are not answered.

Anyone available locally to talk? I live in Corvallis. I would welcome a quick email, phone call or even in-person meeting to learn more.

Thanks!

Login to post comments

Questions Questions

openjacob's picture
openjacob - Tue, 2009-02-24 23:38

I forwarded your e-mail to a friend of mine who develops Drupal modules here in Corvallis, his name is Chris Lee. Hopefully he gets back to you.

I am also developing a community site here in Corvallis that I will launch next week.

Something I haven't got down was the link sharing, and the rating system, any hints?


link sharing / ratings

xnickmx - Tue, 2009-02-24 23:54

Thanks for forwarding on my message!

As to link sharing and ratings -
I haven't got any of these working on a real site. I have just played around with them on local test sites.

So this might be a bit of blind leading the blind, but here goes.

For links I have found the CCK link field: http://drupal.org/project/link

For ratings I have played around with the vote up/down module, the fivestar module and the fivestar comments module. None of them do exactly what I want though. There is a great example in Using Drupal that uses the fivestar module for building a product review site.