<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <title>Snook.ca</title>
  <subtitle>Everything and Nothing</subtitle>
  <link href="https://snook.ca/posts/index.xml" rel="self" />
  <link href="https://snook.ca/" />
  <updated>2026-07-28T21:50:52Z</updated>
  <id>https://snook.ca/</id>
  <author>
    <name>Jonathan Snook</name>
    <email>jonathan@snook.ca</email>
  </author>
  <entry>
    <title>Chimed, I’m sure</title>
    <link href="https://snook.ca/everything/chimed/" />
    <updated>2026-07-28T00:00:00Z</updated>
    <id>https://snook.ca/everything/chimed/</id>
    <content type="html">
    &lt;p&gt;A decade ago, when I was still speaking at conferences and heavily marketing myself, I’d often think of personal branding ideas. We’ve seen the trends. The business cards. The t-shirts. The stickers. The buttons. The socks! Can’t forget the socks. My logo is branded across not only my sites but my computers and my slide decks, too.&lt;/p&gt;
&lt;p&gt;I also liked using colour to reinforce my brand. I’ve continued that tradition with green threading throughout the latest redesign. I even considering wearing green for all my conference talks. Thankfully, that ended up being a short-lived idea.&lt;/p&gt;
&lt;p&gt;At one point in my career, I was getting interviewed for a number of podcasts and considered starting up my own podcast. One of the ideas that came out of preparing to start my own podcast was how to brand via audio. I liked the idea of doing chimes like the &lt;a href=&quot;https://en.wikipedia.org/wiki/NBC_chimes&quot;&gt;NBC chimes&lt;/a&gt; so that’s what I did:&lt;/p&gt;
&lt;audio controls=&quot;&quot;&gt;
  &lt;source src=&quot;https://snook.ca/assets/snookca-tone.mp3&quot; type=&quot;audio/mpeg&quot;&gt;
&lt;/audio&gt;
&lt;p&gt;It’s five dings in the pattern of how I spell out my last name: Ess Enn oh-OH Kay.&lt;/p&gt;
&lt;p&gt;Had I implemented this, I had considered using it to intro my conference talks. I likely would’ve integrated it into the site somehow as well. Maybe clicking on the logo rings the chime as the letters of my name pop in sequence.&lt;/p&gt;
&lt;p&gt;For now, I’ll simply document this little artifact of time.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>Collections</title>
    <link href="https://snook.ca/everything/collections/" />
    <updated>2026-07-25T00:00:00Z</updated>
    <id>https://snook.ca/everything/collections/</id>
    <content type="html">
    &lt;p&gt;In 1985, at the age of eleven, I bought my first comic book: The Transformers #9. From there, I went on to collect nearly a thousand comics over my teenage years, mostly in the Marvel universe like Spider-Man and X-men. Lots of Groo the Wanderer (which my mom always enjoyed) and then into stuff like Watchmen and The Sandman. Bill Sienkiewicz was one of my favourite artists with his work on The New Mutants, Stray Toasters, The Shadow, and Dazzler.&lt;/p&gt;
