I’m sorry, Drupal. We should spend some time apart.
I’m sorry to leave Drupal. I really am. Drupal has powered Monochromatic Outlook for about 15 years, and I’ve done a lot with it. I still have a few other sites running Drupal and I don’t expect to immediately migrate them.
At the same time it’s quite a relief to have the migration to WordPress over and done with. This decision has weighed on me for years, since before I wrote my post Drupal Maybe we should just be friends back in 2017. I ought not rehash that post, but I will say something more about my search for a path forward from Drupal. I had to leave Drupal 7, which is very near end-of-life (it would have already been end-of-life except for Covid-19) where it will no longer receive even security updates.
Whatever else I may think this site should be, at its core it is and has always been a blog, even before the term blog was used. My choice of Drupal for Monochromatic Outlook’s platform was borne of an ambition to do more with it. It has been a log of my running, a list of words I learned, and a place to reflect on the books I’ve read. I used content types in Drupal to make the site serve those purposes. In addition to my thoughts on these subjects, I kept statistics about the distances I’d run and the number of words I’d read.
These ambitions came at a price. The more complicated it got, the more could (and did) break. I ended up spending more time maintaining the site’s software than I did writing content. The site became a chore I dreaded to look at instead of the creative outlet it was meant to be.
Drupal’s interface to make content was never satisfactory. I tried simplifying the process by using Markdown so that I could write in any text editor, but even that proved to add complexity rather than remove it. Markdown is simple. The libraries that support it and render it are not.
I promised I wouldn’t rehash 2017 post and I’m already breaking that promise. What is new since then is that I have tried repeatedly to transfer the contents of the site to a newer Drupal instance. I’ve looked at and tested other platforms and created Development versions in Drupal 8 (many times; it’s the natural choice, or at least it should be) Drupal 9 (a few times) Ghost, and WordPress.
Ghost in the machine?
I love Ghost. It is a terrific blog platform. It however has a few failings, at least from the perspective of its suitability to this site. When I first looked at Ghost it ran on the PostgreSQL database and stored its text in Markdown. It’s written in Node.js and performs quite well. I have to confess I don’t know how well it would scale to high traffic, but high traffic has never been a huge problem for this site.
Ghost disappointed me twice. Its developers first dropped support for PostgreSQL, and then replaced their Markdown editor for one that’s admittedly more user-friendly and powerful but which lacks the elegance or features of Markdown. It handles Markdown inside its content system, but features like footnotes (I do love my footnotes) became complicated.
Ghost’s biggest shortcoming for my purposes is that it doesn’t support comments. To me, a blog without comments is lacking. I understand why many sites would choose not to have comments; there are some sites where I wish I could make the comments disappear. But the real value of my blog is in the conversation with the readers. Even when readers are few — perhaps especially when readers are few — commenters push back and challenge my point of view. Of course it’s nice to see people offer support as well, but whatever it is, when someone responds I know that I’m not alone talking to myself.
Request for comments
There are third party comment engines and services, and Ghost’s developers point to them as the reason built-in comments aren’t necessary. The developers want to make the blogging platform the best it can be and let someone else handle the comment systems. I can respect that perspective. For other sites I have set up Commento, an open source comment system that can be added to any site. It works much like Disqus but it can be self-hosted. It’s a good solution for many.
This site has thousands of threaded comments from the past two decades, starting when Monochromatic Outlook was called Opinionated Junk. It’s important that these comment threads be preserved. Commento can import from WordPress. It might even work, now that the site is on WordPress, to transfer them to Commento. The real problem with moving from Drupal to Ghost, using WordPress as a go-between, is that with two iterations of exporting content, there’s twice (or more) as much that can go wrong. Not only must the comments be threaded, they must be associated with the correct page.
The content moved from Drupal to WordPress pretty well (I paid for a WordPress plugin that would do it for me) but without looking at all the posts one at a time, I can’t tell what might have gotten missed. In the tests I ran transferring the content from Drupal to WordPress to Ghost, none of the other content types (my runs, my books, and my vocabulary words) made the transition.
With more time and effort, I could overcome these obstacles and make Ghost work. The question is: how much more time do I want to spend on site administration instead of writing posts? If all I want to do with my website is solve technical problems I could stay on Drupal.
Welcome back to WordPress
This site ran on WordPress for a short time back in 2007 after I left LiveJournal and before I migrated to Drupal 5 in early 2008. I never disliked WordPress but I was taken in with Drupal having evaluated it to use as a wrapper for my own content management and ecommerce platform, and for the short-lived San Francisco blog Saint Frank City (many of those posts were migrated back here when I shut down the site). WordPress is the obvious choice for running a blog. Its reputation is well earned. I do have some issues with WordPress. The site performance is not quite what I’ve come to expect from my Drupal installation. But I spent a long time on Drupal optimizing various caches. A little effort in that direction might go a long way.
So WordPress is the winner here, and I’m already very pleased with it. I’ve been writing this post with Automattic’s WordPress app on my phone and tablet, as well as the web-based interface, and it’s seamless. It stores revisions and autosaves in the background, like it should. The software updates itself automatically so I don’t have to keep checking for updates.
Does this mean I can finally stop worrying about my website and start writing again? Maybe. I’d like that. I’ve missed my readers. There have never been a lot of you, but enough so I know I’m not just shouting into the void. I’ve made friends through this website who have become dear friends in real life. That’s not something I can say about Facebook. That might be a topic for a future post, perhaps? As good as Facebook is at connecting us to the people we already know, it’s useless for meeting new people. Perhaps that’s why it feels so isolating even when we’re connected to everyone we know. Being on Facebook means no new possibilities for friendship. Something that purports to be a social network really ends up not making any new connections, but capitalizing on all our old ones.
There are more factors that have held me back from writing in the past few years, of course. I can’t blame it all on Drupal. But maybe by removing one roadblock it will be easier to push past the others. I can figure those out later and perhaps those topics can have their own posts. For the moment I feel optimistic. For the moment, writing for my blog feels good again. That’s enough.
One Reply to “I’m sorry, Drupal. We should spend some time apart.”