So far, I have substantial experience with HTML and basic experience with Ruby on Rails.
My questions:
1. What books, web sites, tutorials, etc. do you recommend for getting started in Drupal?
2. How quickly do Drupal books become obsolete? In the world of Ruby on Rails, books become worthless after only a year.
3. Is the Drupal setup finicky? It seems that all of the planets need to be properly aligned for Ruby on Rails to work properly. That's why I have uploaded my procedures to my web site at http://www.jasonhsu.com/ror.html . It's partly as a resource for the Ruby on Rails community, but it's mainly for my own use so that I never have to relearn everything.
4. How tricky is deployment? I learned from Ruby on Rails to deploy early and often. If my application has deployment problems, I can take care of them right away and not waste my time working on something that never sees the light of day.
Comments
You'll probably get a LOT of help...
...so I'll just say that if Ruby on Rails has been your development platform, Drupal should feel a bit easier and a lot more rewarding.
Is it tricky? Yes and no. To do it right, you'll need to pay attention to details in the php.ini, .htaccess and settings.php files.
But Drupal 7 is pretty much a straightforward download and install. I host sites on Bluehost and they have an install script for Drupal which is pretty sweet.
With Drupal 7 being released (relatively new release), there's quite a lot of new books being written. I myself still work in Drupal 6 because there are a few modules that I need that are only available in 6.
There's my two cents. You can check out my website at www.newdaywebdesign.com. Are you local in the Twin Cities? If so, we have a great Drupal group where you can get lots of help.
Cheers,
Tom
Tom Hale
New Day Web Design
www.newdaywebdesign.com
Drupal 6 vs. 7
Thanks, Tom. I have been to one Drupal user group meeting. At the time, I still hadn't mastered the basics of Ruby on Rails and wasn't up to trying to learn that AND Drupal at the same time. I now know just enough Ruby on Rails to get by, and I'd like to get started with Drupal.
Should I get started with Drupal 7? Since I don't have any legacy Drupal 6 applications (as I'm new to this), I might as well learn Drupal 7 so that I'm up to date, right?
Which books are the best for newbies? I figure that somebody who wrote a good Drupal 6 book will probably write a good Drupal 7 book.
Drupal 6 vs 7
Jason,
I'm on the fence when it comes to Drupal 6 vs 7. Yes, 7 is the new core and it is nice, but...I've been working with Drupal 6 for several years and I'm just not ready to make the leap yet. I don't have a plan for converting my client's sites from 6 to 7. But I have noticed that when I need a module, in some cases it's only available for 6 and not 7, although that fact is changing and most modules are now 7 ready.
If I was in your shoes and just starting with Drupal, I'd recommend 7.
As for a good book, actually, I'd start with the online documentation at drupal.org. That provided enough to get me started. And when you add your first module, be sure to read the read me file that's included in the module. Usually the developers are very kind to include installation instructions and how to configure it.
Good luck!
Tom Hale
New Day Web Design
www.newdaywebdesign.com
There's no reason to start a new project with Drupal 6
Upgrading a major version of your site (e.g. Drupal 6 to Drupal 7) is a painful process, and if you start a new site with Drupal 6 then you are asking for that pain.
You will likely architect a Drupal 7 site very differently than you architected your Drupal 6 sites. For example, you'd probably be happy using user-attached fields instead of the convoluted process of gluing nodes to people that we all adopted for Drupal 6. Or you might use Media and file fields rather than creating cludgy node types just to contain images. Or you might go with Ubercart for e-commerce while the community moves on to Drupal Commerce. If you start with Drupal 6 then you will carry these legacy choices with you.
You will do more work in Drupal 6 if you want to leverage best practices. Since 2007, Advantage Labs has maintained a managed distribution of Drupal that bridges the gap between "what core delivers" and "what every site needs". The level of customization in our Drupal 6 distribution is significant: installing filefield/imagefiled/imagecache, adding content_profile, renaming "story" to "article", enabling admin_menu, ctm, verticaltabs and ed_readmore, and so-on. But the majority of what we baked into our D6 profile made its way to core. This was redeeming for us because it meant that we had our finger on the pulse of best practices. But it also means that if you don't use a build like ours, and you don't want to spend all of your time keeping your finger on Drupal pulses then you're site won't be all that future-proof. Our D7 distribution mostly just enables wysiwyg, and Media, which means it's easier to get what you need in Drupal 7 without a specialized vendor.
If you're super-dependent on lots of modules that are D6-only then perhaps you want to revisit some of your choices. Perhaps these were never best practices or widely-adopted by the community. Or perhaps these modules could use your help to get upgraded. I guarantee you that the time you spend now helping out the developers will be far less significant and far more rewarding than slogging through an upgrade later.
Getting the gist of Drupal
// 1. What books, web sites, tutorials, etc. do you recommend for getting started in Drupal?
I was lucky enough to win the Definitive Guide to Drupal 7 at one of the Drupal meetups and that book will keep you on the edge of your seat for a good long while and has great instructions for setup and deployment.
There are a crazy amount of Drupal session videos on Archive.org and if you go to many DrupalCamp websites you'll find video recordings of the presentations. Also try going to Vimeo.com, do a search for "drupal" and then sort by most recent for a fresh list of Drupal videos.
NodeOne.se (http://nodeone.se/learn-drupal) has incredible series on using major modules like Views, Organic Groups, and Rules to name a few. If you really wanted to give yourself a head start and a real feel for Drupal power they have this incredibly thorough series on Views (http://nodeone.se/blogg/learn-views-screencast-series-summed-up).
Lullabot PodCasts are also great to have on your iPod for walks and bus rides.
// 2. How quickly do Drupal books become obsolete?
It really depends on what you consider obsolete... The real divide is between Drupal 6 and 7 and since 7 is just maturing it's got a fairly long life ahead of it still. I would stick to books that explicitly refer to Drupal 7 so you're not spending time learning CCK (a Drupal 6 module that's native to Drupal 7).
On the other hand, sometimes if you're looking for ideas or some sort of light that hasn't been explicitly spelled out in Drupal 7 then it's sometimes worthwhile referencing Drupal 6 materials to see what solutions worked then because at least capability that existed then exists in 7 most often than not.
// 3. Is the Drupal setup finicky?
If you're coming from RoR then Drupal's setup should be handily manageable. Setting up your dev environment and forging a proper workflow will spare you a lot of the finicky-ness. I would look into getting set up with Drush, GitHub, and/or Aegir. Drush if anything.
I recommend heading to Drupal and getting their DAMP stack.
// 4. How tricky is deployment?
Manually deploying a Drupal site is actually pretty simple because you have your site files and your database. You ftp the site files, import the database, and then update the settings.php file with the information it needs to connect one to the other.
If you want to make life easier then setting up Drush and looking into ways that optimize your development/deployment flow can take a lot of the tricky business out. You just have to endure a lot of tricky business figuring it all out and setting it up, but once you're over the hump you can go absolutely crazy with multi-site deployment, centralized management, version control, and reusable features.
Right now is a good time to really get involved with Drupal since 7 has pretty much grown into its own, so it's at that magical point where you're not counting the days until the next major release and it's still "new" to the community so tutorials, discussions, and the like are more indepth and reference the difference between how it was done and how it is done, giving you more of a picture.
Drupal Developer | Saint Paul | Buenos Aires