A software developer and a technical lead. I take special interest in databases, web development, software design and performance tuning.

Joined September 2014
Pinned Tweet
πŸ˜πŸ“–Just published a new article that re-introduces one of the most unpopular index types in #PostgreSQL: the Hash index!🌿#️⃣ Hash index was highly discouraged in the past, but now it can out-perform even a B-Tree index! hakibenita.com/postgresql-ha… Co-authored by @michristofides
2
15
55
πŸ“£ I'm giving two talks in #FOSDEM this year on Feb 7: πŸ“Ί Some SQL Tricks of an Application DBA (10:00 GMT+1, PostgreSQL devroom) πŸ“Ί Practical advice for using Mypy (11:00 GMT+1, Python devroom) The talks are free, and no need to register in advance! fosdem.org/2021/schedule/spe…
1
4
16
πŸ“’ A bit late to the party, but important nonetheless... My 2020 Year in Review hakibenita.com/2020-year-in-…
1
0
2
Just spent a lovely morning doing some autovacuum calculations... A query on a large update-intensive table was very fast on old time ranges, but very slow on recent time ranges. Recent ranges completed in 80s, older in just a few seconds... πŸ‘‡πŸ‘‡πŸ‘‡
1
0
3
We noticed that recent ranges did significantly more IO, and noticed that these ranges were added after the last autovaccum. After vacuuming the query completed in third the time πŸš€ Not the silver bullet we were hoping for, and I still can't explain the diff, but it's a start!
1
0
2
Good advice! I ditched REST many years ago, and I've been implementing RPC style API's instead. Much more flexible and extendable. No reason to be restricted by just four verbs...
πŸ₯·I don't build a CRUD APIs I don't use PUT & PATCH I build APIs using commands and queries, POST & GET 🧡 This is how & why I do it πŸ‘‡ #100DaysOfCode #100DaysOfMLCode #Python
Show this thread
4
8
15
πŸ“– 🐍 Just published a new article on exhaustiveness checking with Mypy. If you are *still* not using type annotations in python, maybe this will convince you...πŸ˜‰ Check it out πŸ‘‡ hakibenita.com/python-mypy-e…
2
16
69
Good discussion on lobsters... commenters raised some good points so I made some edits to the article: 1. Improve error message from assert_never 2. Raise AssertionError instead of assert to prevent it from being removed by the -O flag lobste.rs/s/1un01t/exhaustiv…
0
0
0
I'm giving a talk on #PostgresBuild2020 this Wednesday about common mistakes and missed optimization opportunities in #SQL... Sign up if you are interested, it's free!
2
0
22