Here’s a quick one live from Hack Night . 🧑💻 I met a cool human, Cullan , who made a website that I think is neat and want to share: make-bookmarklets.com . I love bookmarklets. One of the posts I’ve been noodling on for a while — behind the scenes — is writing about my adoration and show off some of the ones that I’ve used and made in the past. A lovely feature to Cullan’s site is the ability…
I’ve written about restaurant week before: Scraping Minneapolis / St. Paul Restaurant Week . Well, good news: it’s still happening and my little side project still runs. Just want to view the restaurants? restaurantweek.netlify.app For this winter 2026 season, it runs Feb 23 — Mar 1, which is conveniently located over my birthday. 🎂 In light of recent events, I wanted to create a shortlist of…
I recently had a final round “ skip level” interview which was with high(er) level leadership folk; think directors, VPs, and similar. Those that you wouldn’t interact with on a daily basis but perhaps “ skip” the ladder rung of your boss, hence the term “ skip level.” I pinged a former boss and asked some fellow professionals in the space for advice coming up with some intelligent questions to…
It’s been a rough week in Minneapolis, so I’m sharing my quick win: as of yesterday morning I was ranked #1 in the monthly leaderboard for the E line via the Transit app . Pro tip for any homies local to the twin cities reading this: download the Transit app. The Metro Transit sponsors users to the premium subscription tier automatically and for free as of March 2025 . Make sure to tap “ GO” when…
Whew. It’s 1) been a week and 2) been a while since I’ve written one of these. I don’t think this is me getting back into the weeknotes swing of things, but who knows. Either way there’s been a lot of ups & downs. Emphasis on the downs. But first: an embarrassing meta administrivia issue: my weeksnotes.sh script wasn’t using the ISO 8610 year & week syntax, which was super not right for 2026. At…
Here’s a throwback from my undergrad 1 degree: depending on the context , K, M, G, T can be base 10 OR base 2. For a quick refresher: K, M, G, T are kilo-, mega-, giga-, and peta-. Here’s the tl;dr: Ki == base 2 (2 10 ), K == base 10 (10 3 ). Read on for more. Frequencies & Rates K, M, G, T == 10 3 , 10 6 , 10 9 , 10 12 , respectively Anything with time in the denominator Hz has time in the…
Today was my 3rd year volunteering at DevFestMN which is a small annual tech conference put on by the local Google Developer Group . I wrote about volunteering last year . I was able to attend a couple of the talks throughout the day. I saw this book linked on a slide. Looks neat. https://link.springer.com/book/9798868821103 Web AI: Magic or Myth? Web AI == AI in the browser e.g. offline thing…
Here’s a quick tip to improve your “ drinking a hot to-go beverage” experience: Index the lid opening so it’s opposite the seam in the lid. This helps immensely in avoiding the dreaded drips. Here’s two images to visually demonstrate: An Americano with no lid; the seam is facing away. The same Americano now with a lid; the lid opening faces opposite the seam. That’s all, folks. May your lids be…
Re: https://patrickerichsen.com/chiseling Hi Pat! Oh so thrilled to see you got your personal site up and running plus a freshly minted blog post. For the reader: I know Pat from when we both worked at Target circa 2019. We’ve done plenty of biking and bookclubbing in Minneapolis. Anyways! I enjoyed the blog post — it touched on the cleanup part of a “ vibe coding” session. I’m still a pretty…
Recently, at work, I had to figure out how to rollback a Homebrew package to a specific version . As it turns out, this is non-trivial and requires a bit of a hack-ish workaround. Buried deep in a Stack Overflow I found salvation in the form of a link to a blog post coupled to a copypastable example: brew tap-new $USER /local-tap brew tap homebrew/core --force brew extract --version=3.3.0 htop…
Note: this content is adapted from a slide deck I created in 2019. If that’s more your vibe, view it here: slides.com/pinjasaur/tmux I’ve been using tmux for a while. I didn’t start tracking my dotfiles in a repo until 2017 and my tmux config was one of the first files committed so it’s hard to be certain. But at the very least, I’ve definitely been using it since 2017 and probably for a couple…
Heyo, I did it! Nice. Did what exactly, you ask? Dear reader, I wrote & published 100 posts to my personal blog over a 1-year period. That’s what #100DaysToOffload is all about. It was almost a year ago that I announced that I wanted to make it happen and barely just barely did I make it so. Some unsolicited tips: Consistency is key. I had a rocky start for the first 6 months but picked up a more…
In response to RIP Unsplash Source , I went ahead and reimplemented source.unsplash.com via the Unsplash API using Val Town . View the val here: https://www.val.town/v/pinjasaur/unsplashSourceReimplementation Why did I do this? The absence still leaves a void in my digital space It gave me an excuse to try out Val Town’s “ Townie” gen AI feature And finally, of course, I needed something to bring…
tl;dr Use the !mdnio bang on DuckDuckGo or Kagi as a shortcut when searching MDN. I’ve been a DuckDuckGo user for a while — one of the killer features that initially drew me in were the bangs . Put simply, bangs are shortcuts that allow you to direct your search somewhere specific — typically another site. For example, !w is semi-frequent one that I use to search Wikipedia. I do a decent amount of…
Re: https://news.ycombinator.com/item?id=42360681 The HN thread above from a ~month ago is on JSON5, which extends the JSON spec. It’s a rather weird name: it’s not the fifth version of JSON, but a naming convention akin to ES5 (ECMAScript 5) which is the version 1 that introduced trailing commas in the first place. I think it’s cool, but adds more than I’d really want, which is really just…
Well, thanks to Ben & Ben at Gears & Gasoline I’m now painfully and acutely aware that when someone says “ mil” or “ mils”, particularly in North America , they’re possibly referring to thousands of an inch and not millimeters . 😵🤓😣 Thanks. I hate it too. Thanks for reading this via RSS. ❤️ I love hearing from readers so please feel free to reach out. Reply via email • Subscribe via RSS or…
Right, now that I actually have your attention. The more appropriate title of this post would be: Free (1) Month Gift Subscriptions to the Pragmatic Engineer Newsletter Since I picked up the Black Friday / Cyber Monday discount on the Pragmatic Engineer newsletter I have a couple 1-month gift subscriptions available. Just /contact me — all I need is your email. If you’re truly curious my “ perfect…
Previously: “Approachable Open Source” Available for Preorder , You Deserve a Tech Bookclub I wrapped up Brian’s Approachable Open Source earlier this month and really enjoyed it. I won’t spoil much, but I’ve long been a fan of Brian’s written communication (since working together at Target) and found the mix of personal anecdotes (Brian’s personal burnout) and pragmatic advice (the core files in…
Inspired by Ethan Marcotte’s You Deserve a Tech Union book title — which is slotted as the next bookclub read — I wanted to talk about the ad-hoc casual bookclub that I’ve been doing for the past few years with friends & coworkers (former & present). A screenshot from a recent bookclub meeting. Some highlighted previously read titles over the years, in approximated chronological order: You Don’t…
Earlier this week I was listening to an episode of the Changelog & Friends podcast which had Chris Coyier and Dave Rupert from their podcast ShopTalk Show . During the conversation, CodePen “ two point oh” came up which is the cutesy codename for the latest major upgrade to CodePen that has been in the works for ~2+ years . Chris mentioned that they’re open to folks getting a sort of “ guided…
I’ve been writing Bash scripts for years and have slowly built up a boilerplate of sorts that I typically copy and paste into new scripts at the start. Hence a “ preamble boilerplate.” If you just want to copy and paste, here you go. #!/usr/bin/env bash # Strict settings set -o errexit set -o pipefail set -o nounset # On-the-fly debugging [[ -n " ${DEBUG:-} " ]] && set -x # "Magic" variables…
Re: https://jvns.ca/blog/2024/11/26/terminal-rules/ (and https://simonwillison.net/2024/Dec/12/rules-that-terminal-programs-follow/ ) Informative post on implied “ rules” that you can expect terminal programs to follow. Helpful if you spend any part of your day-to-day on the command line. Something that stood out to me is it hadn’t really clicked with me before that it’s Ctrl + D on empty lines.…
It’s been a while since I’ve dealt with browser vendor inconsistencies, but I hit one recently implementing a design mockup layout using display: flex and doing a final pass of testing in Chrome. For years, I’ve been dailying Firefox ( Developer Edition ) for personal use as well as any (web) development. I prefer supporting Mozilla, love the devtools, and generally find it’s a smoother experience…
Today was my 2nd year volunteering at DevFestMN which is a small annual tech conference put on by the local Google Developer Group . I was able to attend 4 of the talks throughout the day. Zero Tech Debt: How to Build an Engineering Culture of No Deferred Work What is technical debt? “ Deferred cost of work not done at an earlier point in the product life cycle.” Many types: code debt architecture…
I’ve been struggling to write recently so I’m opting to fully embrace capitalism and just write about some stuff I bought over Black Friday / Cyber Monday. It’s not quite a weeknote, but alas. In order: Heat Hog 18k BTU Portable Propane Heater Hoping to take the cold edge off in the garage during the winter while doing projects. I’m limited to a single 15 or 20 amp circuit so any electric heaters…
A tool tip for all you fellow gear heads out there. I really like my ratcheting screwdriver. Specifically, it’s a Megapro 1 but most are the same: they have a 1/4 inch hex shank which is used to drive the (typically included proprietary) 1/4 inch hex bits. I wanted to take this one step further and get a 1/4 inch hex to 1/4 inch square adapter, which would let me drive 1/4 inch sockets with my…
Green Day is an influential artist for me personally — particularly their American Idiot album. It was the first CD I owned. I’ll somewhat frequently use it as a shitty crappy Pomodoro because it comes in at just under an hour so it makes it easier to segment blocks of logical time on something. In particular, I find shorter periods of time don’t work as well for getting into that ooey gooey flow…
While coworking from a coffee shop this week I was surprised to see a WiFi SSID being broadcasted on a 6GHz band. Curious side note: why is the 6 separate from the 2.4/5 if they all share the same name? What?! Six gigahertz?! I thought that I was fancy with my dual-band 2.4 and 5GHz access point, but nope, 802.11ax (WiFi 6) has been around since ~2020. Such is the long tail cycle: a standard…
I wish GitHub Gists had an additional privacy mode: private. They already have public (indexed & searchable) and unlisted (called “ secret” in the UI — viewable by anyone with the URL) but nothing that’s truly private. This is in contrast to GitHub Repositories which can be public or private, but not unlisted. Gists are technically Git repositories themselves, so it makes no sense to me that there…
Recently I’ve been really digging into transactional email integrations for work. Specifically, I implemented custom From: addresses for transactional emails via SendGrid’s Domain Authentication feature and did an E2E test with mail-tester.com . It passed with a 10/10 score but had some small improvements recommended, specifically a List-Unsubscribe header. I wasn’t familiar with this so I dug in…
Every time I go on a meaningfully long road trip (realistically more than an hour or two) I always catch myself staring at the GPS navigation (usually Waze) and anticipating the moment that time and distance intersect. Let me explain. Let’s say I’m driving from Minneapolis to Kansas City (see InsightFest 2024 ) which is about 450 miles and 6.5 hours (390 minutes). When starting out the trip the…
I was able to attend InsightFest 2024 in Kansas City, KS at Greentec’s headquarters. It was a really fun time being able to see 60 1st gen Honda Insights at once with some great food and great people. It’s also a weirdly unique event due to that is presents as a mixture of a tech conference mixed with a car meet. Let me elaborate. Day 0: Preparation Prior to the event I was actively trying to get…
Re: https://world.hey.com/jason/version-1-is-for-you-658422f3 I recently read Jason Fried’s Version 1 is for you and liked the core message of being selfish with v1s and building them for you first and the customer will come later. What really stood out to me was the final paragraph: We don’t do MVPs here. I don’t believe in MVPs. I think they’re the lowest of the lowest bar, an insult to product…
It rained and turned to snow today here in Minneapolis, so instead of any 🎃👻 plans I’m treating y’all to a quick Git tip courtesy of the fine folks in my local tech-y Slack . Here we go: A .git-blame-ignore-revs file in your repository root let’s you ignore specific commits when doing a blame . This is particularly useful for cases where you e.g. enforce code formatting for the entire…
I attended an online workshop for Google’s Technical Writing One and it was a worthwhile use of time. I’m hoping to attend more of the online workshops in the future (see the schedule ) but in the mean time, here’s some notes that I jotted down during it. Lesson: https://developers.google.com/tech-writing/onel Which terms do different audiences know? Know : At least 90% of people in this target…
At a personal level, I’m pretty into domains. I collect ’ em like they’re… sliced bread…? I dunno, that saying doesn’t quite stick there. Unfortunately, I have concerns about a couple TLDs (top level domains). Specifically, ccTLDs, where the “ cc” stands for “ country code” as in the ISO country code: .af for Afghanistan and .io for (the British) Indian Ocean (Territory). .af simply boils down to…
Welp, missed my first week. Oh well. I’ll just kinda bundle it up briefly here. 2024-W41 in brief: saw Marianas Trench live, celebrated my SO’s birthday, ate some great food (including crème brulée that I made!), and bought the cheapest set of winter tires I could find for the Insight. Also, did more part-time contract work and got a full-time job offer. 2024-W42 in brief: got the new winter tires…
I wrote about escaping in-app browsers several months ago and have some updates to deliver on, courtesy once again of Shalanah . Android: improved intent links Here’s the relevant GitHub thread but the tl;dr is: -intent:https://example.com#Intent;end +intent://example.com#Intent;scheme=https;end No great documentation, but it generally seems like it’s more well-supported by in-app browsers. Of…
I just found out about Robb Knight’s slashpages.net when I was mentioned in a PR to add slash pricing to the site. I love this project since these “ slash pages” as they’re called have taken off in popularity, particularly within the IndieWeb community that I’ve sort of found myself in. You can read Robb’s post announcing the project earlier this year. This sort of reminds me of the pseudo…
W40 reminds me of WD-40. Anyways, I’m writing this late compared to previous weeks. As in, morning of the publish time. :) Reading Got my copy of Brian’s Approachable Open Source which included meeting up with him in person and scoring a personalized note and signature. Thanks Brian, it’s always a pleasure! :) Writing Behind the scenes I’m still working on my post for InsightFest. Got caught up in…
I think about it often: my first tech job and the email that helped me get it. I picked up programming in high school, first learning to write in a scripting language called Lingo for Macromedia Director MX. Macromedia was acquired by Adobe for their better-known products Flash & Shockwave. At school we used Director to run an interactive kiosk in the building lobby for games, music, and…
While reading “ Why I still blog after 15 years” I came across the section mentioning writing blog content in Djot instead of Markdown and I was instantly intrigued. There was a Hacker News thread back in late 2022 that I clearly missed. The main selling point, for me, is that 1) John MacFarlane (JGM) is behind it (same person behind CommonMark and Pandoc) and 2) it’s a more strict Markdown syntax…
Technically, last week is when fall was Official™ but I’m really starting to notice it now. Crunchy leaves and the trees are starting to turn. It’s also turbo weather and time to make chili & bread. Reading The “ Wordpress drama” has been poppin’ off across my feed. I’m curious to see what the fallout ends up being. I should be getting my copy of Approachable Open Source very soon 1 and am looking…
This week at JavaScriptMN Shalanah Dawson brought up the Interop Project which is focused on improving interoperability within web browsers. Shalanah has been submitting multiple proposals for things that could be improved upon by browser vendors collectively. This ranges from things like SVG stroke-alignment to the Vibration API . I personally think this is a great initiative and am looking…
I was recently looking over a code review in the wild and was particularly fascinated when code resembling the following was proposed: // Inside of a parent `async` function ( async () => { await myLibrary.someCleanUpFunction(); await myOtherLibrary.anotherOne(); })().catch( console .error); It’s a pattern that I haven’t seen much of before: doing the async IIFE pattern inside the body of an async…
tl;dr if: github.ref == 'refs/heads/master' I wanted to decouple the build and deploy steps in one of my personal projects for the sake of being able to have confidence when doing code changes but limit actual deploys to commits to the main default branch (in this repository’s case master ). Here’s the diff: # .github/workflows/ci.yml name: CI on: push: branches: [ master ] + pull_request:…
I think I’ve heard somewhere that it takes 3 weeks to build a habit. Well, this is that 3rd week of weeknotes. Unfortunately, also in my experience, it’s even easier to drop habits… I generally check my site analytics weekly-ish and noticed two recent posts were getting slightly more traction than I would expect and traced it back to some organic backlinks:…
First week of this felt successful, so we’re gonna keep on keepin’ on. Back in 6th grade I had a wonderful teacher, Mr. Bricker, who taught science and part of the class included keeping a “ Science Journal” which IIRC we were supposed to fill out daily. I struggled with it initially because I would feel like I didn’t have anything to write about. But as the school year went on it became easier…
tl;dr arch -x86_64 /usr/bin/env bash . I recently onboarded on to a new project and the hardest part of setting up my local environment was installing the correct Node version. Sigh… Normally, this is a breeze with nvm . I’ve even written about it , that’s how much I love it. However, this project is on a Node 14 which is 1) long since deprecated and 2) not natively supported by the ARM…
This is my first attempt at doing weeknotes. It’s giving journal-y vibes mixed with daily standup “ what did you do yesterday? what are you doing today?” Q&A. Weird week with the US holiday (Labor Day) on Monday. Ultimately a very condensed week, which isn’t strictly a bad thing. Just different and busy with plenty going on the next couple weeks. Reading Trying to read Red Rising for my friend…