Micro Matt

Micro thoughts and mini posts.

I'm not sure what planet marketers live on when they think it's okay to send multiple automated “follow-up” emails in a single week.

Is this just the gold standard they all learn and then fall in line with? Do they talk to people outside of commercial contexts, ever, in their lives? Do they understand what it means to be annoying? Or does that not matter if their robots get the sale sometimes?

I always respect hustle when I see it in real people; but never when it's coming through an automated “nurture” campaign, executed by computers and arriving fresh in my inbox at precisely 9am to waste my human time.

(This post was inspired by a follow-up email that arrived today, three months after their first email, which I never responded to. I can tell there's a human there — this is exactly how you get a response to your cold email.)

The hardest part of nonstop self-directed work is probably the extended periods of feeling like you're not “accomplishing” anything. When you're only doing small but necessary tasks, it's a slog with no conclusion and no end in sight.

I think this is why I sometimes switch to small, fun projects in my free time. When it's small and self-contained, you can “win” easily. And that feeling of accomplishment — any kind of accomplishment — bleeds back into the real work.

I realized this over the weekend, as I took some extended time to play video games. Like with small projects, in games you can first find some struggle, and then finality. Winning or losing is binary; it doesn't drag out for years as you wonder whether something is going to work out or you're doing the right thing with your life (for example).

Programming is the same, I suppose — that tight feedback loop of good or bad as the computer tells you whether you typed the instructions correctly. But once you've mastered programming, you move away from this binary world with satisfying feedback to the nebulous world of Am I building the right thing? or Does this solve a business need — and what is that need, anyway?

Sometimes, an occupation that requires living with endless uncertainty needs a tiny bit of certainty interjected, just to remember what it feels like — as fleeting as it may be.

#work #projects #videoGames #transience

I hold an intense hate for advertising in my bones — those loud, boisterous, self-important commercial messages plastered on every surface and glowing screen. They stalk me around town and on my pocket-ma-tron, asking for a dollar in exchange for some piece of crap I never wanted. Buy now, subscribe, get 10% off — if the marketers had their way, they'd abolish all independent thought among the masses they're shouting to.

It is probably the over-promises advertising makes that leads me to despise it. If there was less of it, I might like it more. If it was more humble, I might make friends with it. If it brought me value instead of coercing me to click, buy, subscribe, I might do just that.

I clicked one ad recently, and didn't regret it. It was on social media, among an effluent of bad ads. It was for a new album from Fleet Foxes. I had “liked” their page, and so I was getting this sponsored post. I left to buy the album.

This is the only kind of ad I ever want to see in my life. (The last ad I clicked was the same.)

What if we had “ads” in the non-commercial social media space, like the fediverse? Except it wouldn't be a “sponsored” post, but an “important” post. Maybe you could pin a single “important” post to your profile / blog / whatever. Then in your feed, you would see one of these “important” posts, only from people you follow, at regular intervals as you scroll — say, every 10 or 20 posts on a microblogging platform like Mastodon; maybe every 5 posts on your long-form / RSS feed reader.

They would be detached from the chronological timeline; you would only see each post once. Companies could pin a post they want to promote, and individuals could make sure followers see that insightful thing they said. It introduces an algorithm to the chronological feed, but one you can still reason about and understand. It's still non-commercial by nature. It doesn't infringe on your privacy. Would be pretty neat to see.

One nice thing about having multiple blogs on Write.as is that I can start writing a post for this microblog, and if it turns into something more that I want to share on my main blog, I can just switch the blog it's going to publish to. No need to switch websites or log in somewhere else. This happened with my last post, Social Suburbia, over the weekend.

Thinking this morning about how I could expand the text-pic project to generate meta images for any WriteFreely blog, so sharing the blog to social media wouldn't include the standard WriteFreely / Write.as logo anymore.

I'm thinking it'd include the blog title, description, and maybe instance name. We'd generate and cache this image whenever a collection (blog) is created or updated. In WriteFreely, it'd also update when the instance name changes.

When we launched Write.as Pro, we didn't have a “free trial” option. The assumption was that enough of the platform was free that users could get a pretty good idea of whether or not the purchase would be worth it. Then last January, we added the option for a free 2-week trial. Here's a few things learned from it:

One of my major concerns was that people would use the free trial to spam Read Write.as, which is kept spam-free largely because of the requirement to pay something. Luckily, only about 2 or 3 spammers actually did this in the past year. Their presence was obvious, and we quickly revoked their publishing access once we saw them.

A free trial made many conversations much easier. If someone was curious about a Pro feature, instead of explaining it all, we could just give the overview and say, “go try it for free.” Great timesaver. Also:

  • People still go straight to purchasing Pro, without the trial
  • Very few (if any) requests to extend the trial period
  • No credit card required for the trial, and of course no complaints about that

Stats for just over a year of free trials:

  • Roughly 3,400 trials started (~4% of new user registrations)
  • Around 230 converted to paid (7%)
  • Of those that converted, 10% bought our 5-year plan

I've been putting most of our Write.as tutorials and other videos on our PeerTube instance. But today I added some missing ones to our YouTube channel, too. I'm spending a bit more time on marketing and other helpful materials as a few long-running projects for the team start to wind down. So I'm aiming to start sharing that more.

Made more progress on my weekend project, a tool for generating images like this for social media:

Right now, it's an open source command-line tool written in Go, with a few configurable options. You can find the AGPL-licensed code on GitHub and start using it now!

Next, I hope to add a web-based option for generating images. That'll probably involve some basic server configuration (e.g. only generate graphics with a certain WriteFreely instance name), some image caching to save resources, then a simple API and a plain HTML page that hooks up to it.

I'll first build this for our use case, which is showcasing photos to share on social media pages like Instagram. For that, I need to generate images on mobile and be able to quickly copy over caption text. Then, we'll make it more widely useful to help people spread their writing.

For now, my real day has started, and I'm back to work on features and fixes for Write.as.

Playing around with a tool for generating nice-looking images from text this morning. Started off using an HTML5 Canvas, and quickly hit resistance. Got a complete Go-based prototype working in about 2.5 hours, thanks to this tutorial.

This would replace my Bash / ImageMagick-based script I previously used to generate images like those on our Instagram page. I'd like to convert this into a web-based tool and make it available for anyone to create this kind of content — perhaps even automatically from a Write.as / #WriteFreely post.

For now, I'm off to the woods to go camping. Will get back to work tomorrow afternoon.

Excited today, as my new computer arrives.

I haven't bought a brand new machine in 8 years. Today I work on two devices, a System76 laptop from 2012 (bought new at the time) and a circa-2010 ThinkPad X201 (bought used; this is my second one). The ThinkPad is my portable device. It gets the job done, despite its age and small size. The System76 machine stays on my desk at home, basically as a desktop computer. But it's started to show its age, and I'm consistently hitting the limits of its 8GB of memory. I figured it was time to get something more modern for whenever I'm working in my home office.

I'll be keeping the ThinkPad for working away from my desk. But I'm replacing my “desktop” machine with a System76 Thelio, with 64GB of memory, many TB of storage, and new everything else. I haven't had a desktop computer since I was probably 16 years old. Now I'm looking forward to creating a nice, permanent setup that helps me get more work done.

Enter your email to subscribe to updates.