Things I Have Written

Taking it to Eleventy

Hi. You may remember me from such hits as Drafts, Shortcuts, and Scriptable and Drafts, Shortcuts, Scriptable, and Working Copy – A Workflow Story. Or you may not, because I haven’t written anything here in months.

I’m not dead yet. Just busy.

I moved the Friends With Beer podcast to my own Linode server, and it needed a new website. I could have just chopped up the Hugo theme that Vic and I were working on, but I can’t lie – I hate programming in Hugo. It’s got a Yoda-like syntax that I don’t understand the need for, or the appeal of. At first I thought Go itself was just that stupid, but I don’t think it is. I think the Go templating engine that Hugo uses is responsible for the weird syntax, and I don’t really understand why it has to be that way. …

(Read More)

Some Updates – Drafts, Shortcuts, Scriptable, and Working Copy – A Workflow Story, Part 4

In this series:

I know I owe you a deep dive into my actual blog post and podcast episode publishing shortcuts now, but first I want to address an update to the image handling portion of my Drafts workflow that I talked about in Part 2 of this series.

At the time, Shortcuts in the iPadOS 15 beta had an issue in which the newly added ability to access iCloud directories outside the Shortcuts folder simply didn’t work. As a result, for shortcuts that needed access to the Drafts iCloud folder, I used an inline Scriptable JavaScript action which worked great thanks to Scriptable’s folder and file bookmark feature. …

(Read More)

Drafts, Shortcuts, Scriptable, and Working Copy – A Workflow Story, Part 3

In this series:

When I titled this series Drafts, Shortcuts, and Scriptable – A Workflow Story, I made a major faux pas by omitting an incredibly key piece of my blog post publishing puzzle, and that’s the incredible app Working Copy from Anders Borum. Maybe it’s because I’m stupid and simply forgot to credit the guy who created one of my most indispensable pieces of software, or maybe it’s because while Working Copy is indeed part of my workflow story, you could also title anything I write about it a love story as well, because I truly love that app. Anders is a man who really gets the iPad, and he’s one of the few still making apps for getting real programming-related work done on the iPad.

Not …

(Read More)

Drafts, Shortcuts, and Scriptable – A Workflow Story, Part 2

In this series:

Now that you know my requirements for handling images in my Drafts-centric workflow, it’s time to let you in on a little secret: despite the fact that Drafts has incredible JavaScript and automation support, I use a shortcut called Draft Post Photo to choose my images and generate the specific markdown links that I want. The reason is pretty simple: I want to choose images from my iCloud Photo Library, and Drafts can’t do that. If I want to rely solely on a Drafts script, I would need to manually move images around, and I don’t want to do that.

So a shortcut it is.

I call the shortcut from a Drafts action though. This way, I can be in my draft with my cursor located where I want the image inserted, run the Insert Images action, which runs a shortcut that lets me choose the images and creates the markdown links for them, and returns the links on the clipboard. …

(Read More)

Drafts, Shortcuts, and Scriptable – A Workflow Story, Part 1

Imagine me, happily tapping out a remarkably average blog post in Drafts on my iPad Pro. This takes zero imagination for me, since that’s what I’m actually doing right this second. Verbose as I already am, I could really tally up the word count by throwing in a photo or two (they’re worth a 1000 words each, I hear). Inserting images into blog posts is pretty routine fare, and has been for decades. It’s not the internet’s fault that I’ve decided to never use Wordpress again or that I’m blogging in a plain text markdown editor on an iPad Pro rather than into a web interface with a photo upload button.

When I used Ulysses to write blog posts in, I could insert images directly from the Photos library using the attachment tool, and the photos would be embedded into the document. …

(Read More)

iPadOS 15 Initial Impressions

I watched yesterday’s WWDC 2021 Keynote while spinning the 44 lb flywheel on my spin bike, so I was not 100% focused on Federighi and company. I also made the mistake of having my Apple Event Twitter list and the Six Colors slack open on my iPad on the bike’s tablet holder, which further diluted my attention and just made me grumpy at people whining about their favorite hobby horses. I get grumpy at online interactions when I’m working out (or just working), which is why I usually try to avoid them. But hey, WWDC!

Anyway, my low expectations for Apple to deliver on my hopes for iPadOS combined with my body’s preoccupation with exercise meant that I didn’t do a lot of serious reflecting on what Apple showed for iPadOS 15 while watching it. I just reacted, with great joy. …

(Read More)

The System of Writing

Sometimes when I take huge breaks from writing anything here, it’s just because life has gotten in the way and my lack of writing discipline equals an inability to overcome it and put in the work anyway. But sometimes it’s because I’m overhauling my entire writing workflow. That is in fact the reason I’ve been AWOL for the past couple of months. Prior to that, it was just personal failure.

I may not be the most prodigious writer, but I still love to have a system that works and that I can tune to my heart’s content. I generally do most of my writing on my iPad Pro which informs my choices in terms of editors and automation tools for publishing. My websites are static sites, compiled with Hugo static site generator. In addition, GitHub is an important part of the equation, as pushing an update to the main branch of any of my site repositories results in the web server pulling and compiling the updated repo. …

(Read More)

Deploying SSH Keys To Your Server

I’ve yammered quite a bit about SSH and SSH key theory on this site. By now you should be itching to quit reading and start working, especially considering my glacial pace at wrapping this series up.

Previously in this series:

SSH Basics
SSH Key Theory
SSH Key Creation

In order for you to use a particular SSH key to login to a server, you need to have the private key on your local device or computer, and you need to have the public key stored on the server.

Remember, the private key is the one you hold close and the public key is the one you share to anyone who needs to authenticate you. The public key lets the server encrypt a message to you. You can decrypt the message with your private key and prove to the server that you must be you, since you are in possession of that private key. …

(Read More)

Servers and Shortcuts

I’m not the most prolific writer in the best of times, and I’ve spent the past month doing many interesting and detailed things to Linux servers with my friend and BubbleSort co-wrangler Vic Hudson.

Rather than presenting this information to you as an excuse for my tardiness in publishing anything new, the takeaway here is that all this server poking and prodding has resulted in me having a new workflow for publishing to my sites, and that has resulted in me reworking my blog post publishing shortcut (and next, my podcast episode publishing shortcut).

Far from being more complex, my workflow is now simpler: all I have to do is parse the text of my blog post and make some text transformations that will make my post work when Hugo compiles it, choose a section, category, and some tags, and update my git repo and push that to GitHub.

The …

(Read More)

Emmet extension for Panic Nova

Someday I need to write about Nova, the code editor from Panic that I use for web development. In the meantime, let me instead tell you about an extension for Nova that I just installed tonight which I knew about from Visual Studio Code.

It’s called Emmet.

Emmet lets you use shorthand to quickly enter html tags and css rules.

If you use Nova for web development, install Emmet. As Tim Cook would say, we think you’ll love it.