Reducing friction to hopefully blog more

March 12, 2023

In a Mastodon conversation with Lucas I mentioned that the workflow to publish to this Jekyll blog is one of the reasons I almost never publish on my blog. It’s either that, or an excuse, and since I’m being honest, the more I think about it, the more I believe it’s more of the latter…

But still:

  1. Open a text editor;
  2. Add Jekyll’s front matter;
  3. Actually write the blog post;
  4. Save the file with the expected file name structure;
  5. bundle exec jekyll serve locally to see if it renders okay;
  6. Catch a few typos;
  7. Repeat 5;
  8. Commit and push;
  9. Load the published post to double-check.

Is not an insignificant number of steps, and I’m lucky that I did place my blog folder on Dropbox from the beginning, so I at least don’t need to move files around if I’m on my phone or iPad., mentioned by Lucas, immediately tempted me: save a file or an image into a Dropbox folder and have it immediately, automatically posted on a blog. A 2-steps process! At 4$ per month, not expensive either. But I know myself and I’d soon be fighting with the theme or discover some limitations, and I’d certainly want to migrate the current 118 posts, which would lead to building some automations… things would spiral a bit out of control, just like when people instead of completing tasks test 8 different task managers. I really don’t have the time and mental energy for that.

So I wondered if I could automate some of the steps of the current workflow, not really for long form posts, but to reduce friction for micro-blogging with the existing infrastructure of my website. If it’s a couple sentences on the go, maybe on my phone, I could certainly skip the local preview, but the commit and push step would remain annoying, even with Working Copy.

Enter gitwatch and a couple Drafts actions, and less than an hour later I feel I took away a decent part of the friction (excuse) to short form frequent blogging:

  1. A simple Drafts action inserts Jekyll’s front matter at the beginning of a draft (I’ll probably set a Keyboard Maestro text expansion as well, but I started with Drafts because this action will be available on every device);

  2. When I’m done writing a Post to blog Drafts action prompts for the slugified draft name, prepends the date in the format I use and saves it into the _posts folder on Dropbox, archiving the draft with the proper tags;

  3. gitwatch on my M1 Air monitors my _posts folder and automatically commits and push.

Perfect? No. Faster? Yup! Possible Improvements going forward:

  • Move gitwatch on my Mac VM running on Proxmox, instead of my Air, so it really runs all the time;
  • If I can find a way to pipe aicommits commit messages to gitwatch, I’d very much prefer those to the current “Scripted auto-commit on change (%DATE%) by” format… but I can live with it if achieving that would turn this quick excursion into “a whole project”;
  • Find a way to quickly post photos, no text, because the way to publish images to a blog just by dragging a file into a folder really looked glorious.

This has been a fun, self-contained Sunday morning project. Now we’ll see if I’ll really blog more…

P.S. ça va sans dire, this blog post has been posted directly from Drafts on my iPad and has been auto-committed and published! 🤓

A few updates, later in the same Sunday:

  1. I’ve added link posts and photo entries to this site. Adding photos is interesting, as it involves Shortcuts saving the resized JPG into a folder watched by Hazel, which then renames and moves it in the Jekyll subfolder and freaking generates the markdown page as well directly in the Shell script. Just like for the Drafts automation this morning, commit and push are then automatic, courtesy of gitwatch.

  2. I’ve posted both Drafts actions to the Directory:
  3. I’d still like to improve a few things:
    • Actually having a caption for the photo posts based on the file name, which therefore should be specified in the Shortcut instead of being autogenerated by Hazel;
    • Maybe have separate RSS feeds, because currently everything (normal posts, link posts, photos) goes into
    • Some mechanism for automatic cross-posting to Mastodon. All things that can wait until I actually prove to myself that I’ll blog more.

Blog tags and other website improvements

January 6, 2021

Since forever, most posts on this blog have been tagged, but I never actually exposed those tags.

This changed today: now all my posts show their tag at the bottom, and there’s a page listing all tags for quick access to categories.

A big shoutout goes to this post from Long Qian that transformed a possibly complex task, adding tags to a Jekyll site hosted on GitHub Pages, into a breeze.

