Blog
Thoughts, tutorials, and insights from my development journey
Storing Nested JSON Without Re-Serialization Costs Using RedisJSON
Store and update deeply nested JSON documents atomically in Redis without fetching and re-serializing the whole object. Learn JSON.SET, JSON.GET, JSON.NUMINCRBY, and JSONPath.
Read MoreFull-Text Search with RedisSearch
Add sub-millisecond full-text search to Redis without a separate search engine. Learn FT.CREATE, FT.SEARCH with fuzzy matching, tag filters, and FT.AGGREGATE using RedisSearch.
Read MoreBuilding a Social Network Timeline with Redis List Data Type
Build a Twitter-like feed using Redis Lists and the fan-out on write pattern. Learn LPUSH, LRANGE, and LTRIM to deliver pre-computed timelines with a single O(N) read.
Read MoreData Analytics with Redis Time Series Data Type
Use RedisTimeSeries for metrics, IoT, and real-time analytics. Learn TS.CREATE, TS.ADD, TS.RANGE with aggregation, and automatic downsampling rules to keep storage lean.
Read MoreFinding Nearby Points with Redis Geospatial Index
Build store locators, ride-sharing, and proximity features with Redis. Learn GEOADD, GEODIST, and GEOSEARCH to find nearby locations in milliseconds across millions of points.
Read MoreReal-Time Messaging with Redis Pub-Sub
Broadcast real-time events with Redis PUBLISH and SUBSCRIBE. Learn channel and pattern subscriptions, cache invalidation broadcasts, and when to use Redis Streams instead.
Read MoreApproximate Cardinality of Large Sets Using Redis HyperLogLog
Count unique visitors, active users, and distinct events using only 12KB of memory. Learn PFADD, PFCOUNT, and PFMERGE to estimate cardinality with <1% error at any scale.
Read MoreReal-Time Leaderboard with Redis Sorted Sets
Build a globally-ranked leaderboard that updates in real time using Redis Sorted Sets. Learn ZADD, ZINCRBY, ZREVRANK, and ZREVRANGE to rank players in O(log N) time.
Read MoreRate Limiting Web Server Requests with Redis
Protect your API from abuse with Redis-backed rate limiting middleware. Implement per-IP and per-user limits with proper HTTP 429 responses and X-RateLimit headers in Express and Flask.
Read MoreRedis Session Store for Fast Retrieval and Update of User Data
Replace sticky sessions with a shared Redis session store. Learn HSET, HGETALL, and sliding EXPIRE for fast, horizontally-scalable user session management.
Read MoreRedis Rate Limiting and Request Throttling for Load Smoothening
Smooth traffic spikes with Redis-backed rate limiting. Compare fixed window, sliding window, and token bucket algorithms — with Python implementations for each approach.
Read MoreDistributed Locking with Redis to Orchestrate Access for a Shared Resource
Coordinate access to shared resources across distributed services with Redis. Learn the SET NX EX pattern, atomic Lua release scripts, and the Redlock algorithm for multi-node safety.
Read MoreRedis as a Message Queue for Asynchronous Processing
Use Redis Lists and Streams as a lightweight message queue. Learn LPUSH, BRPOP, LMOVE for reliable queues, and XADD/XREADGROUP for durable, consumer-group-backed job processing.
Read MoreRedis Caching: How to Cache Database Queries and Web Page Responses
Speed up your application with Redis caching. Learn the cache-aside pattern, SETEX with TTL strategies, write-through caching, and cache invalidation techniques to eliminate slow queries.
Read Moreavgr.app: The Stock Average Calculator That Shows You the Real Math Before You Buy
Discover how avgr.app helps investors calculate their exact new average price, break-even point, and diminishing-returns curve before averaging down on stocks, ETFs, or crypto — free, no account needed.
Read MoreChrome DevTools MCP vs agent-browser: Comprehensive Comparison Guide
In-depth comparison of Chrome DevTools MCP and agent-browser for AI-powered browser automation. Learn the key differences, installation guides, and which tool to choose for debugging vs production automation.
Read MoreTigerBeetle: High-Performance Financial Database for OLTP Workloads
Complete guide to TigerBeetle, a specialized financial database built for OLTP workloads. Learn about debit-credit accounting, performance optimization, safety guarantees, and real-world Elixir integration with payment processing examples.
Read MoreDetect Unused Public Functions in Elixir with This Simple Script
Learn how to identify and remove unused public functions in your Elixir codebase using a simple bash script. Improve code maintainability, reduce technical debt, and keep your project clean.
Read MoreEssential PostgreSQL Monitoring Extensions: pg_buffercache, pg_stat_statements, pgstattuple, pg_prewarm
Learn how to use PostgreSQL monitoring extensions pg_buffercache, pg_stat_statements, pgstattuple, and pg_prewarm to optimize database performance with practical examples.
Read MoreOban as an Event Bus: Decoupled Communication in Elixir Umbrella Apps
Learn how to use Oban as an event bus for loose coupling in Elixir umbrella projects. Master async communication patterns, job queues, and event-driven architecture with practical examples.
Read MoreDead Letter Queue Pattern with Broadway and RabbitMQ
Master the Dead Letter Queue pattern with Broadway and RabbitMQ. Learn retry strategies, exponential backoff, and failure isolation for resilient message processing in Elixir.
Read Moreexpand_ex: Transform Your Elixir Code Organization with Automated Alias Expansion
Learn how expand_ex simplifies Elixir refactoring, Phoenix Context migrations, and improves code maintainability with automated module alias expansion. Essential tool for large-scale refactoring.
Read MoreBuilding a Hall of Fame Leaderboard: Three Approaches Compared
Compare three approaches to building a high-performance Hall of Fame leaderboard: Cachex distributed cache, PostgreSQL transactions, and Redis sorted sets. Learn pros, cons, and performance trade-offs.
Read Morethree.quarks Particle Behaviors: Complete Animation Reference
Master particle behaviors in three.quarks. Learn force & motion, visual properties, animations, and advanced techniques for creating dynamic WebGL effects like fire, smoke, and explosions.
Read Morethree.quarks Particle System Configuration Guide
Master WebGL particle effects with three.quarks. Learn how to configure emitter shapes, emission patterns, and create stunning visual effects like fire, explosions, and smoke.
Read MorePostgreSQL Partitioning with pg_partman: Automate Partition Management
Master PostgreSQL partitioning with pg_partman. Learn how to automate time-based partition creation, implement retention policies, and optimize large table performance with practical examples.
Read MoreUnderstanding pg_repack: Eliminate PostgreSQL Table Bloat Without Downtime
Complete guide to pg_repack for PostgreSQL. Learn how to eliminate table and index bloat with minimal locking, understand the benefits over VACUUM FULL, and implement best practices.
Read MoreMastering Parameter Validation in Elixir Phoenix Controllers
Complete guide to parameter validation in Elixir Phoenix controllers using Ecto.Changeset. Learn practical implementation patterns for building robust APIs.
Read MoreBuilding Mazex: Maze Generation with Elixir
Exploring seven maze generation algorithms in Elixir, from Binary Tree to Wilson's algorithm. Learn how different approaches create unique patterns and performance characteristics.
Read MoreNo articles found
Try a different search term or clear the tag filter.