Building a second to none Drupal authoring experience, by not.
Photo by Patrick Fore on Unsplash
Nikki and I came, we saw, we talked quickly, and #haxtheweb has started to make sense to some people. But not enough, and that’s where you come in. There’s some amazing parallels in two talks from DrupalCon; Ours in HAX the web, and another by Pantheon about WordPress 5.0 changes / Gutenberg. If you didn’t get a chance to see them I recommend watching the WordPress one and then our HAX one as almost a “What if Drupal had it’s own Gutenberg project” which the speakers are talking about int he first one.
What’s possible with WordPress 5.0
Web components, Polymer and HAX
The unspoken crisis
There’s a great truth spoken towards the end of the What’s new in WordPress 5.0. How does one sell Drupal if Wordpress has this amazing authoring experience? It’s exactly the prompting we gave at Drupalcon Baltimore in 2017, save Drupal through superior authoring experience. If Wordpress beats us to the ultimate, usable experience in content production (or hell, even just a 1/2 decent one), how is your agency able to sell Drupal? It can’t.
I’m really glad that this conversation happened (I had a conflict or would have been there) and that people were willing to be honest and basically have an open discussion of how do we survive in the future if they do land this thing right.
State of the WP in bullet points
If you haven’t been following Wordpress, there’s effectively two communities in one right now when it comes to mindset about WP’s future direction (it’s very well outlined in the WP 5.0 post).
The biggest criticisms of Gutenberg are (at a high level):
- You’re making a major change with no real input
- I just want my shortcodes and other conventions I’ve always had
- I don’t want to learn javascript just to work
- Please don’t do this
These concerns are situated against reality of the web:
- If PHP based projects are to survive they’ve gotta go all-in on a JS framework (most likely)
- jQuery isn’t going to cut it
- Shortcodes aren’t going to cut it
- Javascript is where everyone is at and building amazing experiences on the front-end
- A huge group of people saying “Please do this it’s over due”
Another way out
There’s always another way out and it usually comes in manners we least expect. How can we possibly compete with the AX patterns expressed in Gutenberg? We can’t right? It’s incredible. I mean even in it’s unfinished state, it’s in React and people love React. How could we possibly top what they are working on. Here’s where the WP approach is vulnerable
- Once you adopt it, you will never be able to get out of it. It’s markup is all made up tags and comments and DEEPLY tied to WordPress.
- To contribute, get ready to ramp up on React and all the tooling chain that comes with it
- There is enough strife in said community (even just from a distance I can see it) to provide options for people to migrate away from WordPress. Great change (as we saw from D8) can cause great advancement but when people review options they really review all options
- The body field is king and their world will devolve into body field only, even more as they seemingly position themselves to get out of the PHP business *cough*
Ok, so how can we turn these against them. How is it that my team reviewed what they are doing at a high level and said how can we avoid these mistakes. Don’t get me wrong, I love Drupal; but I’m going to make the best decisions for my team and our projects when it comes to selecting it. So here’s intentional decisions we’re making with HAX the Web in order to beat them at their own game:
- HAX is built on Web components and while we use Polymer to build ours, we’ve integrated “Vanilla” JS elements. Think of Polymer like JQuery or underscore as a helper library, not an entire reframing of the way you build
- We also write to the body field, but we’re not using any Drupal specific conventions which means our content could write anywhere and work anywhere provided the tag definitions are available.
- We currently have integrations with Drupal 6, Drupal 7, BackdropCMS and GravCMS, meaning that you can unify the AX patterns between Drupal and anything
- Our solution’s integration methodology is trivial and writing new components to work with HAX is simple. Extend the web visually, then fire an event informing HAX (if it exists) about how to modify yourself. This means our elements will on any web site and if HAX happens to be there, they’ll work with HAX there.
- Our Developer Experience is second to none and incredibly simple. We have students with a few weeks experience and junior developers making meaningful contributions to our design assets and HAX in weeks not months. We have people that have never coded before making more impressive elements then much of the themes I’ve seen in Drupal for years.
- Drupal will learn the design, Drupal will not be in charge of the design.
An authoring experience where Drupal just happens to have really great integration but that anyone can plug into and extend. Unite the tribes, join us. We’re already having discussion with Joomla, LMS and other vendors we never would have been able to previously because we’ve completely decoupled design from Drupal, and then taught Drupal about our design.
Please. Join us in these efforts. Challenge us on them. See what it is and how we’re trying to accomplish it. Because if we don’t, if we keep going the “Drupal-isms on Drupal-isms” methodology to layout and panel-esk development, we will lose long term. The door hasn’t slammed yet and no, we’re not the only path to truth; but Drupal has a real opportunity right now to start down a truly innovative path and say that we are here for one purpose: To build the authoring experience for the web.