Searching for a Postalicious replacement

Hey WordPress plugin people: Does anyone know of a working and supported plugin that does what Postalicious used to?

Ideally, I’d like to return to something I used to be able to do: post a daily “here’s what I found interesting today” roundup post. Way back when, I used del.icio.us to save links; those would get picked up by Postalicious, and once a day, they’d be aggregated into a single post (example from 2009 here).

Is there a similar plugin, or other known way (some sort of IFTTT integration, maybe?) to do such a thing? Conceptually, it seems rather simple, but I don’t know what bookmarking services have open APIs or other ways to hook in, and I don’t have the coding chops to create my own.

Updating My Computing History

Back in 2003, Adam Kalsey started a project he called Newly Digital — a collection of stories about when people first discovered computers, got online, and so on.

At that time, I updated and reposted my “Back in the Day” post from roughly a year before, to contribute to the project.

And now, after looking back at my “Newly Digital” post while once again updating the tail end of it with my current computers, I noticed more and more links succumbing to link rot, so I figured I’d give it another refresh. So here we go!


I was born in 1973 — certainly before home computers were a thing, but at a point where computers were starting to make their way into the school system.

The first computers I can remember playing with were the Apple IIs that my elementary school had. Before long our friends the Burns had one of their own that I got to play with, while my babysitter picked up a Commodore 64 that gave me my first look at the BASIC programming language.

Eventually, my family got our first computer — an Osborne 1. This was a beast of a machine. 64k of RAM, a Z-80 CPU, two 5.25″ floppy drives, and a 5″ monochrome 80×40 greenscreen, all packed into a case the size of a suitcase that weighed about 30 pounds. The keyboard could be snapped up against the face of the computer, allowing it to be carried around — one of the first, if not the very first, “portable” computers! It ran CP/M (a precursor to MS-DOS) — aside from fiddling with the machines at school or at my friends’ houses, my first real command-line experience! There was a 300 baud modem available for the Osborne 1 computer, however my family didn’t get one until years later (when those of our friends who had also had Osborne 1 computers were giving them to us as they upgraded, allowing me to cannibalize parts from two machines to keep one running).

I first got online sometime in 1990, with the first computer I bought myself — an Apple Macintosh Classic with no hard drive (the computer booted System 6.0.7 off one 3.5″ floppy, and I kept MS Word 4 on a second floppy, along with all the papers I typed that year), 1 Mb of RAM — and a 2400 baud modem. Suddenly an entire new world opened up to me. After a brief but nearly disasterous flirtation with America Online at a time when the only way to dial in to AOL from Anchorage, Alaska was to call long distance, I discovered the more affordable world of local BBS’s (Bulletin Board Systems).

I spent many hours over the next few years exploring the BBS’s around Anchorage, from Ak Mac (where most of my time was devoted) to Forest Through the Trees, Roaring Lion, and many others that I can’t remember the names of at the moment. I found some of my first online friends, many of whom I conversed with for months without ever meeting — and many that I never did meet. Most of the Mac-based boards used the Hermes BBS software, which shared its look and feel with whatever the most popular PC-based software was, so virtually all the boards acted the same, allowing me to quickly move from one to the other. After springing the $300 for an external 100Mb hard drive (how would I ever fill up all that space?!?) I downloaded my first ‘warez’ (bootlegged software), at least one of which had a trojan horse that wiped out about half my hard drive. I discovered the joys — and occasional horrors — of free pornography. I found amazing amounts of shareware and freeware, some useful, some useless. It was all amazing, fun, and so much more than I’d found before. In short — I was hooked.

After I graduated from high school in 1991, I had a short-lived stint attending the University of Alaska, Anchorage. One of the perks of being a student was an e-mail account on the university’s VAX computer system. In order to access your e-mail, you could either use one of the computers in the university’s computer lab, or you could dial into their system via modem. Logging in either way gave you access to your shell account, at which point you could use the pine e-mail program. However, I soon learned that the university’s computer was linked to other computers via the still-growing Internet!