&lt;p&gt;About a decade ago, I got into whisky. What started with a few bottles of Balvenie slowly grew into a 200+ bottle collection. Then over the pandemic, I got into cocktails and my cupboards burgeoned with amari and liqueurs.&lt;/p&gt;
&lt;p&gt;I’ve noticed this pattern where I feel the need to “collect them all”. It’s by no means limited to physical things, either. Pokemon Go was addictive for a hot minute, I tell yah. At one point, I had collected everything in The Simpsons: Tapped Out. And then they’d release more things. I spent every day going into the app to complete all the daily tasks. Until one day I tapped out. I deleted the app and never went back in.&lt;/p&gt;
&lt;p&gt;Same thing happened in Pokemon Go. A raid was happening nearby and I considered getting in my car to participate. That’s when it hit me that it was time to stop. Boom. App gone. Never went back in.&lt;/p&gt;
&lt;p&gt;I always hit a point where I stop. I got rid of all my comics. I stopped playing Pokemon Go. I stopped buying whisky. I reach a stage where I realize that the collecting is unsustainable.&lt;/p&gt;
&lt;p&gt;Last year, I considered getting into vinyl. The idea of popping a record onto the player and chilling in my lounge chair had plenty of appeal until I considered the logistics. Knowing myself, I didn’t want to suddenly have boxes and boxes of records on my shelves. No record player was purchased that day. Or since. I can sit in my lounge chair and listen to a streaming service just as easily.&lt;/p&gt;
&lt;p&gt;(I recognize that there is a perfectly reasonable middle ground where I only purchase a handful of records and play those on repeat, instead of building a huge collection. There were other reasons I talked myself out of a record player.)&lt;/p&gt;
&lt;p&gt;That’s not to say that I don’t have that completionist streak still in me. Nor that I’m not willing to spend lots of money on the various quests to complete things. My restaurant adventures are a testament to that. It is handy, for me at least, to be able to know when a goal is no longer serving its purpose and to be okay with moving on to new things.&lt;/p&gt;
&lt;div class=&quot;postscript&quot;&gt;
&lt;p&gt;Postscript: When I originally started writing this post—much of which was written last year—it was with the intention of recognizing my own habit of “collecting”. It is amusing me to have just written that last line and realize that I seem to be having a recent theme of endings and beginnings.&lt;/p&gt;
&lt;/div&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>They Don’t Need to Go On Forever</title>
    <link href="https://snook.ca/everything/they-dont-need-to-go-on-forever/" />
    <updated>2026-07-21T00:00:00Z</updated>
    <id>https://snook.ca/everything/they-dont-need-to-go-on-forever/</id>
    <content type="html">
    &lt;p&gt;I came across this fun little comic titled &lt;em&gt;&lt;a href=&quot;https://uarrr.org/we-didnt-lose-the-plot/&quot;&gt;We Didn’t Lose the Plot&lt;/a&gt;&lt;/em&gt;. It has a straightforward conclusion: more things should come to an end. The “things” referred to here is media like books and movies and television but I’d extend it to many other things as well.&lt;/p&gt;
&lt;p&gt;Like web projects.&lt;/p&gt;
&lt;p&gt;So often, things are built in the attempt to have infinite growth. And like cancer, they seemingly grow to the point where the entire thing eventually dies or becomes useless at the problem it originally set out to solve.&lt;/p&gt;
&lt;p&gt;I like projects that have a definitive end. One of the things I liked about doing the &lt;a href=&quot;https://fifty.snook.ca&quot;&gt;Fifty&lt;/a&gt; project was that it had to finish. I don’t need to do a Fifty: The Refiftying, or Fifty 2: Fifty Boogaloo, or 2 Fifty 2 Furious. The project is done.&lt;/p&gt;
&lt;p&gt;It’s likely why I enjoy building concepts or mini-apps. They’re quick and solve a specific problem or answer a particular question without needing to be grown, sold, serviced, or maintained.&lt;/p&gt;
&lt;p&gt;I’ve been considering potential projects that would have a specific end in mind with which I could build a mini-site around. I don’t have anything planned yet but I’m looking forward to the possibilities.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>I Added Syntax Highlighting Using the 11ty PrismJS Plugin</title>
    <link href="https://snook.ca/everything/syntax-highlighting/" />
    <updated>2026-07-18T00:00:00Z</updated>
    <id>https://snook.ca/everything/syntax-highlighting/</id>
    <content type="html">
    &lt;p&gt;One thing I like about 11ty is that common tasks for development oriented blogs are easily handled and syntax highlighting is no exception.&lt;/p&gt;
