June 21, 2018 by Hedgehog

Drupal: A Hedgehog Live Chat

Welcome to our Hedgehog live chat. The following transcript has been lightly edited.

Jackie (Jacqueline Baxter, Marketing Specialist): Welcome to our Hedgehog live chat, where the opinions are real and the points don't matter. Today we're talking about the ins and outs of Drupal in honor of the CHSLI case study that launched recently. Let me ask the room: what's the ideal use case for Drupal?

Andy (Andrew Karaptis, Senior Web Developer): I think it'd be sites that require a lot of custom content types, fields and taxonomies since Drupal has always done that at its core out of the box, as opposed to needing add-ons for that like a lot of other, popular PHP CMS’s. Large, content heavy sites that require detailed content workflows, like news sites, is also another popular use case.

John (John Beck, Senior Front-End Developer): "I need to build a website... But I don't think a simple Wordpress install is going to cut it."

Jackie: That should be their new tagline.

Andy: Ha, that is pretty accurate.

Jackie: Seriously though, is that because Drupal is very user friendly? I know that Drupal 8 was a bit more focused on content editor access.

John: Also, if you're squeamish about spending a ton of money on licensing and want an open source solution, Drupal just naturally slides into the picture. It's reasonably friendly out of the box, yes. But I think what makes Drupal an appealing option is the fact that it's a very mature platform, with a vast community of developers building things for it. There are a million different ways to skin any particular cat, but chances are, someone has already done it, so go poking through the various modules out there to see what other people are already using.

Andy: Drupal 8 improves some aspects of the content editor experience, and Drupal 7 is also decent once you learn the ropes, but I'd say Drupal core in general is more powerful under the hood than Wordpress core, and as a result Wordpress' content editor experience is smoother and simpler. Drupal content editing is more complex because you can do more with it, so has a bigger learning curve for content editors in my experience.

John: ^ this. A general rule of thumb is, the more flexible a thing is, the more complex it's going to be. And Drupal, being as crazy flexible as it is, has its complexities. But generally speaking the documentation and community resources out there usually mean that you can get things rolling quickly, and once you learn the Drupal way of doing things, you're off to the races.

Andy: "The Drupal way of doing things". True! This is one reason you want a team with Drupal experience working on your Drupal projects. Otherwise it can go off the rails pretty quickly.

Jackie: The search 'what should I know about Drupal' does turn up a lot of 'things you should ask every Drupal dev before you give them the key to your site.'

Jackie: Going back to the idea of complexity...is security one of the reasons for that? Seems like every time I turn around someone is asking if I've heard how safe Drupal is.

Andrew: Yeah, traditionally Drupal has always had a better than average reputation for security compared to competing CMS’s. Their core security testing and bulletin system has been well regarded for most of its history. There were periods of time a few years ago when Wordpress core (and other CMS’s) constantly had high profile problems while Drupal seems to patch the same quickly. That being said, all of these CMS’s are targets for malicious activity since they have large user bases and are open source, so none are completely safe and all require continual maintenance to keep them updated to their latest versions. Drupal recently had some high-profile security releases. For sites that stay up to date, it goes smoothly, but if you don't keep your site up to date you could be at risk

John: If I recall correctly, whitehouse.gov is built on Drupal. So too is the site of the house intelligence committee. And that's just the US. Secure government sites all over the world are built on Drupal.

Andrew: Yes, Drupal does have a string of governmental uses due to its reputation for security. I believe whitehouse.gov was recently revamped for the new administration, but it was running Drupal 2 years ago. City of Boston had a high-profile use of Drupal recently as well.

Jackie: Well if the City of Boston is doing it, all the cool kids must be.

John: Yeah, Andy has the right of it. Drupal's reputation for security comes from the fact that a lot of these sites are constantly be hammered by the crucible of real world attacks, so it's constantly being fortified against them.

Jackie: It's pretty clear that Drupal takes that seriously, and as a company they've done so almost from the beginning. In the modern world there's a lot to be said for that kind of attention to a major aspect of...having a website, really.

Andy: Sure. Security doesn't get the attention it deserves in general, and it’s incredibly hard to do it well for a modular CMS where website owners can customize freely and install any number of 3rd party add-ons. I think Drupal has done as well as can be expected in these regards. The security pressures have intensified in recent years on all web apps, so the security stress on CMS websites is stronger than ever. Keeping up to date is really the basic and most important step to at least not be low hanging fruit for attackers.

John: Yes indeed.

Jackie: They're also pretty responsive to market trends, making a shift toward mobile first. How does that impact Drupal development and design? See how I pulled the designers in there? Smooth is my middle name.

Andy: Ha! I am a bit of a curmudgeon about terms like "mobile first". Is that really something a CMS back-end can achieve? I think it is mostly good for marketing, but in my experience a talented front-end development team can develop a "mobile first" theme and front-end in any of the modern CMS’s. Drupal 8 does come with more mobile-friendly themes out of the box, but few professional dev teams would base their work on those as starting points, preferring instead to create clean efficient custom themes from scratch or from starter boilerplates.

Andy: Drupal does include "headless" API features, unlocking the capability to use it as a backend for Javascript-driven SPAs, which is cool for some projects.

