developer blog

151 postsrss

  1. how i use openclaw

    openclaw tutorial: my setup for an ai assistant that handles tasks, calendar, finances, and more

  2. agentic coding is the default

    a brief exploration of how i write code in 2026.

  3. my talk from hono conference 2025

    a link to the slides and a brief overview of what i talked about at hono conference 2025.

  4. closing a cleaning company

    reflections on one of my 2025 projects, and why it didn't work out

  5. how i'm doing plain-text accounting

    getting started with hledger for bookkeeping

  6. re-encoding a media library

    notes on considering av1 encoding for my plex library

  7. ecovacs goat a3000 review

    my experience with a robot lawn mower

  8. four ideas from extensive claude code usage

    four practical ideas for getting more out of claude code, from planning workflows to memory and tool usage.

  9. setting up teslamate with docker and proxmox

    using proxmox, docker, and tailscale to self-host teslamate in your home network

  10. rewriting functionality with claude code

    claude code's coding agent is great for meaningful but non-essential code rewrites

  11. building a cleaning company

    documenting my wip experience building a home service business

  12. "act as my personal strategic advisor"

    a cool ai prompt to help you make decisions.

  13. image binding in workers

    how to use cloudflare images bindings in workers to watermark and transform images on your site.

  14. redesigning

    thoughts on application facelifts.

  15. programatically generated weather svgs

    using workers to generate weather svgs for my newsletter

  16. diy error monitor

    building a diy error monitor for serverless applications using cloudflare tail workers, deepseek, and slack

  17. san marcos tx life

    building a local newsletter for san marcos, tx.

  18. the switch to linear

    i switched everything in my life to linear - here's why.

  19. sleepy time tea

    my recipe for tea at nighttime.

  20. caching middleware with deepseek and workers

    building an ai-powered caching layer for "smarter" (this is questionable) content delivery

  21. integrating workers assets with fullstack apps

    how to integrate workers assets, service bindings, and full-stack apps

  22. recursively transcode flac files to mp3

    a quick script for recursively transcoding lossless flac files to mp3

  23. my morning coffee

    my morning coffee routine.

  24. about

    about kristian freeman

  25. date and time numbers cheatsheet

    a list of date and time numbers that all programmers should know

  26. how to generate types for a supabase project

    learn how to generate types for a supabase project using the supabase cli.

  27. how to filter shell output with grep

    embracing the unix philosophy and some basic grep tricks to easily scan noisy logs.

  28. running a ruby on rails application in nix

    a minimal configuration for running a ruby on rails application in nix

  29. beverage hydration index

    why coca-cola may be better than water.

  30. just enough obsidian

    more about my obsidian process: themes, plugins, styling, best practices.

  31. my starter macos nix config

    what i used on a new macos machine to write and publish this post.

  32. message of the day

    different ways to implement the 'message of the day' in unix machines

  33. success with obsidian

    maybe the trick is just to write about and document things you actually care about.

  34. effective web clipping with obsidian

    how to make custom clipping templates with obsidian web clipper

  35. install fonts with homebrew

    how to install most fonts in a single command, using homebrew.

  36. get started with 𝕏 ai and grok

    an introduction to 𝕏 ai and the grok foundational models, with sample code.

  37. how i record videos

    a description of my process for recording videos for software developers, in 2024.

  38. m4 macs

    some brief thoughts on the new mac hardware announced this week.

  39. tailwind child selectors

    how to use child selectors in tailwind css 3.1+.

  40. workers entrypoints

    a cloudflare workers application can have multiple entrypoints, allowing for different usage patterns.

  41. an introduction to cloudflare workflows

    how to get started with a great new feature in cloudflare's developer platform.

  42. announcing the astro cloudflare redirects integration

    a plugin for astro to automatically generate redirects using cloudflare's _redirects file specification.

  43. recommended icon libraries

    a rundown of three icon libraries i recommend for react/webdev projects.

  44. donor advised funds

    a tax-advantaged investment vehicle for charitable donations.

  45. building an indexer

    an open-source solution for indexing your site.

  46. effective indexing

    strategies for improving your site's seo and indexing.

  47. the astro rewrite

    migrating my blog from bearblog.dev to astro.

  48. shipfast vulnerabilities

    a look at the vulnerabilities in shipfast.

  49. the mcmaster-carrification effect

    improving this site with tweaks inspired by mcmaster-carr.

  50. building your own radio network with liquidsoap

    building a localhost radio empire.

  51. releasing my bearblog chrome extension

    a chrome extension for navigating bearblog.

  52. defer loading css with one line of code

    how to defer css loading with one line of code.

  53. increasing lighthouse score to 100

    some performance tricks for improving the lighthouse score of this site.

  54. understanding astro's getstaticpaths function

    how to use one of astro's most powerful features for static site generation.

  55. an introduction to astro's content system

    an in-depth look at how to use astro's powerful content system.

  56. how to add cloudflare turnstile to your ruby on rails application

    adding protection to your rails app with cloudflare turnstile.

  57. the big bearblog syntax highlighting hack

    a terribly convoluted way to add syntax highlighting to bearblog.

  58. how to use lucide icons via a cdn

    a simple way to use lucide icons in situations where you can't use npm.

  59. just enough zustand

    an introduction to zustand, a great state management library for react.

  60. the quest for pure aspirin

    sourcing high quality aspirin powder.

  61. deploying astro applications to cloudflare

    details on how to deploy full-stack astro apps to cloudflare.

  62. shadcn/ui review

    a quick review of an excellent react ui library.

  63. create a zellij instance with a useful session name

    fixing one of zellij's annoying quirks.

  64. creating a custom post list page in bear

    how to add custom pages to bearblog for a specific tag.

  65. blog rss auto-backlinks on a github repo

    a tricky hack for adding backlinks to a github repo.

  66. idgaf git commit

    a quick way to commit early, and often.

  67. shopping list of non-toxic products

    a running list of health products i'm using, primarily around eliminating toxic pufas.

  68. recent developer tool discoveries

    some tools i've discovered recently that have improved my development experience.

  69. what to do with a newsletter?

    a thought on the value of newsletters.

  70. digital throwaways, physical keepsakes

    collecting physical media, versus staying fully digital.

  71. full-stack development is a superpower

    developers: invest in full-stack development skills.

  72. replaying majora's mask

    a great way to replay one of the greatest video games ever made.

  73. second brain alternative

    what if we don't need a second brain?

  74. what comes next after simple chat uis in ai?

    a look at the next step in developing with ai.

  75. quick review of zellij

    reviewing a modern terminal multiplexer.

  76. llms and voice are really something else

    a look at how to use llms with voice.

  77. shipfast and the world of starter kits

    what is the value of a starter kit for builders?

  78. the whoop is quite cool

    a review of the whoop fitness tracker.

  79. a great usage of qr codes in the real world

    a look at how i built tools for managing my home using qr codes.

  80. authenticity and producing content as a developer advocate

    some unstructured thoughts on working as a developer advocate in 2024.

  81. second brain-less

    thoughts on obsidian and the "second brain" process.

  82. domain ranking experiment

    a continuous experiment to increase the domain ranking of this site.

  83. roms

    downloading roms at scale.

  84. youtube music

    a process for collecting music from youtube, for the completionists.

  85. building a sharex-style screenshot workflow on macos

    how to build a workflow similar to the windows app sharex on macos, including uploads, custom hostnames, and clean urls.