October 2025
-
27 Oct 2025🔗Batch updates and advanced inserts in Ecto for Elixir
-
24 Oct 2025🐥Filtering users without a specific association in SQL
-
23 Oct 2025🔗Subtleties of SQLite indexes
-
22 Oct 2025🔗The hidden cost of MySQL defaults in Laravel apps
-
17 Oct 2025🐥Why global scopes in Laravel are a good idea
-
16 Oct 2025🔗Small data
-
15 Oct 2025🐥Speeding up large Eloquent IN queries with temporary tables
-
12 Oct 2025🔗Redis is fast - I'll cache in Postgres
-
11 Oct 2025🔗Why I keep business logic out of SQL
September 2025
-
27 Sep 2025🔗SQL performance improvements: finding the right queries to fix (part 1)
-
26 Sep 2025🐥Making a copy of a MySQL database
-
25 Sep 2025🔗UUIDv7 comes to PostgreSQL 18
-
24 Sep 2025🔗Using select_merge in Ecto for flexible aggregates
-
23 Sep 2025🔗Masterclass common table expressions CTEs) in SQL: from theory to practice with Elixir Ecto
-
18 Sep 2025🐥Adding an average column to SQL query results with window functions
-
17 Sep 2025🔗Inside ClickHouse full-text search: fast, native, and columnar
-
16 Sep 2025🔗Can you use ClickHouse for vector search?
-
14 Sep 2025🔗Why auto increment is a terrible idea
August 2025
-
31 Aug 2025🔗Why I don't use down migrations
-
29 Aug 2025🐥Granting a user privileges on a PostgreSQL database
-
24 Aug 2025🔗Handling unique indexes on large data in PostgreSQL
-
22 Aug 2025🔗37 things I learned about information retrieval in two years at a vector database company
-
4 Aug 2025🔗How to change a field type in an Ecto embedded schema with a migration
-
3 Aug 2025🔗The repository pattern, Ecto, and database-less testing