John: Yup. Mercifully, not much is different from that perspective. You design and develop on Drupal just as you would any other modular CMS. For the front end, Drupal does have a pretty rich theme-ing system on which to build your "mobile first" designs.

Andy: I do really like Drupal's theme inheritance system. Drupal 8 does go all in on better "headless" APIs.

John: And the headless features are a great option if what you're really looking for is a content engine, to drive single page apps built on angular or react, for instance

Andy: I think it is helpful to have a unified team with good communication when designing for Drupal. Our design team does this on our Drupal projects. It requires coordination with the development team to get the most work efficiency since you really want to plan out all those content types and page layouts ahead of time from a tech perspective to know how best to structure the designs

John: Absolutely

Melissa (Melissa Banks, Senior Web Designer): I would go as far as to say we don’t really let the CMS dictate the design and strategy. Rather, we figure out our strategy first then pick out the appropriate CMS for the job and work together to figure out what content we’re dealing with and from there we try to provide our clients with the best possible design solution.

Melissa: If we were working with small businesses that don’t really have the budget for customization then we might want to be more familiar with exactly what “out-of-the-box” looks like so we can design for minimal changes, but at our level we’re typically dealing with clients who are paying for a site that is custom to their needs.

Andy: Totally. The coordination is especially important when redesigning/reskinning legacy sites that don't want to revamp the structure of their content, in which case it is tricky to make that old stuff look shiny and new.

Melissa: I just give the developers my design wish list and they magically make my dreams come true

Jackie: All right everyone, what’s your favorite thing about building/designing on Drupal?

John: Well, for one, I like how quickly I can get an instance of a Drupal site up and running from scratch. Literally minutes. Of course, mileage varies with an existing solution with lots of moving parts. And as Andy mentioned above, the robust theming system, allowing you to inherit easily from an existing theme, is pretty cool from a FED perspective.

Andy: I like that custom content types and custom content fields are included in Drupal core, as well as a nice defacto system (Features) for deploying those, unlike some other CMS’s where 3rd party add-ons are needed for that super common need. I really like Drupal's concept of "Views", which is a powerful way to build data lists and layouts.

Jackie: I refuse to move on until Keith finishes typing. I can see him thinking.

Keith (Keith Bauer, Senior Solutions Developer): As a backend dev, I enjoy working with the Views module in Drupal. It allows for organizing output of content in a many useful ways where many other CMS systems have a more rigid approach.

Keith: I also like the UI for creating custom content types and fields. This is normally something designated to code can be easily created via the admin panel in Drupal. This setup also allows for a much more granular approach to the rendering of each content type/field/etc. through the comprehensive templating system. Having that control over the output here is something you rarely have in other CMS systems.

Jackie: That's two votes for views which means we are now obligated to talk about them. Why are they cool and/or why is their flexibility so useful?

Andy: Well, in most other CMS’s I am used to having to create selections of data and layouts for those selections of data mostly in code alone. that's fine, but Drupal Views provide a powerful way to set up such data streams right in the UI of the CMS Admin in a way that even content editors can add/edit/delete. That is a powerful concept in my experience and in some cases you can make very quick changes to Views-based layouts instead of having to edit and deploy code changes. They also have a ton of built-in functionality, like data filtering and easy theme hinting. You have to be careful since they can be resource hogs since they have so many features, but in many cases they are helpful and a workflow improver

Jackie: All right, headed into the home stretch here. What’s your best advice for anyone considering building or designing a site on Drupal?

Andy: If you're building from scratch I'd recommend figuring out what you want your content types and content editor workflow to be for maximum efficiency from a business perspective, since Drupal can do almost anything you'd come up with in those respects. Then the rest of your design and implementation would stem from those root business goals. This is good advice in general, but in some CMS’s your root goals will get derailed to cater to the way the CMS requires you to structure things from a technical standard point, whereas Drupal gives you freedom to structure content however you like. Technically I'd advise leaning on Drupal experience. Drupal gives you several ways to accomplish any goal, each path having its own unique tradeoffs, so through experience implementing multiple sites you start to get a feel for the advantages of each approach.

Melissa: From a design standpoint I’d definitely recommend keeping your developers close by and looped into the process and ask as many questions as you can. Overall it will make the process go more smoothly but they will help you to understand any nuances with a specific build so you know how far you can take a design.

Keith: My advice for a site owner or content editor is to fully learn the Drupal admin so that you can have full control over your site. This is important for Drupal specifically because of all the features and control that the admin UI provides.

Andy: I definitely agree with that. In fact, I've seen cases where the admin is not well understood at first and then bad content entry practices creep in over time, making the site harder to maintain in the long run. More up-front learning can reap benefits down the road, and we can certainly always provide that guidance to client content editing teams.

Andy: Why do I write a telephone book... every time?!

Jackie: Because you like me and want me to be happy?

Andy: Correct answer

John: Brevity is for the weak!

Andy: LOL

Jackie: And on that friendly note, we'll call this live chat good. Thanks everyone!

Keep in Touch and Stay Informed

Get updates, industry reports, white papers and more Hedgehog love.