Is Drupal right for your project?
There's lots of buzz about Drupal these days. Indeed, the Drupal community got quite a boost from the decision to develop http://whitehouse.gov in Drupal (ahh, it's such a stately platform, eh?).
There is no doubt that Drupal is on the up and up - and that it's steadily beating out rivals like Joomla. But any powerful content management system - in the quest for being ever so accommodating (read: generic) - will have its down sides.
Let’s talk about what Drupal is at its core
Drupal is a way to organize and manipulate data - and make it look nice. But then again, that’s what any system/app/program does. The power of Drupal, however, is that it does so in such a generic sense that it keeps the data separate from the design and display of this data. It also keeps separate tools that are developed to manipulate the data.
This is a *big idea*. Your data are stored in these nifty things called “content types” which are essentially like data Tupperware containers. You have all sorts of little containers for different types of data - each customized to the data’s needs. And those containers can go with you from home to home, or site to site - regardless of where your site's hosted or how it looks.
When developers do work onyour site, their deliverables to you are called “modules” - which you can install on your Drupal site and use at will.
If you decide you no longer want functionality on your site, you can disable the module - and your data doesn’t much change (although your site might lose a little functionality). But if you like your development, you can share it - either with a friend or with the open source community.
So to summarize: you get a generic platform that can be themed to look how you want. You get completely portable code. And your data are perfectly preserved in a structure that is completely exportable (and doesn’t lock you in). Great!
But, my friend, there are some down sides...
In the quest to make things generic and add tons of cool features to the CMS, it is inevitable that things will become less efficient. Drupal gets slack from people who haven’t yet sipped the kool-aid for this very reason.
So is there a magical solution to this conundrum of inefficiency? It turns out, yes! By using reverse proxies like Varnish, or distributed memory caching like Memcache, you can dramatically speed up your Drupal site - and even make it faster than many non-Drupal sites. Or you could also just add more memory. But your sweet spot is likely a combination between the two. Drupal will likely save you boat-loads on development, so hopefully you can spare a few bucks on the hosting.
On that note though, the real danger you face is “module overload syndrome”. There are so many open source development projects out there (available free), that you run the risk of adding so many new features that it bogs down your site - and your hosting budget due to the extra memory requirements.
And that’s the name of the game - balancing Drupal’s inefficiency with it’s power. We help people develop powerful, profitable, and lasting websites/web systems for their business needs. We could likely do the same for you (sorry, but the pitch is inevitable, my friend - and it’s true). If you’re considering developing a website, give us a call. A human will answer the phone, and we’ll talk over your needs patiently and thoroughly.
We live in an exciting age. And it will only become more-so. We’re here to help, and we hope to hear from you soon.