And here I’d thought BBS’s were a new world — this Internet thing was even better! Suddenly I was diving into ftp prompts and pulling files to my computer from computers across the globe. Usenet readers introduced me to BBS-style discussions with people chiming in from all over the world, instead of just all over town. I could jump into Internet Relay Chat (IRC) and have real-time conversations with people in other countries. The gopher protocol was essentially a precursor to the World Wide Web: text pages linked to each other by subject. I was fascinated — more information than I had dreamed of was at my fingertips.

By the time I left UAA and lost my student account, the ‘net had started to show up on the radar of public consciousness, but still at a very low level — it was still fairly limited to the ‘geek set.’ That was enough, however, to have convinced some of the local BBS systems to set up primitive (but state of the art at the time) internet links: once a day, generally at some early hour, they would dial into a special node on the ‘net and download a certain set of information, which the BBS users could then access locally. It was slow, time-delayed, and somewhat kludgy, but it worked, and it allowed us to have working e-mail addresses. It wasn’t what I’d had while at the university, but it was certainly better than nothing.

Within a few years, though, the ‘net suddenly exploded across public consciousness with the advent and popularization of the World Wide Web. Suddenly, you didn’t have to do everything on the ‘net through a command line — first using NCSA Mosaic, and later that upstart Netscape Navigator, you could point and click your way through all that information — and some of the pages even had graphics on them! It was simplistic by today’s standards, but at the time it was revolutionary, and I joined in that revolution sometime in 1995 with my first homepage.

Since then, there’s been no turning back. Over the years, my computers have been upgraded from that little Mac Classic to:

And, of course, this blog has been running for more than 20 years. It started as simple hand-coded update posts on my early personal pages in 1996. In late 2000 I found a script called NewsPro that was essentially a very early content management system (CMS), and then just over a year later I moved to MovableType, which was only about three months old at the time. MovableType started strong but eventually pivoted to focus on the enterprise space rather than home users, and in 2006 I moved over to WordPress.

WordPress has lasted by far the longest, though I’ve been getting less enamored with it for a while. But realistically, after this long, I’m unlikely to put the effort into finding something else — and as far as I know, the blogging CMS I really want hasn’t yet been written.

Some years my blog gets more posts than others — the rise of social media sites like Facebook and Twitter certainly pulled me away for a while — but I’ve never let it fade away completely, and I certainly don’t intend to let it die. I may not always be rambling away here a lot (though the demise of Twitter has certainly spurred me to be more active here once more), but I’m unlikely to ever entirely disappear.

Blogging CMS Wishlist

High on my reasons why I wish I had the knowledge (or the time and energy to gain the knowledge) to code my own software: As far as I can tell, nobody has yet written the CMS I want to use for blogging.

Basically, what I want is early-2000s MovableType, only with some modern updates. I’ve long missed many of the tweaks and customizations that I could manage with MovableType that I can’t do on WordPress.

Pie-in-the-sky featureset:

  • Self-hostable or installable on a hosted server (Dreamhost, etc.)
  • Micropub compatible so I can use MarsEdit or other such third-party editors
  • ActivityPub/IndieWeb compatible for federation (at least outbound, ideally bidirectional so that federated replies could be appended as “comments”)
  • Generates a static website instead of building every page when its called
  • Only regenerates necessary pages when updates are published, full-site rebuilds available on demand
  • Some sort of templating “building blocks” system for assembling different pages, posts, or sections thereof
  • Basic templates that are fully standards-compliant and accessible (HTML5, ARIA when/if necessary (since static pages shouldn’t have much dynamic content), etc.)
  • Templates should also be microblogging compatible
    • Example: Titles are optional, and shouldn’t be the only item used for permalinks to any given post, something that bugs me about my current blog template but I haven’t figured out how to fix yet
  • Markdown for writing and storing posts
  • The ability to generate multiple versions of posts/pages on rebuild
    • Example: Output both .html and .md versions of a blog post, so a “view source” link could be included in the post template; readers could then easily click through to view the Markdown version
  • Import posts exported from existing common blogging or microblogging systems (WordPress and Twitter, in my particular case)

Things I don’t want or care about:

  • Fancy drag-and drop “block” editors like WordPress’s Gutenberg
  • Comments (beyond pingbacks/trackbacks/federated responses)
  • Having to do everything on one machine (edit locally and upload)

