It's long been efficient coding practice to reuse proven blocks of program code. After all, if you've already written something that works, why reinvent the wheel the next time you need the same function or operation? With open source coding, the resources for good, proven code are even greater. Thousands of solid scripts and code blocks are available for use in a new project, just by searching online. This not only improves reliability, since the code you borrow has already been battle-tested, but it also reduces development time and costs.
So why are there are so many social media sites apparently being developed from scratch?
I've discussed the positives of building a business site around a blog, or adding a blog to an existing site before. Darren Rowse of ProBlogger also listed the pros and cons of converting a website to a blog format in a recent post. I believe that the interaction between you and your customers that a blog-style site can create is essential in today's business communications.
The number of businesses and organizations looking to develop seems to be growing every week. Jeff Whatcott of Acquia took a look at the number of job postings related to social applications and found a large disparity between those just looking for PHP programmers (which he assumes means they're planning to write their own code from the ground up) and those mentioning Drupal (which assumes they understand the advantage of starting with an established, robust content management platform). Jeff notes:
There are currently 816 social app building jobs mentioning PHP skills and only 89 mentioning Drupal skills. As you page through the actual job postings, you see evidence of lots of social publishing application development going on out there, but a lot of it appears to be heading down a path of custom PHP development.
So what's up with this? Drupal is the killer social publishing system. It's built on PHP. It saves a ton of time over building a custom system from scratch. Why are so many people who are friendly to LAMP and PHP in particular decide to reinventing the wheel? Which of the following do you think it is?
- They've never heard of Drupal
- They're vaguely aware, but not sure why it might be relevant to their projects
- They've actively evaluated it in the past, but rejected it.
- They know Drupal and like it in general, but it's just a poor fit for the current project for some reason
Companies that are looking to develop a next generation web site need to understand that content management systems have matured to a level where, at a basic administrative level, it's not a requirement to be a PHP expert to implement a CMS-based site. It's nice, but it's not absolutely essential unless you're looking to completely customize every element of the site. Requiring multiple years of experience in PHP and MySQL in order to qualify an applicant to create and maintain a WordPress, Drupal or Joomla-based site is like asking someone who'll be using Microsoft Word to be fluent in C++. It'd be nice, but hardly required for the task at hand.
From an evangelism point of view, those of us who are marketing these new technologies to clients need to emphasize the time and cost advantages of starting from a solid, proven base instead of building a web application from the ground up.
UPDATE: Nick Lewis weighs in with "Top 5 Reasons Developers Don't Use Drupal."
Post new comment