Posts Tagged ‘Drupal’

Why Drupal?

Monday, October 6th, 2008 by The BCM Team

drupal.orgWell, here we go – our brand new Drupal-powered site is up.

I am not sure whether you noticed but we are using Drupal, a well-known CMS. We have worked with other CMSs before: from plug-ins for frameworks to Joomla but we had never spent that much time with Drupal.

We did not decide to go with Drupal because we thought “it was the best CMS”, but because we thought that:

  • it suited our needs
  • it is PHP based
  • it is under very active development
  • it has a huge (and ever-growing) user-base, which means great support
  • it has a great number of well-written plug-ins

If you have never used Drupal, let me tell you a little about the learning curve. It’s steep, I mean it is damn steep (in my best James Brown voice). You are guaranteed a few sleepless nights (or maybe even weeks) trying to get your head around it, but once you do, oh boy is it worth it. Well, at least that’s my opinion.

I won’t get into a detailed overview of how Drupal works or how to get things happening using it. I will, however, say this: Drupal is constructed in a way that you can override almost anything (providing you know your PHP stuff). You can define “custom objects” and wrap your representation pages around it. I am sure the last sentence was “very clear”.

So let me give you a quick example:

Say, you want to have a page that allows the visitors of your site to enter the specs of their PCs so you can build up a database of what computers your users use. You also want to have a page that lists entered computer systems in some way.

Here’s how you could do this with Drupal (in a very rough approximation):

  • Create a custom “content type” (object that will define a single computer system) that will hold users’ computer system’s parameters like processor, CPU, RAM, HDD, etc.
  • Create a page where you have a form that users enter their computer specs. The good thing about Drupal is that you won’t have to actually create this page i.e. you won’t have to add all those form fields manually. Instead, the form will be generated automatically using the custom content type you created.
  • Create a page that will read all entered computer systems’ specs from the database and display it in the way you want. This will also be pretty easy because, in a nut shell, all you need to do is select what “computer specs you want to display” and select “where (on the page) you want to display them”.

Described above is a very simple example and, of course, it can be done numerous other ways using Drupal or another tool. In case you are interested, for the example above you will need to install CCK and Views both of which are contributed modules.

Which conveniently leads me to the next great thing about Drupal, the contributed modules. There are loads of contributed modules to chose from, each of which can override the existing core to add the functionality you require. You can even write your own. Once you master writing your own modules you will be able to do just about anything with Drupal.

I hope this post tempts you into to taking a look (or maybe even a second one) at Drupal.

Update: Upon the completion of Border Crossing TV, we decided to develop a custom PHP framework which this site now uses. Working with Drupal was great and we look forward to doing so again.

Why The New Site?

Friday, August 29th, 2008 by The BCM Team

You may have noticed that we recently updated our website. Here’s why:

  • our old site was a static brochure site and we wanted something more dynamic
  • it’s almost two years since we released our first site, and it was time for a change, both for us and the site itself
  • we had been playing with Drupal for quite some time and wanted to test it out
  • the timing was right
  • the will was there

So here is a fresh Drupal install with the blog enabled.

Update: following our Drupal testing we have decided to move back to a custom PHP framework and a Wordpress blog. That said, we still think Drupal is an amazing tool, and we will continue to use, and recommend it to others, when it’s the “right” tool for the job.