Writing on software design, development and the sorts.

All of my long-form thoughts on programming, leadership, product design, and more, collected in chronological order.

Custom Elixir Loggers

Explore how to extend Elixir's logging capabilities by integrating with Discord. This blog post provides a step-by-step guide on creating a custom Elixir logger backend which sends log messages directly to a Discord channel. Learn about initializing the module, handling log events, formatting messages, and configuring your logger for effective real-time application monitoring and alerting through Discord.

Ignoring CORS

Discover an innovative approach to bypassing tedious manual downloads of AI-generated images with this guide. Facing the challenge of downloading over 400 images one by one from a website, this article introduces a clever use of JavaScript to automate the process, capturing image URLs and triggering downloads programmatically. The solution involves intercepting window opening calls, handling cross-origin errors, and executing a sequence to efficiently download all images. Learn how to streamline your workflow with this practical JavaScript hack, overcoming browser security restrictions for a smoother, more efficient bulk download process.

Mac Phoenix Dev Setup

Dive into setting up a seamless development environment tailored for Phoenix LiveView with this comprehensive guide. From installing Xcode command line tools to configuring your preferred code editor and database client, this post walks you through each step, ensuring you have everything you need for a complete development setup. The guide concludes with a ready-to-use script, simplifying the entire process and enabling you to jump straight into building real-time, interactive web applications with Phoenix LiveView. Perfect for both newcomers and seasoned developers, this tutorial promises an efficient and automated setup process.