Clutch spoke with Abhijeet Chavan, the CTO of Urban Insight, about the comparison between Drupal and Wordpress – two very important website platforms. Learn more about Urban Insight on their Clutch profile or through Abhijeet's blog.
Introduce your business and what you do there.
Urban Insight, Inc. is based in Los Angeles, California. We are a technology consulting firm working with clients in the higher education market, non-profits, professional organizations and cultural institutions like museums (the Los Angeles County Museum of Art is one of our longtime clients). We also build technology innovation projects for non-profit legal services organizations around the country. For our legal services clients, we offer a hosted solution called OpenAdvocate, for building public information websites, and also offer free tools for legal services professionals. We also created Planetizen which offers news, jobs, online training, and other resources for urban planning, architecture, landscape architecture, urban design, and allied professionals.
Most of our current work involves Drupal in one way or the other, but we also use other technologies and products, including custom WordPress development.
What are the main challenges clients will have when contacting you about building a new website?
The type of work we typically take on is beyond straightforward websites. It tends to require integration with other platforms and is heavily database-oriented. We try to figure out what it is the client needs, in terms of business and marketing requirements, and try to find the technology which best suits the project. Recent projects come in specifying Drupal, but, if this is not the case, we carry out a needs and technology assessment and propose technologies best suited for the project. Many of those factors depend on whether they have in-house technical expertise for continuing the maintenance of a project, whether they have existing systems in place which we need to interact with, and what their future goals may be for the project.
What factors should people think about when first choosing a platform for their website?
I am an advocate of open-source, and tend to prefer platforms such as WordPress and Drupal. I think that they provide an advantage over proprietary platforms, in a way which offers control over what is being built. This work can then be shared with others, and, when working in non-profits and higher-education services, this is an important point—any solution being built can be replicated by the owner’s peers. It’s a collaborative atmosphere, and open-source is perfect for this.
This aside, it depends on what the goals of the project are in the future. WordPress is great for building sites with commonly needed features, but, if the project is to build a different, more customized solution, or one which needs integration with third-party platforms, then Drupal might be a better solution. We look at what the long-term project goals are to decide the right platform.
Can you give a bit of an intro into both Drupal and WordPress? Who might be an ideal client for each?
WordPress has its origins in blogging software, but it’s evolved far beyond that. It’s an excellent web-publishing platform which makes it relatively easy to build websites. There is a large ecosystem of visual templates, designs and plugins available, which can be used for putting together a website that looks professional. WordPress offers a lot of useful features, and it’s driven by the open-source model, in the sense that there is a lot available for free, which has been developed by the community. For most projects, this may be exactly what is needed.
If the project requires more custom development, then the question arises: Is WordPress still the right platform? For projects which require customization, or where the website platform will be used as a foundation to build other, more complex systems, Drupal may offer a better alternative. It’s also an open-source project which started back in 2000, and has a large vibrant community of developers and users. It’s a creative community which has always been innovating and bringing in new web technologies into the platform. Nearly 2000 modules developed by the community -- called “contrib” modules -- are available to extend Drupal. Drupal can be used to build a quick website, but its real power lies in its ability to be used as a framework for building more complex systems. This is where it really shines—building custom modules in a developer-friendly way, which is maintainable, sustainable and open-source, so other people can help improve it. All these factors make Drupal an excellent platform for building more complex web applications.
Both platforms have their place, and both have an audience. There is an overlap, too, depending on project needs, as well as internal clients’ capacities. We can’t go wrong with either one of them; it’s more a matter of choosing the right one for the project and your organization.
Even though there may not be a wrong platform choice, are there any user or company types to which you wouldn’t recommend either Drupal or WordPress to?
Both have a maintenance cost. Just because it’s open-source, doesn’t mean a project built with open source is free—you have to have a realistic budget, make sure it is run in a sustainable fashion, keep it up-to-date and maintain the platform. The capabilities needed for maintaining each of them are different. In some ways, basic maintenance and updating is easier on WordPress, depending on the modules used. Drupal may require more engagement and technical expertise to maintain and expand. The question we often ask is “Are you going to maintain this in-house, or would you have a web development company maintain it?”. We maintain web projects for clients with more complex websites, and provide training for those who want to continue maintaining on their own.
It really depends on the in-house technical capacity and capabilities, and how the client wants to maintain the project in the long run. It’s easy to build a Drupal website and hand it over to a client, but, if they haven’t develop a maintenance plan, the project could run into trouble. You have to budget the resources needed to keep it up-to-date and budget the staff time. Depending on the in-house capacity a simpler platform like WordPress might be better suited for some organizations.
When working with a lot of data and interacting with other systems (the client may have an internal database, out of which they want to pull data and publish it on a website), that requires a platform with the right power and flexibility. In situations like that, Drupal makes an excellent choice. It’s possible to use Drupal’s power to make these connections and integrate different systems.
If someone was looking to maintain a website in-house, be it Drupal or WordPress, what skills or resources would they need, and what would be some best practices for it?
In terms of WordPress, there are hosted solutions you can use to build a website by yourself. A new website can be spun up using a template and some modules, so you can have a good-looking and functional result with minimal technical knowledge or need for programming. You have to be able to get into the technology a little bit (at least understand what it is doing), but, with that said, I don’t think you would need to be an expert in the development of a WordPress website for its maintenance. If you start adding new, more complex features, you would need to have some understanding of them. One more point with WordPress is that it can be built and evolved as we go, and it works well in this regard.
The same thing can be done with Drupal, but, since we tend to use it for more complex projects, it requires more planning upfront, in terms of data structure, information architecture, and user roles. These are all architectural elements which need to be understood and planned for. This might be challenging for someone who hasn’t built a website before. Drupal tends to demand more upfront, in terms of understanding web development and architecture (although not programming necessarily—you can still build a Drupal site without writing a line of code). Drupal projects benefit from thorough planning as well as Drupal experience and you may not be able to bring that in if it the first website that you are building by yourself.
For both platforms, you need to have a good process in place. Once the website has been built, you have to update and maintain it. This is important, given that we have security releases (both projects are good at releasing patches, but you have to stay on top of them, and upgrade when it’s the right time to do so). If a module becomes discontinued, you have to figure out how to move that feature to a different one. This is an ongoing demand, when maintaining a site in-house.
It’s not realistic to think that building an open-source website you could run it for free, and without much cost or effort. While that may be true for a hobbyist site, professional sites, which are part of a core business, you do have to allocate resources, budgets and staff time for maintenance in the long run. Sites can deteriorate rapidly, and the web world moves quickly. You have to stay current, whether you are using WordPress or Drupal.
Are there any other steps which someone can take to ensure that a Drupal or WordPress site is as secure as possible?
It’s a given that you have to keep any website up-to-date, but the security considerations start much earlier in the project. There is a tendency for people new to web development, or for ones who are excited about a project, to come up with a whole lot of features, and add multiple contributed modules. This creates a maintenance load in the long run, and also increases the security risk -- instead of say 20 modules, you may now have 60 to keep up with, which increases the code footprint and the maintenance load.
One thing to do early on, when building a website, is figuring out exactly what features are needed, and try to limit the module footprint to that. You can try out different modules, but, when going into production, you have to make sure you are running only the code you need. This should be done over time: in year two or three of the project, you can go back and look at what you are still using. Remove what you don’t need to decrease your code footprint, and therefore the risk of something going wrong.
Are there any particular features or aspects of Drupal you find impressive or make it stand out?
There are many of them. When I first started using Drupal, back during version 4.1, I liked the feature of vocabularies and taxonomy as ways of categorizing content. It was a different, data-centric view of web publishing, and it demanded discipline on coming up with an information architecture. It also had a modular approach. WordPress today certainly has some of those benefits, as well.
Instead of naming particular features, my answer would be in terms of certain qualities the Drupal platform has, which appeals to me today. One is the view in the community that Drupal is an enterprise-quality system which can be used to run high-performance, high-availability websites. That is reflected in the amount of effort which goes into making sure everything works, down to security and accessibility out-of-the-box for the platform and its modules. Drupal is not perfect, but it’s being constantly improved.
Secondly, there is the community itself. I’ve been to numerous Drupal conferences, which are some of the most exciting events to go to. They’re very inspiring, not just for Drupal, but for the technology world in general. For its scale -- the community is massive and it’s all over the world, -- the community makes a genuine effort to welcome everyone and foster collaboration. This is seen in not only big annual conferences, but also smaller, regional Drupal camps and meetups. You can go in, talk to other Drupal users, and they will help you out. This environment is the strength of the Drupal platform.
Are there any particular features or aspects of WordPress you find impressive or make it stand out?
I’m not as familiar with the WordPress community, but there’s definitely been a great amount of effort put in by them to make it user-friendly, enabling people to start building a website without having any technical knowledge, which is commendable. When someone new to web development is asked to put together a WordPress site, they can get into it. In our experience with our clients, content editors find the WordPress content authoring experience to be user-friendly and intuitive.
Is there any aspect of the Drupal platform which you think could be improved, or is there anything which could be added to make it a better CMS?
People have asked for a better out-of-the-box experience, matching the one on WordPress. We don’t tend to use Drupal that way, so it’s not something we would need. We tend to build more complex systems, for which Drupal works very well.
The problem with adopting new technology which is miles ahead of the previous one, is that we have to cover the distance, and there is a cost associated with it. What has been challenging is the fact that new major versions of Drupal require a certain amount of website refactoring particularly for the type of larger projects we undertake. After having gone through a major rebuild a few years prior, clients wonder why they have to go through it again just to upgrade to a new version of Drupal. There are good reasons why new versions of Drupal are built that way, but it can become challenging to convince a client to budget for a major upgrade. This is not the experience for everyone using Drupal, since, if you are running a straightforward site, it may not be a problem at all. However the type of Drupal sites we build tend to have more integrations with other enterprise systems, so we often have to rebuild in order to upgrade. Now Drupal has adopted a “minor versions” release cycle which makes upgrades less painful with incremental changes. My development team appreciates that the minor-version approach allows adding new features to current major version easily instead of waiting for the next major version to be released -- so we can implement new features sooner.
Is there any aspect of the WordPress platform which you think could be improved, or is there anything which could be added to make it a better CMS?
I personally don’t have an insight into it, but for those who use WordPress, it’s a platform which works well. WordPress is doing many things right.
Is there anything else you’d like to add?
I think there is a tendency to be excited about the platform, when starting a web project—Drupal versus WordPress, and the feature sets associated with each. Clients can sometimes forget the main objective, after becoming enticed by the different things they can do. It’s important to be focused on that, and we don’t always need complicated solutions. Simple things can work as well, and can be easier to maintain in the long run, as long as they accomplish the project objectives. It may be trope in the web development world, but, at the end of the day, the most important part of a web project is the content itself. This is where we need more attention, making sure that there has been effort put in the text being written, the images being created and the videos added to the website. No matter how great a platform or beautiful the template is, if the content doesn’t convey the message, getting people to buy the new product a business may be offering, or to change their points of view, or to provide answers for a problem, the website platform itself can’t help with that.
Added to this are things like web accessibility—making sure the site is reachable by everyone with different abilities, responsive design -- so the website is available on multiple devices -- as well as accessible in terms of using plain language (using plain, direct words, rather than a more complicated technical jargon). I have advocated for these best practices in my legal services work and at the White House Forum on Access to Justice.
If you spend a lot of effort and time designing and building a new website don’t just reuse content written years ago. Put in the effort to craft new well-written content using plain language, present it in an accessible format using a responsive design, and optimize for search engines (SEO). Either Wordpress or Drupal can help you achieve that.
We have five additional questions. For each of these, we ask that you rate each platform on a scale of 1 to 5, with 5 being the best score.
How would you rate the platforms for their functionality and available features?
I would like to add the disclaimer that this type of comparison between the two platforms is comparing apples and oranges, as the decision of whether to use Drupal or WordPress depends on the needs of the customer and the project.
WordPress – 4
Drupal – 3 – Out of the box.
How would you rate each of them for ease of use and ease of implementation?
WordPress – 4
Drupal – 3
How would you rate them for support, as in the response of their team, and the helpfulness of available resources online?
WordPress – 3
Drupal – 4
I don’t have much experience with the WordPress community, but Drupal has been excellent.
How likely are you to recommend them to a friend or colleague?
WordPress – 4
Drupal – 5
How would you rate each platform for overall satisfaction with the platform?
WordPress – 5
Drupal – 5
They’re both excellent platforms.