I’m sure there are plenty of other things that I could put in the wishlist or the “no thanks” list, but those are the first ones to come to mind. Every time I’ve done a survey of static site generators, they consistently fail one or more of the above.

Honestly, I think I could live without much of the above, if I could find a static site generator that would allow me to blog and manage posts and pages from anywhere (my desktop, my laptop, my iPhone, my iPad, etc.) through the Micropub API; logging into a web interface of some sort should be possible if necessary but not required for general day-to-day post publishing.

Oh, and it needs to be installed and managed by someone who has a higher-than-average knowledge of computing and tech geekery, but doesn’t do this stuff for a living. Someone who gets annoyed when they call tech support and have to start with the “is it plugged in?” level of questioning, but who also gets annoyed when software assumes that you’ve been immersed in this kind of stuff for decades. There doesn’t seem to be much out there other than WordPress that does a good job of bridging between “it just works” and “I eat, drink, and breathe code in all my waking and sleeping hours” levels of capability. I don’t mind, and even enjoy, poking at the guts of things when I have the time and energy, but I don’t want to be required to do a week of research to figure out what the terms in the “how to install” documentation mean.

So — I don’t suppose that anyone knows of my magical unicorn blogging software actually existing anywhere?

Cross-posting from WordPress to Mastodon

I’ve finally got WordPress to Mastodon cross-posting working the way I want: automatically, whether I’m posting through the WordPress web interface or through a desktop or mobile client like MarsEdit or the WordPress mobile app, and with the format that I want:

