console.log('Hello world!');

Welcome to my new blog! I am still playing around with the layout and [writing | design] styles, so please bear with me if things get weird and change around a bunch.

Behind the Scenes

I use Hugo to generate a static site from source controlled Markdown files. nginx then serves the outputted public directory. I am writing this post from within VSCode, which has been nice and familiar as I tinkered with various config files and CSS. Alas, although the linter politely informed me that I should accompany -webkit-background-clip with background-clip, I feel somewhat naked writing prose without the comforting guard rail of a red squiggly line.

At work, I started using pageless Google Docs. It is liberating to move on from the margins and pages of the print world. While Docs is by far the best writing collaboration tool I’ve used (albeit one of the few ones), I would hesitate to write an entire blog on top of it. The whole platform aspect turns me off when sharing things with the world – do I really want Anonymous Giraffe breathing down my neck as I scroll through a post? Still, I find myself missing Doc’s grammar/spellcheck and text formatting shortcuts that circumvent the tedium of writing out [link]( by hand.

Here are a some remaining things I want to figure out on the blog:


At the moment I see the default Apple system font (SF Pro) when browsing from my personal MacBook Air M1. I like this font, it’s something I read quite regularly when using macOS. Still, can we do better? A monospaced code font could be fun and techy – the markdown for this post looks great in Menlo. It can be fairly disorientating to switch between writing in one font and reading what was written in another. I do feel obligated to consider Roboto of course, or perhaps I could embrace the classic Times New Roman! Whatever I choose, I should make sure I have good /r/keming/.

About Me & Socials

Personal websites that jump straight into blog posts without an introduction or “about me” section are a minor pet peeve of mine, so I should be the change I want to see in the world and get around to filling out something informative.

I also ought to share my GitHub account and LinkedIn somewhere prominent. Sticking them up in the top right menu bar seems logical, although I expect that I need to dig into my theme’s HTML to accomplish this.


I should decide if I want to host discussion of my posts on the blog. I have no idea who my audience is at the moment (yeah, I’m talking about you - who are you?), but I would be quite interested to facilitate a two-way conversation over some of the thoughts I lay out. Even corrections are welcome, after all I’m sure this post is rife with grammar issues and mispellings.


Considering I work on Google Ads, I want to throw some subtle, below the fold display advertisements onto my site to gain more sympathy for the publishers we work with every day. Tinkering with fun, handwritten creatives for stuff I’m interested could be cool and seems harmless. Last time I tried to put ads on I was swiftly rejected, probably because until recently I was rocking one sentence on an empty page.

RSS Feed

While I do not personally use an RSS Feed (I tried Feedly on my phone but still prefer crowdsourced link sharing on HN and Reddit), this seems to be the standard way to let people know when I have a new post and should be trivial to set up with a Hugo plugin.


I want to make myself a custom favicon for I don’t know what that should look like yet and I frankly lack the artistic ability to doodle something pleasing to the eye. In the meantime I could dust off the favicon finder project I completed as a take home assignment once upon a time. I am particularly proud of how I used ReadableStreams to stream each favicon as it was found by the backend.

Future Posts

Here are some things I want to write about in the future:

  • Solving Wordle – I recently had the opportunity to research and present a few interesting approaches to solving the viral word game, check out the presentation here. I want to look into solving Semantle as well.
  • Oral Tradition in Software Engineering – I found Bryan Cantrill’s talk on this subject deeply inspiring. Codebases are living things, and we have much to learn from our predecessors.
  • JavaScript Memory and Garbage Collection – my current work at Google includes detecting and debugging memory leaks in our codebase. My favorite literature around this rich topic comes from Nolan Lawson’s posts on performance.
  • Poems and creative writing – outside technical writing, I would like to start writing poetry again. I enjoy the aesthetic of a beautiful phrase and sometimes wish I could fill pages with romantic images and clever allusions rather than corporate jargon. There is a short story floating around in my head about a sentient computer virus infecting someone’s hearing aid that I would love to explore as well.
  • Misc/Personal: I have some travel notes from visiting Japan before the pandemic, a playlist of my late grandfather’s favorite movies, and some nostalgic video games.