Leaving Wordpress
• ∞
You may have noticed that I rarely update my blog. Part of that is that it’s running on Wordpress, and every time I login, I see a message that says there’s a new version, or some plug-in needs updating, or there are comments awaiting moderation, and most of them are spam anyway. It’s just easier to not blog.
I’ve decided to give it another try, on a new blogging system. For quite some time now, I have been meaning to start writing everything I write in markdown. Markdown is just plain text, but you can transform it into html quite easily. I want plain text, because it lasts forever. I can no longer open the Wordperfect files I wrote in grade 9, but I can open the text files just fine. They’re durable.
So, I wanted the new system to allow me to write in markdown, and render in html. Thankfully, there are lots of systems that can do this. One of the great benefits is that I can write markdown in any number of fantastic applications, from TextEdit, to BBEdit, to PHPStorm, to what I’m using right now — iA Writer.
Because I was a PHP developer for 15 years, I also wanted the system to be written in PHP, so that I can modify it if I want to. Lately I’ve been using Laravel, so I thought I’d give bonus points if the blogging system was written in Laravel.
Another requirement was that I wanted no PHP dependencies on the machine I’m writing on, because it could be my iPhone, which can’t run PHP. All of the markdown-to-html conversion should be done entirely on the server. I don’t want to transform it here, and send the transformed text to the server. That’s too much overhead for me.
I also wanted to be able to publish simply by saving the markdown file to Dropbox. Yep, that’s a thing you can do. That means there is NO admin panel for your website. There’s not even a login/password. You manage it through your Dropbox.
The final requirement, which I only came up with right near the end was “as simple as possible”. I figured, the less there is to go wrong, the more likely I am to actually blog instead of spending time working on my blog.
After a lot of googling, I narrowed the list of finalists to 3:
- Statamic - written in PHP using Laravel, it has a billion features, is super-slick, has great documentation (including how-to videos) and support, and costs $199 USD.
- Kirby - written in PHP, it has a billion features, is only slightly less slick looking, has great documentation and support, and costs $17 USD.
- SecondCrack - written in PHP, not slick at all, has next to no documentation, zero support, is a bit buggy, and costs $0 USD.
Despite all its flaws, I chose SecondCrack. It really is just the simplest system. Here’s my favourite section of its documentation:
Why doesn’t it have [feature]?
Because I didn’t think [feature] needed to be there. Comments: Use Disqus or Facebook comments. Or just go without comments. Do you really need them? Stats: Use Google Analytics or Mint. (Or both.) Widgets and dynamic page content: Use Javascript. Dynamic rendering for automatic mobile layouts, etc.: Use CSS.
What’s so good about that? It doesn’t try to be everything to everyone. That means it’s a much simpler system. It also encourages using the right tool for the job.
You know what I hate about React.js? That it smooshes javascript, css, and html into a single thing. It makes me feel gross just talking about it. SecondCrack doesn’t do that, and I love it for it.
Unfortunately, there was no easy way to get your content out of Wordpress and into SecondCrack, so I had to make one: wp2secondcrack converter.
All you do is export your Wordpress to XML (that’s built-in to wordpress), and then run my converter on it, and you’ll have a complete set of markdown files; one for each blog post or page. Then you just put them in your secondcrack “posts” folder, and that’s it.
Anyway, yay. The blog is back!
P.S. - yes, it’s super-ugly right now. I’ll fix that soon enough.