A stack of smooth stones on a beach near an ocean

Stacks and stacks

That was then, this is now

published:  July 5, 2020
last modified:  August 10, 2020

Image: Willfried Wende; Pixabay

Thought I’d take this (U.S.) holiday weekend to do a brief comparison of this site’s current “tech stack” with what I was using a year ago today. Since the site wasn’t yet using package.json in 2019, this is a little trickier than it would be otherwise, but I appear to have it reconstructed.

So, for your geeky pleasure, here goes nothing.


Static site generator (SSG)

2019-07-05: Hugo 0.55.6. At the time, I thought I was about to chuck Hugo for Gatsby. Didn’t quite go that way. For full details on my oft-shifting SSG loyalties—the “Dance”—in the latter half of 2019 in particular, see my 2019 year-end wrap-up.

2020-07-05: Eleventy 0.11.0.

OSs used for local dev

2019-07-05: macOS. iOS would join the mix only a few days later, thanks to my adoption of the superb Working Copy.

2020-07-05: macOS, iOS.

Website host

2019-07-05: Netlify.

2020-07-05: Vercel. My most recent post explains the process that led me to Vercel, with the actual switchover occurring just this past week.

Repository in use

2019-07-05: hugo_site_css-grid.

2020-07-05: eleventy_solo.

Online repo host

2019-07-05: Bitbucket.

2020-07-05: GitHub.

Repo’s online status

2019-07-05: Private.

2020-07-05: Public.

Local repo management tools

2019-07-05: Sourcetree.

2020-07-05: Fork for macOS, Visual Studio Code, and—when the mood strikes me—just plain ol’ Git CLI commands in a terminal window.

Primary text editor for posts

2019-07-05: iA Writer.

2020-07-05: Same.

Primary text editor for coding and config

2019-07-05: Visual Studio Code.

2020-07-05: Same.

Primary local terminal apps

2019-07-05: macOS’s built-in Terminal app.

2020-07-05: iTerm2 and Visual Studio Code.

Domain registrar

2019-07-05: Namecheap.

2020-07-05: Google Domains.1

Total posts on site

2019-07-05: 21.

2020-07-05: 69 (as of this one).

Commenting platform

2019-07-05: Talkyard.

2020-07-05: Webmentions.

Normal build length (secs.)

2019-07-05: 10–20.

2020-07-05: 45–60. Please understand that the difference is mainly in how much image processing I’m now doing (see next three items). If I were doing an apples-to-apples comparison, bare-bones Hugo to bare-bones Eleventy, Hugo would still be faster but not by that much.

Build-time image processing

2019-07-05: None.

2020-07-05: imgxfm.js script, based on the Sharp library.

Serving responsive images?

2019-07-05: No.

2020-07-05: Yes.

Auto-serving multiple image formats?

(In other words, am I sending .webp to browsers that can handle it and .jpg and .png to those that can’t?)

2019-07-05: No.

2020-07-05: Yes.

Local image editors

2019-07-05: Affinity Photo and Affinity Designer.

2020-07-05: Same.

Site typography

2019-07-05: System fonts.

2020-07-05: Same. I did, however, spend about half of the year between these two configs using either (a.) fonts imported via the npm Typefaces package or (b.) Google Fonts-provided typefaces. I finally decided a couple of days ago to revert to only system fonts after tiring of trying to compensate for the minor, but notable, performance hits that the other typefaces’ delivery methods imposed.2

Support for dark mode?

2019-07-05: No.

2020-07-05: Yes. See also this post.

Official site grandchildren (OK, humor me)

2019-07-05: None.

2020-07-05: One.


  1. In fact, I started with Google Domains only in the last two weeks. I initiated the transfer of all my domains on June 22, and they’d moved successfully by June 28. (It takes a few days under ideal circumstances, folks, so don’t wait until the last minute if a change of registrars involves anything time-sensitive.) ↩︎

  2. I am aware there are ways to handle that, as Zach Leatherman explained so well in 2016, but he obviously is ’waaaay smarter than I am and I don’t have either the knowledge or guts to give the recommended methods a try. Maybe someday, but not now. ↩︎

Other posts

Next: Mixed nuts • July, 2020

Previous: Goodbye and hello