While I was working on my site, I also fixed an issue that prevented banner images from being shown inside the post pages (they only appeared in the main blog page 😬).

I challenged myself to blog more this year; subscribe to my RSS feed to see if I succeed!

Goodbye Google Analytics, you won't be missed

December 10, 2020

In November 2018 I added Google Analytics to gain some aggregated insights about the traffic on this website; I did disable everything intrusive I could (no gender, age, etc. reports for me), but never actually loved the idea of having Google cookies associated with something I do.

While I’ve always been pretty straighforward with the cookie-consent message (This website uses Google Analytics. I’m only interested in aggregated traffic informations and on my side nothing creepy will derive from that knowledge. If you don’t consent to cookies, please leave this website and, possibly, the whole Internet, or Google (ironic, uh?) a way to block cookies.) and sarcastic with the Got it, thanks EU! button to dismiss it, I’m very happy to announce that this site is now Google, cookie, and cookie-consent free.

Following the lead of my friend Chris, I’ve just switched to CloudFlare Analytics, which only provides aggregated, user-first and privacy focused anonymous informations; I always only cared about page views, which is basically most of what CloudFlare is providing and now it’s all I got from a company that actually has a good track record and no involvement in advertising (they also give you device groups and countries of origin, but I find that of no interest).

Bonus points, Safari’s “shield” is now happy because my website does not contact any tracker.

I’ve also just requested the deletion of my Google Analytics “property”, which will be completed in 35 days, without even looking at it one last time or downloading it. Which tells you a lot about how much I really care about those data…

If you have a website, I encourage you to look into CloudFlare’s solution, the blog post I linked above is a good starting point, as it describes how they accomplish analytics without cookies or fingerprinting.

Website milestone

December 17, 2018

I feel like today this website reached a milestone: finally, all product pages are online, albeit some descriptions could be improved and I could add more screenshots of the apps.

Jekyll is proving a really good engine, very easy to extend, and I really love the theme I chose (though I still need to figure out how to change the CSS for a specific product page); working with markdown files and Git for version control is a blessing in flexibility and is truly making me want to post more.

I hope you like my website too, and please let me know if you find anything that’s broken (I’m not aware of bugs, but that never stopped them from existing).

New RSS feed

November 12, 2018

Squarespace gave me a parting gift: I have no idea how to adopt the same format I had there for the RSS feed.

So, it’s time to move on: my new RSS feed is online at

I apologize for the inconvenience, and hope you’ll take the time to subscribe and keep reading my occasional updates and ramblings.

New website (still under construction)

November 11, 2018

This is a post I should have written about two months ago, and I kept postponing because life, work, Xcode and Milla…

As you might have noticed, this website has looked a bit different for a while now, the reason being I decided to stop spending too much money on Squarespace, and went with a GitHub + Jekyll free solution I’m liking a lot (thanks for the inspiration, Rob!). I especially love the theme I picked, Forty by HTML5 converted for Jekyll by Andrew Banchich, because the home page now looks like a showcase for all my apps.

From a technical standpoint, the nicest thing about this change is the ability to write a markdown post on any device, commit it and have it appear on this blog. My hope is to write a bit more, and I must admit it is pretty nice to seat here on the couch, near the fire, typing on the first gen Smart Keyboard I never get to use; I still need to figure out my software setup (currently Drafts 4 saving to Dropbox), though, and inexpensive writing apps / GIT clients suggestions are very much appreciated!

As for the contents, I have to review and publish the product pages for most of my apps, so there’s still work to do, but putting a revised website online for two months without spending a word about it felt weird… I hope to remove all the ‘under construction’ placeholders immediately after the release of a new app I’m working on, PhotosUpload. More details about that ASAP but, shocker, be advised it’s a niche product…

There’s also a relatively bad thing I have to write about: in the migration, I broke the RSS feed and haven’t found the time to repair it yet, so probably I’m writing this just for myself. There’s actually a chance that the RSS URL will change, so I risk losing the few subscribers I had and write everything just for myself going forward.

Please, let me know if you notice anything not working and, if you don’t hate the content, please keep an eye open for new posts until I restore the RSS feed. Thank you!

Where am I?

In sunny Italy ☀️ 🇮🇹