Title: Excerpt (#tags)

Full post on Eclecticism: URL

I’d been using the Autopost to Mastodon plugin, which works great, and I can recommend it — as long as you only or primarily post using the WordPress web interface.

However, the plug-in is only triggered when publishing a post through the WordPress web interface. Any time I posted through a client, nothing went to Mastodon. So I either had to go into the web interface and manually trigger an update to the post with the “Send to Mastodon” option checked, or just skip out on using anything but the web interface at all, which I’m not a fan of (especially on mobile).

I’d asked the plug-in author, and they’ve said that this is just the way it is.

So I put out a call for help on Mastodon, and got some kind tips from Elephantidae, who pointed out the Share on Mastodon plugin. This looked promising, as its documentation specifically mentions being able to configure it to work with externally created posts. However, looking through the docs made it clear that most of this plugin’s configuration, including changing the format of the text it sends to Mastodon, is done through adding and tweaking PHP functions…and as with most of my coding knowledge, my PHP knowledge is roughly at the “I can usually get a vauge idea of what it’s doing when I read the code, but actually creating something is a whole different ballgame” territory. Plus, dumping PHP code into my theme’s files risks losing those changes the next time the theme files are updated.

Retaining the code through theme updates can be managed through creating a site-specific plugin, however — a handy trick which, somewhat amusingly, I’d never had exactly the right combination of “I want to do this” and “how do I do it” in the past to discover until now.

So, after a bit of fumbling around with the Share on Mastodon plugin documentation and figuring out the right PHP and WordPress function calls, here’s what I’ve ended up adding to my site-specific plugin:

/* Tweaks for the Share on Mastodon plugin */

/* Customize sharing text */

add_filter( 'share_on_mastodon_status', function( $status, $post ) {
  $tags = get_the_tags( $post->ID );

  $status = get_the_title( $post ) . ": " . get_the_excerpt( $post );

  if ( $tags ) {
    $status .= " (";

    foreach ( $tags as $tag ) {
        $status .= '#' . preg_replace( '/\s/', '', $tag->name ) . ' ';
        }

    $status = trim( $status );  
    $status .= ")";
    }

  $status .= "\n\nFull post on Eclecticism: " . get_permalink( $post );
  return html_entity_decode( $status );
  return $status;
}, 10, 2 );

/* Share if sent through XML-RPC */

add_filter ('share_on_mastodon_enabled', '__return_true');

/* End Share on Mastodon tweaks */

And after a few tests to fine-tune everything, it all seems to work just the way I wanted. Success!

(Also, re-reading through this, I’ve realized that since I like to give the background of why and how I stumble my way through things, I end up writing posts that are basically a slightly geekier version of the “stop telling me about your childhood vacations to Europe and just post the damn recipe!” posts that are commonly mocked. And I don’t even have ad blocks all over my site! At least I’m not making you click through several slideshow pages of inane chatter before I get to the good stuff. My inane chatter is easy to scroll through.)

In Search of a MarsEdit Equivalent for iOS

A question for macOS WordPress bloggers who use Red Sweater Software’s excellent MarsEdit: What’s your go-to mobile iOS blogging tool?

MarsEdit is a great example of a “do one thing and do it really well” piece of software, and I’ve yet to find anything equivalent for mobile blogging. I just want exactly what MarsEdit gives me: A list of my most recent posts and pages, a solid plain-text Markdown editor, and access to all the standard WordPress fields and features.

Every other editor I’ve tried either doesn’t do one or more of those things or is otherwise not quite right in some way. Ulysses was the closest and I tried it for a while, but while it’s a great editor, it doesn’t pull a list of posts and pages from the blog, just works with whatever’s local or in its own cloud sync or Dropbox or whatever, and last time I used it, had a bug where alt text wasn’t getting applied to images correctly.

(The WordPress native app drives me up the wall. I don’t want block editing. I want text and Markdown.)

Really, what I want is an iOS version of MarsEdit. But failing that: any recommendations?

Twenty Years of Blogging

Twenty years ago today, I became a blogger.

Admittedly, the date could be argued a bit, as I’d had my own website since 1996, and even back then had been in the habit of making short, dated updates that were usually site-related, but sometimes just personal ramblings. And I didn’t come across the term ‘blog’ until a few months later in February of 2001.

But on November 25, 2000, I moved from hand-coding updates into a static HTML page to using a script called NewsPro to manage and automate posting updates. So that’s what I’ve been using as my “official” blogging start date.

In the past 20 years, my posting frequency has waxed and waned (waning more often than waxing, admittedly) but has never disappeared altogether. I’ve moved platforms from self-hosted (first NewsPro, then MovableType) to hosted (TypePad) back to self-hosted (WordPress). Sometimes self-hosted meant on a server in my apartment; these days I use DreamHost as my hosting provider, but I still use a manual installation of WordPress rather than using the WordPress.com hosted service. I don’t tinker as much as I used to, but it’s still nice to get into the nuts and bolts from time to time.

Most of the time I’ve been doing this, I’ve just been another one of the many random voices on the ‘net, never one of the Big Names. The closest I ever came to breaking out of that…well, you can look back if you want, but I’m just glad that it’s in my past. Maybe I’ll have more to say in another three years on that twentieth anniversary, maybe not. Generally, I’m fine with just tossing my occasional thoughts on Apple, Star Trek, politics, and whatever else pops into my mind into the electronic void to see if anyone picks up on it.

If you’ve been stopping by and checking out my ramblings from time to time over the years — thanks! If you’re a new visitor, thanks to you too, especially if you’ve made it this far through this post. You might want to check out this somewhat random collection of notable posts, or just see what was posted on this day in the past (which will work for whatever day you read this).

And, of course, there’s my alter-ego DJ Wüdi side project to be promoted: A weekly (except when it isn’t) Twitch broadcast where I play an eclectic mix of music (mostly focused on alternative dance genres like goth, industrial, EBM, and various flavors of electronica, but with a fair amount of other stuff tossed in as I feel like it). Tune in to Difficult Listening Hour on Saturdays at 1 p.m. Pacific time, or cue up my past archives (plus more mix sessions) on my MixCloud page.

Twenty years down — and hopefully, twenty (and more) yet to come!

Domain Switch

In a project that didn’t take nearly as long as I thought it would, I’ve just moved my personal site from its former home of www.michaelhanscom.com to its new home here at michaelhans.com.

The reason for the move is simple: The “…com.com” repetition at the end of the old URL formed by the end of my last name and the .com top-level domain suffix has always bugged me a little bit, and so the new URL is simpler and more clever.

It has been pointed out to me that this new setup is likely somewhat less optimal in terms of SEO (Search Engine Optimization), as “the SEO power of [thing].com is probably less than that of [first-part-of-thing].[second-part-of-thing]”. However, 1) I’ve had my time at the top of the search results, and I’m okay with continuing to drop down in the rankings a bit, and 2) I’ve stopped running ads or paying any real attention to my statistics/site visits/rankings, so SEO just isn’t at the top of my concerns right now. I’m not going to ignore that entirely, but it’s simply not a major concern.

