The once and future _s
Back in August, former Automattician and longtime Underscores (_s) contributor Philip Arthur Moore asked a good question in the Underscores Github repo. Philip was inquiring about the status of this widely-embraced and Automattic-sponsored project that has become the standard — or the closest thing WordPress has to a standard — for a starter theme and “thousand-hour head start” for theme developers.
Noting an accumulation of “lots of pull requests and issues that have gone unanswered for a very long time,” as well as an “anemic” commit history, Philip asked what many Underscores users have been wondering: “[I]s it the purpose of _s to continue being the best starter theme ever? Are any other similar projects currently more active and/or up to date with WordPress [coding] standards?”
Philip pointed out he was repeating a question that had surfaced a few years earlier: should Underscores continue with a single branch, and if so, should it be developed on the understanding that it primarily serves the needs of Automattic, WordPress.com + VIP, and Jetpack — “or WordPress.org theme developers who download the theme from underscores.me” for use as an unopinionated base for their own themes?
Later in September, and about two weeks prior to his departure from Automattic, David Kennedy chimed in for the Theme Team. David assured Underscores users, “From our standpoint … as maintainers of the project, it’s still active.” Then he introduced Varia, a parent theme “for use on WordPress.com.”
Although it has never had a formal debut, today there are 18 child themes at WordPress.com for Varia that appear in the theme install screen listings and page layout options. Varia is described on Github as “A design system for WordPress sites built with Gutenberg.”
Varia-tions on a starter theme
As David elaborated in response to Philip’s question, Varia is “inspired by _s” and is compatible with the block editor and Automattic’s Full Site Editing plugin. How Varia and Underscores may relate to each other in the future is not clear yet, but David posed two possibilities:
I imagine once we get a few more themes out with Varia, we’ll be in a better position to make a call here. Maybe Varia becomes our new _s? Or parts of Varia come to _s? You get the idea. 😄
Underscores still matters, we’re just in the middle of figuring out how right now.
davidakennedy commenting on Sep 9 Automattic/_s Issue #1369 “Clarify the status of Underscores”
In the wake of WordCamp US, Justin Tadlock opened the question of whether WordPress needs (and will get) a “universal front-end design framework” in the form of a “single parent” or “master theme” as Rich Tabor has proposed. The little known Varia seems to be a candidate for that “master” to “rule them all,” as Justin (and Varia’s readme.txt
) put it, but Varia and Underscores only came up in the stimulating discussion his post provoked.
Initially, I was surprised to see a lot of cautious support for the idea of a master theme or some kind of standard front-end framework. Gutenberg’s rapid evolution seems to make it an urgently felt need in the WordPress community. The big questions are, who is going to do it, and what’s it going to be?
As go WordPress themes, so goes WordPress
There has been a lot of competition in the starter theme space since themes evolved from relatively simple CSS skins for blogs to become the foundation for using WordPress as a CMS. That reconception of themes about a decade ago essentially created the commercial theme market, but the proliferation of themes, frameworks, and starters (and layout builders!) since then has created a difficult situation for anyone with a large site, from bloggers to big enterprises.
At some point, people realize they are locked into whatever theme they selected in the past — not just by the lack of interoperability between themes now — but because there’s no reason to expect the interoperability problem to disappear in the future.
When there is a steep cost to adopting any new technology that other systems rest on — including your main business operations — and there’s no clarity about the future shelf life of the new technology, adopting it looks like throwing good money after bad. Try explaining the value of a major theme change to small and large business owners — ask agencies and freelancers how they craft this sales pitch, especially in relation to Gutenberg. You’ll probably see their eyes roll and smoke curling out of their ears.
WordPress users’ expectations have been shaped by the platform’s commitment to backward-compatibility, which gave it a huge advantage when it hadn’t yet captured significant market share up against platforms that had always identified themselves as CMSes. The core, plugins, and (to an extent) themes can be upgraded in place across major releases, generally without serious obstacles. Fundamental changes to the front-end, however, tend to reveal how enmeshed content and design tend to be on WordPress sites, even with themes and users trying to respect those boundaries. Separating design and content was always supposed to be the core value of a CMS, but it generally isn’t a practical reality with WordPress.
Going “headless” and again changing the foundational concept of the platform is one solution to that problem. Another is to adopt a standard front-end in the form of a master parent or starter theme.
The latter course would have to be community-led, Automattic’s baby, or somehow a mix of the two. Whoever maintains and controls the direction of a major starter theme can wield considerable influence over the direction of WordPress itself, especially as Gutenberg evolves to become a more unified content, layout, and design interface that we no longer refer to separately.
Supporting continuity and tolerating diversity
In Philip’s view, any starter theme will always be torn between the needs of the general use market on WordPress.com and self-hosted sites, and the needs of agencies and consultants with more complex, custom projects. Even for the mass market theme, Philip notes, designers are going to push boundaries and do things differently every year. Having different branches of a common core theme might help keep it working as a big, inclusive tent.
Longtime theme developer and front-end engineer Sami Keijonen shares Philip’s view. Sami told me he has an open mind about the possibility of a “master parent theme.” However, the pros are mainly for the average user: inter-theme compatibility that allows easy switching from theme to theme no matter what blocks you use. For highly customized sites and commercial development projects, Sami thinks agencies are always going to roll their own solution.
At this point, pleasing just one out of two major constituencies might be an advance. There is a widespread sense of frustration and even exhaustion with themes in the WordPress community, but there also seems to be a sense that Gutenberg will offer relief, and new opportunities are just around the corner.
Mike Schinkel’s “modest proposal” to deprecate themes entirely is a version of that testy but hopeful sentiment played out to a thought-provoking logical extreme. It’s absolutely the truth that themes have been silos and a big pain that increases over time. So as Gutenberg takes functionality out of themes, how much should they recede? What should they still do? What can they do best? How could a foundational “starter” or “master parent” theme evolve alongside Gutenberg? Purely design-oriented, CSS-intensive themes would be possible again, if there’s a consistent wrapper model for blocks. What else?
An unopinionated master parent theme might cover many different use cases and user needs. With customizations located in a child theme and largely focused on CSS, the master parent theme could take automatic updates with ease. Underscores never supported and warned against that type of implementation, but that didn’t stop people from doing it anyway.
A master parent that can be updated in place would offer a lot of stability to its users, including the users of popular theme frameworks like Genesis. Existing frameworks would no longer have to grapple alone with changes to structural markup and CSS classes in blocks if they could incorporate those changes from a well-maintained master parent theme.
As for the question of who might take leadership around such an important quasi-core project, that might be the hardest one of all, up until someone just does it.