Wednesday, October 19, 2016

WordPress Without Shame

By Gina Trapani, Director of Engineering, Postlight

Image via Wikimedia Commons

We talk a lot about content management systems at Postlight, often in the context of a specific client's needs, and sometimes, as a question about our general philosophy around publishing. And we also build a lot of custom tools for solving very tricky publishing problems—a good example is Instant.me, which benefited from a custom CMS, fully oriented around a specific workflow.

But not every nail needs a fully-custom hammer. During our CMS conversations, inevitably I am the person in the room who brings up WordPress. Then, my teammates put on their most patient facial expressions and listen to me make the argument.

Ultimately, as a director, I am obligated to consider all the technologies that can help our client achieve our goals—including the old, boring ones. Enter WordPress.

WordPress is not particularly exciting, intrinsically modern, or lightweight. It's a 13-year-old monolithic web application that powers 25% of the web and probably 30% of web spam. But, a whole lot of the time, WordPress is the right framework.

Since I started here about six months ago, I've helped ship two major WordPress projects.

The new VICE News

Last week, we helped launch a brand new, reimagined web site for VICE News (in parallel with the premier of VICE News Tonight on HBO). The web site mirrors the philosophy and aesthetic of the TV show, featuring a stream of splashy graphics, bold headlines, videos, GIFs, and interactives, with customizable animations that trigger as the user browses the stream.

The key thing about VICE News is that we were on a very accelerated schedule to build and launch this ambitious content quickly. We needed a running start. A newsroom filled with reporters publishes new content on the site on an hourly basis—so using a robust piece of software with roots in blogging isn't a surprising choice.

There is a lot of ambition long-term for VICE News, and it's possible—even likely!—it will outgrow WordPress. Which is fine. If you design a WordPress platform carefully, it's possible to migrate the posts and artwork to another platform later. But given schedule and constraints—it was an obvious choice for now.

NewCo.co

Back in August, we used WordPress to relaunch John Battelle's NewCo family of sites. In addition to developing the homepage theme, we created customizable experiences for each NewCo festival city — for example, here's New York, Boston, and Austin. NewCo is a less-obvious candidate for WordPress — they actually use Medium for their core publication — but WordPress multi-site and child themes made creating a collection of related but unique festival city sites easier to build.

It's pretty remarkable that in 2016 we're still building fancy web sites for modern media companies and startups using WordPress. And yet.

My god… via CommitStrip Four Good WordPress Things

I have a few things I really like about WordPress:

  • Thirteen years of features and development. WordPress core gives you so much out of the box: post and page creation, user permissions and role management, categories, tags, content revision history, drafting, publishing, previewing, content-scheduling, media management with image cropping and rotation, post locking when another editor is working on a piece, multiple sites, and WYSIWYG theming, to name a few.
  • Deep community support and documentation. You never want to be the first person trying to solve a problem with a piece of software, and you never are with WordPress. The community is so established and mature — and most of its users are writers — that at least 300 people have tried to do the thing you're trying to do and wrote about the solution they found online.
  • A site that's easy to hire for (whether engineering or editorial) and easy to host. WordPress' market share means that anyone who has published anything online feels right at home looking at the familiar and comforting grays and blues of the WordPress publishing interface. Likewise, a mature market of WP developers, service providers, premium themes, and plugins has grown up around WordPress, as well as plentiful plug-and-play managed hosting options.
  • New features are a plugin away. When WordPress core is lacking, plugins fill the gap. If you need to integrate with Slack, add multiple authors to a byline, publish AMP versions of your content, auto-generate a sitemap, expose post data in a REST API, customize your site experience based on your users's location, control in-article ad placement, or create custom objects or fields, there's a plugin for that. Plus, building your own plugin from scratch is straightforward.
  • Four Bad WordPress Things

    But it's not all good. When you use WordPress, you also get a lot of baggage. My teammate Dusty Matthews — who was responsible for the previous WordPress incarnation of The Awl network of sites — has a canned response whenever someone has a WordPress WTF moment. "It's a WordPress thing," he sighs, a knowing look in his eye. Here are the four killer WordPress issues.

  • WP's "everything is a post" approach feels like hammering a round peg into a square hole and then trying to retrieve it again undamaged.
  • The Loop bites you in the ass at least half dozen times per project. Adding blocks of raw PHP in WordPress templates can drive someone who believes in a clean separation of view and logic absolutely batty.
  • It's slow. It takes a while to load a page and do all the things WordPress does, sometimes seconds per page—which won't scale. So you have to build in layers of caching—and that means that…
  • It's really, really hard to get consistent caching logic. This one can really bite you. You end up juggling caching logic in your head and figuring out strategies for breaking the cache when news breaks and a big new story goes up right now. You'd think this could be a solved problem—but when you factor in all the different systems and hosting solutions required to ship WordPress at scale, caching remains a tricky consideration to navigate.
  • Modernizing, Slowly

    WordPress is improving, quickly in small ways, but slowly—very, very, slowly — in big ways. Matt Mullenweg gave the WordPress community a telling homework assignment for 2016: "Learn JavaScript, deeply." Automattic's React-based Calypso rewrite of the WordPress admin is a clear sign that at least the leaders of the community are trying to reimagine what a WordPress born in 2016 would look like. Eventually? Soon? The WP REST API will be part of core so that headless WordPress implementations, which decouple the backend and frontend, will become less cutting-edge and much more commonplace.

    The universe of content management systems continues to expand, and yes, using WordPress often feels like a throwback to 2006. It's also often the right tool for the job, and it's incredibly fast to get it up and running—plus editors and writers often know it well and like using it.

    We love doing custom work that solves really difficult, thorny problems, and the way we see WordPress is that it solves a lot of boring, well-known problems so that we can focus on creating great experiences and facing new challenges.


    Source: WordPress Without Shame

    No comments:

    Post a Comment