Standard.site blog posts now render on my personal website
I hadn't touched natespilman.com in a while, which felt silly and a little embarrassing, as my bsky handle is @natespilman.com. I've been poasting on Leaflet and Pckt (currently writing this on Pckt.blog), but my markdown based based blog site on my personal website has remained untouched. This morning I updated my blog to render standard.site documents and interweave them into my markdown based blog posts! It's so cool that this is all out in the open like this! edit: here is the commit on Gith...
Palm Springs recommendations for families with young kids
Nothing here feels zero sum
Every time someone builds something cool on ATProto, it makes it easier and more appealing to build the next thing on ATProto. I'm writing this because I set up my new https://blento.app/, and it's beautiful and I love it, but I hadn't posted anything on standard.site in a minute. So here I go - posting from pckt.blog. Gushing over the incredible state of the ATProto we're in now, and excited for the future.
Further ATProto exploration activity log
I've done a decent amount of digging around and creating in the ATProto space over the last few days. Quickly, and in no real order:
RFC: plyr.fm JavaScript SDK & Embeddable Web Components
Authors: Nate Spilman, Claude 4.6 OpusStatus: DraftDate: 2026-03-15 This RFC proposes a JavaScript/TypeScript package that provides: The headless SDK enables developers to build custom music UIs on top of plyr.fm data. The Web Components provide the canonical plyr.fm player experience as embeddable elements that work in React, Vue, Svelte, plain HTML, and any framework that renders DOM.
The Bluesky ecosystem has the juice (ATProto for normies)
An explanation for people who don't care about software protocols Bluesky is built on top of a new software protocol - https://atproto.com/ - for building distributed networks. If you're coming to Bluesky from X with zero care about the underlying tech, that's chill. Right now, your experience is basically the same. Under the hood, Bluesky is hosting your account information and everything. Just like X would. So, so far, same same. But here's where it starts getting cool.
This is a Canvas test
Can I really post a Leaflet canvas to my pckt blog?!
This is lovely
This is my first post on pckt.blog. My first impressions are positive. Things look nice. Everything seems to be put in an obvious place. Like, i click a dropdown and see my options and think "Right - that makes sense to be there." Here's an image. It's only here to demonstrate image add. It IS missing alt text adding, though, which feels like an oddly large accessibility miss.
How I reclaimed 27 GB on my 256 GB MacBook Air
Without losing any of my files
Grind 75 problem 13 - Letter Combination of a Phone Number
Grind 75 problem 12 - Rotting Oranges
Grind 75 problem 11 - 3 Sum
Grind 75 problem 10 - Middle of Linked List
Grind 75 problem 9 - Linked List Cycle
Grind 75 problem 8 - Word Break (Attempt 2)
Grind 75 problem 8 - Word Break (Failed attempt)
Grind 75 problem 7 - Container With Most Water
Grind 75 Problem 6 - String to Integer (atoi)
Grind 75 problem 5 - Ransom Note
https://leetcode.com/problems/ransom-note/
Grind 75 Problem 4 - Clone Graph
Grind 75 Problem 3 - Longest Palindromic Substring
Grind 75 Problem 2 - Longest Substring Without Repeating
Grind 75 Problem 1 - Two Sum
Grind 75 study plan
EPTSS - Automating project maintenance tasks with Github Actions
From database updates to automating email
EPTSS - Setting up Resend for email confirmation on signup
And setting myself up for the ability to send email at different events in the future
The Shapmer Bike Tour
EPTSS: beginning A Long December by Counting Crows
getting started on this round of Everyone Plays the Same Song
Well, I guess I use VIM now
enabling VIM keybindings in Obsidian
An intention to write more
Sharpening the axe vs cutting the tree
EPTSS: my finished cover of Hella Good by No Doubt
in the style of 'you'll come back' by Jigitz
Hella Good cover progress and TODOs pt 2
Hella Good cover progress and TODOs
For Everyone Plays the Same Song
Some musical sketches from last night
Messing around on my keyboard in Ableton
EPTSS - Staging environment testing plan
Ensuring stability of core features
How I'm planning on covering Hella Good by No Doubt
For Everyone Plays the Same Song
Migrating EPTSS Supabase instances
Moving the production instance off of my personal Supabase account
A mountain of personal projects
Back to working in the system
Supabase bucket storage extension in Raycast
Uploading and view media to and from my blog supabase bucket
Building my first Raycast Extension
and it was easier than I expected
How to make this website searchable
An exploration on exploration
Retrieving my recent blog posts with Raycast
Breaking ground on the blog "search" story
Creating a media upload script for Raycast
Building my Raycast tool belt
Falling in love with Raycast
My new control panel for anything I can think of
EPTSS - Staging environment plan & intro setup
setting up drizzle. Dropping my data (whoops).
Microfreak Vocoder exploration
with a $7 lav mic
Design updates on the blog
Hopefully things are now easier to read! ;-)
The Dip by Seth Godin
When to quit and when to commit
Getting working on Hella Good by No Doubt
Initial exporation
Hella Good by No Doubt - my initial thoughts
Hella Good is the cover song for round 25 of Everyone Plays the Same Song
EPTSS 24 - My Electric Feel Ableton Live session part 1
An overview of the different track groups that went into my Electric Feel cover
EPTSS round management process map
All the things I do to run EPTSS! Mostly email
More on scaling ETPSS - short term todos
An outline
Scaling Everyone Plays the Same Song
Want to talk scale? Let's talk scale
Using LangChain to make an information analyst
I'm working on a project with a friend that requires building "Custom GPTs" via the API
Integrating Posthog for traffic monitoring
My working document for setting up Posthog
Writing again in the new year
Kicking off the dust on this blog
initial 360 video learnings with the Meta Quest 3
What I've learned about the state of 360 video
My new go-to data layer is Drizzle + Turso
Typescript + Drizzle + Turso is a powerful delight
Recommendations for staying in North Lahaina
for my cousins and their two kids
Blog update - using pre-commit hook to upload local media to supabase bucket
Replacing the manual steps of uploading media and replacing the media references in my blog markdown files
Building an LLM application
Storing content as vector embeddings in Pinecone
Utility script - move files to my NAS's /archive directory
Save files to my desktop and move them when I want to
Pitch detection variance by buffer size
a slighty deeper dive into the imprecise pitch detection I've seen
Pitch tracking app: Fixing pitch issues
A quick fix, and learning about sound
Pitch tracking app: investigating incorrect pitch
isolating variables - the issue is in my fft function
Sending audio input to default output
aka, I can now hear what I'm sending in from Ableton
I can output audio from Ableton Live and into my Go Pitch Tracking application
more technical title - Reading audio input from BlackHole port device
Pitch Detection with Go
A minimal application to print out the incoming pitch from the microphone
Your reminder to write
a Norman Zammit inspired Obsidian Theme
A combination of inspirations
About Falling by Toneway
A write up about Toneway by Falling
Pop Off website update
An update on the technical progress of Pop Off, the pre-release song promotion site I'm working on for Toneway
Setting Myself up for Continued Momentum
A post about posting more
I set up streaming audio with ffmpeg and aws
I'm hype about this. First step to becoming Spotify.
Speeding up processing with Goroutines
How I increased the speed of my image processing application by 8x
A Markdown to Html transformation layer with `react-markdown`
I'm super pleased with how much control this gives me over my markdown render, which also being easy to use and unit test
Metadata Title now dynamically rendering at build time
An update from the previous post
Blog Improvement Opportunities
How can I make this easier for myself? How can I make this a better experience for the reader?
Editing Images in GoLang
A Showcase of outputs
A Welcome Refactor - Next.js now runs this website
a smol technical update, and a promise of more to come
Website redesign - a big thank you to Josh Struve
It turns out, working with a designer yields better results
Three Stages of the Software Development Journey
A high level roadmap for Software Engineer education
My favorite music production tutorial channels on YouTube
A list of my favorite teachers
Have a Spanish Degree? Teach ESL
Help those in need and actually speak Spanish again
How to Organize a Creative Project, Remotely
How 'Everyone Plays the Same Song' works
Revisiting CHOP
Capitol Hill Occupied/Organized Protest - Sunday June 14 from 11:00AM to 12:30AM
My time at CHAZ/CHOP
Capitol Hill Autonomous Zone / Occupied Protest - Friday June 12 from 10:00 to 11:30AM
A year as a Software Engineer
A crude list of what I've learned
Everyone Plays the Same Song
A fun and educational covers project
Guitar Education - Improvising on Mode Shapes
How to teach myself to know exactly where I am at all times on the neck...I hope...?
JPG Light Value Analysis with Python, PIL and MatPlotLib
Building a Histogram to analyze the light values of an image
My best-of beginner software development educational resources list
The educational resources that got me going
Adding Next and Previous post link to the blog
A seemingly hacky way to handle pagination
Playing chords with Mido and Python
Playing something that actually sounds musical
Generating a midi music stream with Python
using python package Mido to send midi information to midi player - an introduction