$ ls -la blog/

## Recent Posts

September 21, 2025
This weekend I explored NotebookLM, an AI-powered research assistant designed to work directly with your own materials. By uploading documents, PDFs, links, or videos, you can generate tailored outputs such as summaries, study guides, audio overviews, or even structured mind maps. To test it out, I chose the Rails 8 release notes, a resource that’s...
September 20, 2025
Rails 8 introduced a new rate_limit feature for controllers, which makes throttling requests much easier to implement and manage than that was back in the day. Instead of relying on middleware or third-party gems, you can now declare rate limits directly in your controllers and centralize how you respond when clients exceed them 🙂 A...
September 18, 2025
Inspecting hover-driven interfaces in DevTools can sometimes be very tricky. Many sites use JavaScript to control hover states, which means the usual “Force state > :hover” option doesn’t always work. The moment you move your mouse away, the element disappears, making it difficult to examine its structure or styles. A simple workaround is to briefly...
September 18, 2025
Designing for global audiences means thinking beyond left-to-right (LTR) text. Many languages, such as Arabic and Hebrew, use right-to-left (RTL) writing. Supporting RTL is crucial if you want your app or site to feel natural to those users. The CSS direction property controls the direction of text, table layout, and even grid columns. By default, MDN recommends...
September 15, 2025
Ruby On Rails developers often find themselves creating migrations with columns that need to be non-nullable, but the standard migration generator creates nullable columns by default. Instead of generating a migration and then manually editing the file to add null: false, you can specify this constraint right from the command line (thanks to this PR...
August 18, 2025
Today the team at Basecamp released Action Native Push. Action Native Push brings a much-needed boost to Hotwire Native developers by enabling seamless integration of push notifications directly from Rails. Previously, sending notifications involved complex infrastructure like Amazon SNS or Pinpoint, but this gem simplifies the process by connecting directly to Apple’s APNs and Google’s...
August 11, 2025
Recently, we ran into a usability issue in our app. When customers archived Widgets, the interface gave no indication that anything was happening until the process was fully complete. This caused confusion for our users, and in many cases they attempted to archive the same Widget more than once. Without any visual feedback...
August 11, 2025
Our friends over at thoughtbot have just released Top Secret. Top Secret is a Rubygem that redacts sensitive information from free text before that text gets sent off to an AI LLM for processing. For example: raw_text = "My SSN is 123-45-6789 and my name is Keyser Soze" filtered_text = TopSecret::Text.filter(raw_text) filtered_text.output # => "My...
August 11, 2025
If you are anything like me, you don't like screenshots cluttering your desktop. Unfortunately, the desktop is the default place to store screenshots in macOS, so this has to be changed. Our plan here is to create a screenshots folder on our Mac, then have macOS save screenshots there. Next up, we want to have...
August 5, 2025
Model Context Protocol servers represent a significant leap forward in AI tooling. Rather than operating in isolation, Claude Code can now access your filesystem, control web browsers, analyze websites, and perform complex data processing tasks. This integration creates a seamless workflow where your AI assistant becomes an active participant in your development process rather than...
→ 42 total posts | Showing 11-20

$ Pages:


  • Finder
    Finder
  • Jesse Waites
    Jesse Waites
  • Xcode
    Siri
  • Simulator
    Simulator
  • Testflight
    Testflight
  • SF Symbols
    SF Symbols
  • Icon Composer
    Icon Composer
  • Sketch
    Sketch
  • VS Code
    VS Code
  • Postgres
    Postgres
  • Android Studio
    Android Studio
  • Trash
    Trash