&lt;p&gt;I installed the &lt;a href=&quot;https://www.11ty.dev/docs/plugins/syntaxhighlight/&quot;&gt;Syntax Highlighting Plugin&lt;/a&gt; just like the documentation asked me to. Then, I had to modify my code blocks in my blog post Markdown files to indicate what language they were. Thankfully, I had only written two articles so far that contained code blocks. Nothing so far deviates from what the documentation says.&lt;/p&gt;
&lt;p&gt;When I started considering the compile process, however, I had a few considerations.&lt;/p&gt;
&lt;h2&gt;Only using the CSS when there was code on the page&lt;/h2&gt;
&lt;p&gt;The first thing to note is that I inline my CSS. My thinking is that most users visiting my site aren’t likely to have my CSS file cached—either because they’re on my site for the first time or because it has been long enough since they visited my site and the file has expired.&lt;/p&gt;
&lt;p&gt;Currently, I only have two templates: my universal template and my blog post template. I inline additional CSS in my blog post template that isn’t needed anywhere else on the site. As such, the first thing I did was add the PrismJS theme to my template and see how it looked. No surprise, it looked great.&lt;/p&gt;
&lt;p&gt;But what if I have no code on the page? Why am I loading the CSS for every blog post? Easy enough. I added a yaml parameter of &lt;code&gt;hascode: true&lt;/code&gt;. And then I check for that parameter in my template.&lt;/p&gt;
&lt;pre class=&quot;language-njk&quot;&gt;&lt;code class=&quot;language-njk&quot;&gt;&lt;span class=&quot;token delimiter punctuation&quot;&gt;{%&lt;/span&gt; &lt;span class=&quot;token tag keyword&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;token variable&quot;&gt;hascode&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;%&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;token variable&quot;&gt;link&lt;/span&gt; &lt;span class=&quot;token variable&quot;&gt;rel&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;stylesheet&quot;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;&gt;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;%&lt;/span&gt; &lt;span class=&quot;token variable&quot;&gt;endif&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;%&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;That was nice. But as I mentioned, why am I creating an HTTP request when I usually inline my CSS? No problem. A simple copy/paste and that was done.&lt;/p&gt;
&lt;h2&gt;Light and Dark Mode&lt;/h2&gt;
&lt;p&gt;Initially, because the themes are relatively small, I thought about finding a theme that worked for light mode and one for dark mode, wrapping them in &lt;code&gt;prefers-color-scheme&lt;/code&gt;. But that still seemed excessive. I found the &lt;a href=&quot;https://github.com/PrismJS/prism-themes/blob/master/themes/prism-duotone-light.css&quot;&gt;Duotone Light&lt;/a&gt; theme that I thought looked best for my light mode and then realized that much of it still worked in dark mode if I gave it a couple tweaks.&lt;/p&gt;
&lt;p&gt;The first tweak was to use the &lt;code&gt;light-dark&lt;/code&gt; declaration I had already had on my &lt;code&gt;pre&lt;/code&gt; tags when I launched:&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;background&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;light-dark&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;#FFFFFF50&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; #00000050&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I double-checked and noticed that the selector colour didn’t work in dark mode. So, instead of just trying to find a colour that would work, I decided to use a CSS colour function to solve the problem.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;light-dark&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;#2d2006&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;hsl&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;from #2d2006 h s &lt;span class=&quot;token function&quot;&gt;calc&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;l + 80&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This uses the &lt;code&gt;hsl&lt;/code&gt; function to shift the luminosity of the colour from the light mode version.&lt;/p&gt;
&lt;p&gt;This is a bit of overkill as I could just take the rendered colour and put that in place of the function but sometimes it’s just fun to try new things.&lt;/p&gt;
&lt;h2&gt;Pretty&lt;/h2&gt;
&lt;p&gt;I really like how the code blocks look now, although I don’t love that there’s no indication that the code has overflowed the container if you have scrollbars turned off by default—which most people do these days. Once we get &lt;code&gt;scroll-state&lt;/code&gt; container queries supported across all major browsers, maybe I’ll deal with it then.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>A Few of The CSS Tidbits I Put in The Site</title>
    <link href="https://snook.ca/everything/a-few-css-tidbits/" />
    <updated>2026-07-16T00:00:00Z</updated>
    <id>https://snook.ca/everything/a-few-css-tidbits/</id>
    <content type="html">
    &lt;p&gt;When I was building this site, I was keeping it lean but perhaps a bit messy. It’s not a big complex site and I didn’t need to write CSS to maintain a big complex site. As such, I even wondered if I’d stick to any kind of naming convention.&lt;/p&gt;
&lt;p&gt;Old habits are hard to break and I found anytime I tried to get away with just element selectors for something, it was clunky as I continued to iterate. Sure enough, the more I worked on the site, the more I moved back to my modular ways. But ultimately, that’s neither here nor there. For a site like mine—written and maintained by one person—what kind of naming convention I use is nearly irrelevant. (I say nearly because I don’t want to be obtuse just for the sake of it!)&lt;/p&gt;
&lt;p&gt;With my projects over the last few years, I’ve used a few different newer CSS features and have enjoyed what they can do. Here’s a few of the things I put into this site...&lt;/p&gt;
&lt;h2&gt;Clamp&lt;/h2&gt;
&lt;p&gt;I originally used &lt;code&gt;clamp&lt;/code&gt; on &lt;a href=&quot;https://nook.snook.ca&quot;&gt;The Snook Nook&lt;/a&gt; for the site title at the top of the page. I wanted it to feel balanced regardless of screen width. I adjust both the font size and letter spacing in this case, so that the title always looked proportional.&lt;/p&gt;
&lt;p&gt;For Snook.ca, I wanted something that was big and bold on a large screen but wouldn’t fill up an entire phone screen. Again, clamp came in clutch.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;font-size&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;clamp&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;2em&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 4vw&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; 4em&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Clamp takes three values: the minimum, the preferred value, and the maximum. In this case, I wanted the font-size to be related to the screen width, which is where the &lt;code&gt;vw&lt;/code&gt; units come in. The largest I wanted to go was 4em. This was eye-balled. There’s no special math here. Likewise, 2em still seemed reasonable on the bottom end and looked good for me.&lt;/p&gt;
&lt;h2&gt;Balanced Headings&lt;/h2&gt;
&lt;p&gt;I remember reading about this awhile back and it was a nice little thing to add to the site: &lt;code&gt;text-wrap: balance&lt;/code&gt;. I just have it on the page title to avoid orphaned words and make them look a little more, well, balanced.&lt;/p&gt;
&lt;p&gt;On the old site, I never loved how my headings looked over multiple lines because of the pencil lines I had on headings. As a result, I kept the titles shorter, on purpose. With this version, I wanted to get more creative with page titles, going longer if I needed to without it looking weird.&lt;/p&gt;
&lt;h2&gt;Grid&lt;/h2&gt;
&lt;p&gt;When Grid first came out, I was using it for larger, dynamic layouts like the restaurant grid on my &lt;a href=&quot;https://fifty.snook.ca&quot;&gt;Fifty&lt;/a&gt; site. Now, I find myself also using it for smaller elements. The article meta is a great example of this.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://img.snook.ca/article-meta.webp&quot; alt=&quot;The article meta showing section title and article date&quot;&gt;&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token selector&quot;&gt;.meta&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;display&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; grid&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;justify-items&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; center&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Boom. All the items are center aligned and stacked. I probably would&#39;ve defaulted to trying to use &lt;code&gt;display: flex&lt;/code&gt; here but that would&#39;ve required an extra declaration to adjust the &lt;code&gt;flex-direction&lt;/code&gt; to column. (And using &lt;code&gt;align-items&lt;/code&gt; instead of &lt;code&gt;justify-items&lt;/code&gt;.)&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token selector&quot;&gt;.meta-before:before&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;content&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;display&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;block&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;width&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;50px&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;padding-bottom&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 5px&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;border-top&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 2px solid &lt;span class=&quot;token function&quot;&gt;var&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;--green&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The horizontal line is a pseudo-element that gets added into the grid stack before everything else. That border declaration leads me to the next thing.&lt;/p&gt;
&lt;h2&gt;CSS Custom Properties&lt;/h2&gt;
&lt;p&gt;The CSS isn’t large or anything but it was nice to use custom properties for easy colour management. I declared them on the root element. I could’ve probably just declared this on the &lt;code&gt;html&lt;/code&gt; element itself just as easily.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token selector&quot;&gt;:root&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;--yellow&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #FFCA00&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;--green&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #668800&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;--white&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #EFEFE6&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;--black&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; #3C3C3C&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;color-scheme&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; light dark&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Again, I didn’t need multiple levels of abstraction. I just wanted something that made it easier to remember these hex codes and spit them out where I need them.&lt;/p&gt;
&lt;h2&gt;Dark Mode&lt;/h2&gt;
&lt;p&gt;That last line in the previous example declares that my design supports light and dark mode and lets me use the &lt;code&gt;light-dark&lt;/code&gt; function to easily declare colour options like this declaration for the body text.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;light-dark&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;var&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;--black&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;var&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;--white&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2&gt;Link Underlines&lt;/h2&gt;
&lt;p&gt;I’ve always just either toggled underlines on hover or toggled text colour. I don’t know when all the &lt;code&gt;text-decoration&lt;/code&gt; options were added but I liked being able to do so.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token selector&quot;&gt;a&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; 
  &lt;span class=&quot;token property&quot;&gt;color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; currentcolor&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; 
  &lt;span class=&quot;token property&quot;&gt;text-decoration-thickness&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;2px&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; 
  &lt;span class=&quot;token property&quot;&gt;text-decoration-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;var&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;--green&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; 
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token selector&quot;&gt;a:hover&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;token property&quot;&gt;text-decoration-color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;var&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;--yellow&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;I was able to adjust the thickness and then change the colour on hover. I haven’t used the ol’ LVHA format in years but I might come back to it to give more useful visual clues for visited and active links.&lt;/p&gt;
&lt;p&gt;The link colour just picks up whatever the &lt;code&gt;light-dark&lt;/code&gt; colour is currently set.&lt;/p&gt;
&lt;h2&gt;CSS has come a long way&lt;/h2&gt;
&lt;p&gt;I was really delighted by how easy it was to use all of these features and not have to be too concerned about cross browser issues. Looking through &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web&quot;&gt;MDN&lt;/a&gt; was fun to discover what features I had missed over the years and could now implement reliably. &lt;a href=&quot;https://caniuse.com&quot;&gt;Can I Use&lt;/a&gt; also continues to be a fantastic resource for verifying browser support.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>Font Choices</title>
    <link href="https://snook.ca/everything/font-choices/" />
    <updated>2026-07-15T00:00:00Z</updated>
    <id>https://snook.ca/everything/font-choices/</id>
    <content type="html">
    &lt;p&gt;A week ago, I had launched this site using QuatroSlab for page titles and Google’s Slabo for body copy. For those that have been around awhile and are familiar with SMACSS, you might recognize QuatroSlab from that site. I like the font and started off with it to see how I’d feel about it on the this new design. Then I chose Slabo as a font that I felt paired well with it.&lt;/p&gt;
&lt;p&gt;For the most part, I was fine with it but after finally getting a blog post written and posted under the new design, I was feeling less than thrilled with my choices.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://img.snook.ca/font-choices-2.webp&quot; alt=&quot;The font choices before.&quot;&gt;&lt;/p&gt;
&lt;p&gt;Over yesterday and today, I decided to do some research on fonts and came across &lt;a href=&quot;https://pangrampangram.com&quot;&gt;Pangram Pangram Foundry&lt;/a&gt;. They have some delectable fonts that make me want to do some interesting designs with them. This led me to Fragment. I looked through all the variants and Fragment Text felt just right for the body copy. It felt softer and rounder and more open and friendly than Slabo.&lt;/p&gt;
&lt;p&gt;My only complaint is that I want some of the discretionary ligatures in the list of standard ligatures like the Th and ft. The rest of them are too much flourish for body copy. I enabled the ligatures for headings, at least, where some flourish is warranted.&lt;/p&gt;
&lt;p&gt;For page headings, though, I wanted something bolder. This is where Pangram Pangram’s Pangaia comes in. I like the slightly retro-modern funky feel that this font brings to the table.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://img.snook.ca/font-choices-1.webp&quot; alt=&quot;The font choices after.&quot;&gt;&lt;/p&gt;
&lt;h2&gt;The CSS&lt;/h2&gt;
&lt;p&gt;From a technical perspective, this is the first time I’ve taken advantage of OpenType feature capabilities and I found it confusing as I couldn’t find a good explanation of what &lt;code&gt;liga&lt;/code&gt; or &lt;code&gt;dlig&lt;/code&gt; or &lt;code&gt;ss03&lt;/code&gt; mean or how to know whether a font even supports these.&lt;/p&gt;
&lt;p&gt;I’ve learned that you can turn these on or off via CSS’s &lt;code&gt;font-feature-settings&lt;/code&gt; property.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;font-feature-settings&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss02&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss03&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss04&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;dlig&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;zero&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;onum&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Declaring the value turns them on. You can alternatively, specifically declare them on or off using the words on or off or the numbers 1 or 0. The following would enable features ss02, ss03, zero, and onum; it would disable ss04 and dlig.&lt;/p&gt;
&lt;pre class=&quot;language-css&quot;&gt;&lt;code class=&quot;language-css&quot;&gt;&lt;span class=&quot;token property&quot;&gt;font-feature-settings&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss02&quot;&lt;/span&gt; on&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss03&quot;&lt;/span&gt; 1&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;ss04&quot;&lt;/span&gt; off&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;dlig&quot;&lt;/span&gt; 0&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;zero&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;onum&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;The question then became about how to figure out which of these features exist in a particular font. For this, I used &lt;a href=&quot;https://fontdrop.info&quot;&gt;FontDrop!&lt;/a&gt;. It will show you what features are available and what those features look like for that font. FontDrop! is all client-side, too, which is nice. I didn’t want to be uploading files that aren’t mine to someone’s server.&lt;/p&gt;
&lt;h2&gt;Up Next&lt;/h2&gt;
&lt;p&gt;I suspect I will end up tweaking which of these features are on or off as I add more content to the site and decide what works well for a given scenario.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
  <entry>
    <title>The End and The Beginning</title>
    <link href="https://snook.ca/everything/the-end/" />
    <updated>2026-07-12T00:00:00Z</updated>
    <id>https://snook.ca/everything/the-end/</id>
    <content type="html">
    &lt;p&gt;Welcome to the beginning. The end happened months ago but like many endings, sometimes they take awhile.&lt;/p&gt;
&lt;h2&gt;The End&lt;/h2&gt;
&lt;p&gt;Snook.ca has, for the better part of the last 25 years, been mostly a professional outlet for me. What started out as “Technical Articles” turned into “a collection of tips, tricks, and bookmarks on web development” to just “Tips, Tricks, and Bookmarks on Web Development.” Stepping away from full time web design and development, I found myself writing more personal posts and changed the tagline to “Life and Times of a Web Developer” about a year ago or so to reflect that change.&lt;/p&gt;
&lt;p&gt;On top of that, the design for the site had only changed marginally over the last 17 years. It was time for something new. I initially had some grand plans to push the limits of CSS or use some bleeding edge features as a way of stretching my dev skills that had gone somewhat dormant since the start of the pandemic. Instead, as I played with the design, I became more enamoured with simplicity—a better reflection of my personal life. (Ultimately, I also knew that if I made it too complex, I’d create roadblocks to wanting to work on the site.)&lt;/p&gt;
&lt;p&gt;To start something fresh and new, I thought it best to put a bow on the old stuff and tuck it away. All of those old posts were and are aptly named &lt;a href=&quot;https://snook.ca/archives/&quot;&gt;Archives&lt;/a&gt;. It’s similar to how &lt;a href=&quot;https://jasonsantamaria.com&quot;&gt;Jason Santa Maria&lt;/a&gt; or &lt;a href=&quot;https://v7.robweychert.com&quot;&gt;Rob Weychert&lt;/a&gt; have their site versioning: the content and design are set in stone. Everything as of April 2026 was converted into static pages, no longer powered by CakePHP.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://img.snook.ca/v11-launch-1.webp&quot; alt=&quot;Version 10: Archives&quot;&gt;&lt;/p&gt;
&lt;p&gt;The time between April and now has been spent cleaning up a bunch of the cruft that had built up over the years. It also included working on a new site design that I’d be happy enough to launch with and then continue to iterate on after it has gone live.&lt;/p&gt;
&lt;h2&gt;The Beginning&lt;/h2&gt;
&lt;p&gt;That’s technically where we are now. This is the inaugural post of the new site. If you’re reading this via RSS, that means the redirects are working. The journal is now called &lt;em&gt;Everything and Nothing&lt;/em&gt;. It might be self evident but it’s because the journal is about everything and nothing. There are no categories like there were before. (Although I had all but removed the categories from the previous version. The URL was the only tell left.)&lt;/p&gt;
&lt;p&gt;The design is a continued evolution of what came before. The “bookmark” in the header is now in tatters. The paper background and pencil lines are gone, leaving just a solid colour. The wavy lines are gone. The simple palette is still the same colours as before: the cream, the grey, and the green haven’t changed. I was able to finally get a dark mode added to the site, which is just the cream and the grey swapped. There&#39;s that simplicity again.&lt;/p&gt;
&lt;p&gt;I also played with scroll-based animations using &lt;code&gt;view-timeline&lt;/code&gt;. If you’re in Firefox, you can enable them in your settings. If not, the site works fine either way. Chrome and Safari support them. There’s some &lt;code&gt;grid&lt;/code&gt;, &lt;code&gt;@support&lt;/code&gt;, &lt;code&gt;clamp&lt;/code&gt; and custom properties. Nothing ground breaking.&lt;/p&gt;
&lt;p&gt;I decided not to have a main navigation. Mostly because it’s not necessary. Simplicity, yet again. My theory is that anybody who gets dropped into the middle of the site will go to the home page, if they go anywhere else at all.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://img.snook.ca/v11-launch-2.webp&quot; alt=&quot;Version 11: Simplicity&quot;&gt;&lt;/p&gt;
&lt;p&gt;Under the hood, I’m now using 11ty. I’ve used it for a few other projects and I like its approach. I’m familiar with it and I knew it would do what I needed it to do for this.&lt;/p&gt;
&lt;h2&gt;Evolution&lt;/h2&gt;
&lt;p&gt;This design is an evolution and it will continue to evolve. This just marks the beginning. Or is it the end it’s marking? Or is it neither since this is just an evolution? Like a moth turning into a butterfly? &lt;em&gt;gags&lt;/em&gt; How cliché.&lt;/p&gt;
&lt;p&gt;Whatever it is, the site marches on. For those of you who consume via RSS and never click through, you’ll not see any different. The post frequency will continue to ebb and flow.&lt;/p&gt;
&lt;p&gt;I’ve thought about consolidating things like the Photos and whisky reviews into the main site, allowing an easier way to weave all the pieces together, playing with themes built off the base design. That might happen.&lt;/p&gt;
&lt;p&gt;Similar to the previous design that slowly changed over the years, this design, too, will slowly change as I add and remove and shift elements. This site is my playground, after all. As others have described their own sites, it’s my worry stone, my prayer beads. It provides me a place to practice my craft of design, development, and writing.&lt;/p&gt;
&lt;p&gt;Importantly, it continues to provide a space outside of the algorithm, for myself and for others.&lt;/p&gt;

    &lt;hr&gt;&lt;small&gt;Have something to say? &lt;a href="mailto:snookca@snk.ms"&gt;Tell me about it.&lt;/a&gt;&lt;/small&gt;
</content>
  </entry>
</feed>