At this point, the move should be complete: All content has been transferred over to the new domain (and I’d like to take a moment to plug the WordPress plugin Duplicator, which made moving my blog much easier than I thought it would be; it wrapped everything up in an archive, I moved the archive to the new location, ran the installer, and that was it–it even scanned the database to replace any links to www.michaelhanscom.com inside blog posts with links to michaelhans.com, which was one of the tasks I was dreading), the .htaccess redirects are in place and working properly, and I’ve adjusted all external connections so that they all point to the right place.

All in all, a rather surprisingly uneventful move.

Website (not blogging) Ennui

I’m not really happy with my website — I’m tired of WordPress, and ‘view source’ just makes me cringe at all the junk, cruft, and JavaScript bogging down what could and should be relatively simple, clean, HTML/CSS — but I don’t know how to reinvigorate it in a way I like.

I don’t want to entirely stop blogging, nor do I want to lose all the stuff that’s here already, or break existing URLs.

I’ve been looking into various flat-file or static CMS backends, and though grav is the one that most caught my eye, it (as far as I can tell) would mean losing the ability to post through micro.blog or any other third-party app that uses the MetaWeblog API, which would make spur-of-the-moment posts more difficult.

Even if I did resign myself to only adding posts through the admin UI (or by FTPing in to manually build the folder/file structure that grav uses), if I figured out how to import all my past entries from WordPress (this might do it), I haven’t been able to find a way to tweak the URL structure, which means I’d probably have to figure out how to generate a huge .htaccess file to handle the 5,170 or so redirects so I didn’t break any existing URLs. I may not get linked to a lot, but it happens occasionally, and I’d prefer not to 404 those.

(Plus, as I was playing with grav, I kept getting blank screens where I should have been getting post entry or edit screens, which…well, not sure if that’s a grav issue, a Safari browser issue, or some other issue, but it didn’t bode well.)

Other backends either looked too complex for my current needs/skills/available time (I just don’t have the time or impetus to try to learn Jekyll, which kept popping up), or didn’t fully support Markdown at all or enough, or had one or another thing that made them feel “not right” for me.

Really, what I’d kind of like to do is go back to hand-coding my site, so I have full control over the HTML/CSS (even if it looks like crap, it’ll look like my crap…so to speak), only to still be able to blog easily using micro.blog or Ulysses or other such tools. Not sure that’s really a possibility, though.

In the end, this isn’t much more than a bit of whinging and trying to figure out what exactly I’m looking for. But if anyone actually 1) reads this, and 2) has a magical solution for all my woes, I’d be happy to hear it!

Another attempt at revitalizing my blogging

For some time now, I’ve (mostly privately, sometimes “out loud” (which could mean either actually talking to people, or in online text ramblings)) been lamenting how rarely I’ve actually been posting to my blog. For the past years, various forms of social networking sites and applications — primarily Facebook and Twitter — have done a good job of monopolizing my online interactions.

It’s not all bad, really, as they’re great ways to keep in touch with friends, and I’m not making any sort of “quitting social media” declaration. But concentrating on those spaces has meant that this space, where I’ve been posting in one form or another for over two decades (seriously: my oldest “blog post” is dated December 29, 1995 and was posted back when I was still hand-coding; I have earlier posts entered into the blog, but they’re ports of old Usenet posts), hasn’t been getting much attention at all. And, as importantly, if not a bit more so, it means that virtually all of the writing and content creation I’ve done over these past years has been going to sites other than my own.

So going forward from here, I’m going to make a more concerted effort to make this blog the central, canonical repository of my online ramblings. I’ll still comment and get into discussions on Facebook and Twitter, but this is where all (well…most all…) content should appear first and will canonically reside, even as it’s mirrored elsewhere so that I’m not simply disappearing from those other spaces.

