The Curious Engineer

All blogs / Databases

Haki Benita

hakibenita.com

The writings of Haki Benita

DatabasesPythonPerformance / optimizationTesting / QA

Posts
68 from 4 Aug 2016 to 8 Jul 2026
Posting
now and then (3 in the last year)
Kind
personal blog
Feed
https://hakibenita.com/feeds/all.atom.xml

2026 3

  1. How to Achieve Pruning When Querying by Non-Partitioned Columns in PostgreSQL
  2. Row Locks With Joins Can Produce Surprising Results in PostgreSQL
  3. Unconventional PostgreSQL Optimizations

2025 2

  1. Reliable Django Signals
  2. How to Get Foreign Keys Horribly Wrong

2024 2

  1. How to Get or Create in PostgreSQL
  2. Fastest Way to Read Excel in Python

2023 1

  1. When Good Correlation is Not Enough

2022 2

  1. Future Proofing SQL with Carefully Placed Errors
  2. Handling Concurrency Without Locks

2021 7

  1. Index2
  2. Lesser Known PostgreSQL Features
  3. One Database Transaction Too Many
  4. Practical SQL for Data Analysis
  5. Exciting New Features in Django 3.2
  6. The Unexpected Find That Freed 20GB of Unused Index Space
  7. Re-Introducing Hash Indexes in PostgreSQL

2020 12

  1. Exhaustiveness Checking with Mypy
  2. The Surprising Impact of Medium-Size Texts on PostgreSQL Performance
  3. Simple Anomaly Detection Using Plain SQL
  4. Some SQL Tricks of an Application DBA
  5. Index3
  6. Stop Using datetime.now!
  7. How to Move a Django Model to Another App
  8. Testing an Interactive Voice Response System With Python and Pytest
  9. How to Provide Test Fixtures for Django Models in Pytest
  10. Using Markdown in Django
  11. Building an IVR System with Python, Django and Twilio
  12. Understand Group by in Django with SQL

2019 13

  1. 12 Common Mistakes and Missed Optimization Opportunities in SQL
  2. Preventing SQL Injection Attacks With Python
  3. How "Export to Excel" Almost Killed Our System
  4. Index4
  5. How to Get the First or Last Value in a Group Using Group By in SQL
  6. What You Need to Know to Manage Users in Django Admin
  7. Fastest Way to Load Data Into PostgreSQL Using Python
  8. Improve Serialization Performance in Django Rest Framework
  9. How to Let Google Know of Other Languages in Your Django Site
  10. How to Create an Index in Django Without Downtime
  11. How to Use Grouping Sets in Django
  12. It's Time to Own My Own Content
  13. Modeling Polymorphism in Django

2018 7

  1. How We Solved a Storage Problem in PostgreSQL Without Adding a Single Byte of Storage
  2. Index5
  3. Optimizing the Django Admin Paginator
  4. Be Careful With CTE in PostgreSQL
  5. Automating the Boring Stuff in Django Using the Check Framework
  6. 9 Django Tips for Working with Databases
  7. How to Add a Text Filter to Django Admin

2017 11

  1. Django Admin Range-Based Date Hierarchy
  2. Scaling Django Admin Date Hierarchy
  3. How We Replaced Dozens of Test Fixtures With One Simple Function
  4. How to Manage Concurrency in Django Models
  5. 5 Ways to Make Django Admin Safer
  6. Index6
  7. The Many Faces of DISTINCT in PostgreSQL
  8. All You Need To Know About Prefetching in Django
  9. How to Turn Django Admin Into a Lightweight Dashboard
  10. How to Test Django Signals Like a Pro
  11. Working With APIs the Pythonic Way

2016 7

  1. The Best New Feature in unittest You Didn't Know You Need
  2. Timing Tests in Python For Fun and Profit
  3. How to Add Custom Action Buttons to Django Admin
  4. Bullet Proofing Django Models
  5. Keeping Tests DRY with Class Based Tests In Python
  6. Index7
  7. Things You Must Know About Django Admin As Your App Gets Bigger

Undated 1

  1. Unsubscribe