Why it’s so Great
WordPress is an incredible platform from both an administrative and development perspective. Great from an administrative perspective because out of the box it is easy to use. Heck, the install process takes only 5 minutes and if you have a theme picked out, you are creating posts and pages within minutes. It’s great from a development perspective because it provides a robust framework that can be relatively easily customized, scaled, and modified to make work in the manner that almost any application requires.
… and Why that is not so Great
However, this ‘greatness’ has produced some seemly positive but technically frustrating scenarios amongst web clients, project managers, content managers, and web developers. As the non-technical team members may sometimes assume everything is a widget that can be simply dragged into place or adding any feature is as simple as downloading a plugin, the developer may be cringing at the amount of customization truly required to make the application work as desired.
Widgets are great, the drop and drag interface is impressive and plugins can save hours if not days of development work. However, when planning and building a unique application it must be understood from the very beginning by the non-technical team members that not everything is a widget or a plugin. In fact, as a developer, I listen to my client’s requirements and do not even think about pre-developed plugins and widgets. Requirements are collected and then solutions are researched.
This research process does include looking into both free and premium plugins and how standard widgets may accommodate certain needs, in my world if such a solution exists in a manner that meets all of my client’s needs, it’s considered a bonus, not a rule. Otherwise, we take a look at what is out there, how close we can come to meeting the goals of the project, and then it is a decision of whether it’s more efficient to modify a current solution or to build our own. Either approach is not necessarily always more expensive than another.
What are the Odds?
Think about it, what are the odds that when you design a new website in Photoshop, speck it out on paper or whiteboard that there are prebuilt (and even better: free) plugins that do everything you just specced out exactly the way you specced it out. Sure it can happen but anything beyond the simplest personal blog is quickly going to approach the limits of what is already out there without modification.
Though widgets and plugins are great and there certainly are a lot of them (nearly 30,000 hosted at wordprress.org alone), it cannot be assumed every requirement of an application can be met simply by installing a plugin and dragging widgets around. Assuming such will quickly lead to a very frustrated web client and development team.