In the midst of two days of dense, technical talks at LoopConf last month, the moment when I knew that my trip to Utah had been worth it wasn't what I'd expected. That moment came before lunch on Friday, during Ashley Kolodziej's session Protototyping, Reflection and Identity: Unusual Applications of the WordPress REST API, when Ashley said,
Everybody has a different idea about what the REST API is, and what it can do for them… to me, it means "I can talk to WordPress, too."
This was when I realized how much I've been burned out on contributing to WordPress, and that now's probably a good time to get over it.
When we merged the REST API into WordPress core in 2016, it felt fantastic. Three years of work and intense community coordination had paid off, and we had a foundation upon which we knew we could build so much more. Going into 2017 we had a long list of tickets representing exciting challenges, things that would continue making WordPress a powerful base for all kinds of different plugins and decoupled applications.
And last year I accomplished just about none of that.
I'd started contributing to the API project because I found it empowering; it let me use WordPress in ways I wouldn't have dreamed of previously. Over time I met more people who were building other exciting things upon the same foundation. This diversity of use-cases was the basis of our argument that the content endpoints belong in WordPress core. But when I sat down at my desk in early 2017, looked at Trac, and put off tackling any of those "next release" tickets for one week, and then another, I should have realized how much the work of justifying that argument ground down my motivation.
At WordCamp US this past December I spoke briefly with Matt Mullenweg, who told me he still wasn't convinced that merging the API endpoints had been a good decision. It is really hard to believe in something and have the leader of your project disagree with you so consistently, even when you're simultaneously watching your work enable projects like Gutenberg.
I let that get to me too much. Something probably had to give in the past year—I changed jobs, got married, and moved to a new state—but I regret that the thing I gave up was working on WordPress. I've been around at community events, sure, but I've been all talk, and haven't gotten anything much done.
Sorry about that.
And thank you Ashley, for reminding me why this stuff was exciting to me in the first place.
Returning to her talk, she shared how her Interactive Design team at Boston University uses the REST API to prototype innovative editorial experiences like Of Hoops & Healing, an online interpretation of Dr. Onaje Woodbine's work finding personal healing through street basketball. The end result is beautiful, very human, and a brilliant and unique use of the content structures we already have within WordPress. Ashley explores the project background in greater detail in this WPCampus post on highedweb.org, and covers this and more in her excellent LoopConf talk:
Ashley shared how the REST API didn't initially feel relevant to her work or skills. As her team explored how the API might help realize her designs for Hoops of Healing, however, the content endpoints proved to be the easiest way to get access to WordPress content with the JavaScript tools she knew already.
If I can get at WordPress data with JavaScript, I can do anything.
Their team can brainstorm an idea and then get a prototype running in JavaScript with real data almost immediately, without any dependency on external services, their theme, or the activated plugins on the University's gigantic multisite network. Existing content is there for the taking, and minimal backend work is required even for one-off projects. Ashley found this empowering, just as I did when I started contributing to the project.
She closed by asking, “Tell your designers, tell your junior developers who are afraid and think that this is out of their league, that yes, the REST API is for you; you can talk to it, too. That's the beauty of this, and that's powerful.”
I agree, and I am grateful to you for sharing your story.
There's a lot of work to be done to improve the API, both to support the Gutenberg project and to enable teams like Ashley's to build extraordinary things. But for the first time in a long time, I'm feeling pretty darn excited to tackle these challenges.
Thank you Ashley, and thank you LoopConf!
Great read. Thanks for sharing. I’ve been working with WordPress full-time for ~9 years and have still not contributed to core, mostly because of sentiments such as what you said here:
“It is really hard to believe in something and have the leader of your project disagree with you so consistently, even when you’re simultaneously watching your work enable projects like Gutenberg”
The politics about what should/shouldn’t make it to Core get frustrating and discouraging. . .
WordPress is awesome though, regardless of the politics. I am looking forward to seeing what you produce with your refreshed excitement!
The good news is, everybody does end up on the same team—I hope you’re able to find something you’d be interested in contributing to, as well, because there’s a lot of good we can all do for the project without worrying about what’s contentious or not! 🙂