Here’s how I have things set up at the moment:

In brief (Twitter)

I’ve set up a micro.blog account, which is tied to both this blog and my Twitter accounts (I heard about micro.blog from a few places, including articles by Brent Simmons, Jean McDonald, and Charlie Sorrel). So now, when I have something quick and simple to say, it posts to my blog first as a post with no title, then picked up (via RSS) by micro.blog and piped to Twitter and Facebook.

Look here (links)

When I find interesting links, I’m posting them to my pinboard account — this is something I’ve been doing (off and on) for some time now, I’m just trying to be better about doing it consistently. If I want a saved link to post to Twitter or Facebook quickly, I give it either the .twitter or .fb tag respectively, which are picked up by IFTTT and piped to the correct site. Otherwise, the (apparently abandoned, but still quite functional) Postalicious WordPress plugin occasionally catches any recent links I’ve saved and creates a digest-style post for my blog.

Rambling on (blog posts)

If I have something more in-depth to say — like, oh, a few paragraphs on how I’m trying to start blogging regularly again, and brief explanations of the tools and services I’m using to start doing that — then those posts get written (in Markdown format, using Ulysses on either my Mac, iPhone, or iPad) and posted here. Not long after they show up here, micro.blog picks them up, creates a post that links back here, and then that goes to Twitter and Facebook.

It’s technically possible to just connect WordPress to Twitter and Facebook without using micro.blog as a middle step, but micro.blog is smarter about how it cross-posts than WordPress is alone. Without this step, every post would show up as a truncated excerpt and a link back to the blog; this way, that’s only the end result if a post is long enough to make that necessary, and shorter posts just appear to be “native” to whichever platform they’re seen on.

Will this system keep me going the way I hope it does? Only time will tell. But between Facebook’s Cambridge Analytica privacy mess and Twitter looking more and more like it’s going to be killing third-party clients soon, I’m hoping I have enough motivation to actually keep this going, rather than falling back into the ease and convenience of staying inside Facebook or Twitter’s ecosystems.

Linkdumps are Back

For quite a while in the past, I used the del.icio.us bookmarking service to save bookmarks, which were then automagically gathered and posted here as occasional “here’s what I found interesting recently” posts. Unfortunately, del.icio.us went through some changes a few years back, things fell over, I got distracted by other projects, and the whole thing fell apart.

I’ve been missing that aspect of my blog, though (along with the ability to quickly search through a list of bookmarks to find that thing I know I read a while back that I’d love to refer someone to while it’s on my mind), and have finally resurrected the system (with a few changes).

Rather than using the del.icio.us service again, I’m instead using Pinboard. It’s essentially the same thing that del.icio.us was “back in the day” — simple and fast saving of bookmarks, complete with a field for descriptions or excerpts, and tagging for categorization — with some extra niceties that either weren’t part of del.icio.us or that I just don’t remember, such as being able to designate particular links as “private”. Plus, there are a few iOS apps for easy mobile use of Pinboard, and after finding this review of a few, I’ve installed Pinner.

I’ve set up an IFTTT applet so that if I tag a link on Pinboard with the “.twitter” tag, that link will automatically get posted as a Tweet to my Twitter account for quick sharing that way.

Finally, I was quite happy to discover that Postalicious, the WordPress plugin I used to collect and post my del.icio.us links, still works (even though it hasn’t been updated in six years), and works fine with Pinboard.

So, as I find interesting stuff, I’ll toss links into Pinboard, and every so often (when there are at least five new links since the last time Postalicious checked), a Linkdump post will show up here on Eclecticism.

I’ve started off by tossing a few of the many Tumblr posts I’ve liked into Pinboard (both as a test of the new setup, and because there’s a lot of discussion on Tumblr that I’ve found and enjoyed over time, but which is nearly impossible to find again without something like Pinboard to keep track of them). More links will come as time goes by.

It’s not quite the same as if I were actually posting here as regularly as I used to (or that, ideally, I would like to), but at least it will get some movement here between my all-too-infrequent “real” posts.