Почему Django говно...

...если смотреть на него в пятницу вечером, когда ты снова ищешь, где именно ORM спрятал лишние запросы.

Короткий вердикт

Django не плохой. Он просто часто бесит одними и теми же вещами: тяжёлой структурой, протекающей абстракцией ORM, шумными миграциями и привычкой тащить архитектуру в сторону “как задумали авторы”.

ORM Жалоба 01

SQL всё равно догонит

Самая частая претензия: ORM удобен до тех пор, пока запросы не становятся сложными. Потом всплывают select_related, prefetch_related, annotate, Subquery и старый добрый EXPLAIN.

Уровень боли 9/10
Архитектура Жалоба 02

Слишком много каркаса

Для маленького API Django часто ощущается как “сразу целый офис”. Приложения, настройки, middleware, management commands и миграции появляются ещё до первой полезной ручки.

Уровень боли 8/10
Миграции Жалоба 03

Миграции любят конфликтовать

Автогенерация помогает, но при параллельной разработке быстро приходят merge-конфликты, спорные rename-операции и ручные правки того, что “по идее должно было собраться само”.

Уровень боли 8/10
Async Жалоба 04

Async есть, но mental model уже сложнее

Django сильно продвинулся, но жалоба осталась: часть стека и пакетов по-прежнему sync-first. В итоге нужно помнить, где можно жить в async, а где лучше не пытаться.

Уровень боли 6/10
Шаблоны Жалоба 05

Template language слишком аскетичен

Идея простая и безопасная, но реальная боль знакома многим: чуть больше логики и ты уже пишешь custom tags, filters или тащишь подготовку данных глубже в view и сервисы.

Уровень боли 7/10
Admin Жалоба 06

Админка ускоряет старт, но растит долг

Быстрый win в начале проекта часто превращается в зоопарк логики внутри ModelAdmin, forms, signals и хуков. Работает быстро, поддерживается уже не так быстро.

Уровень боли 8/10
01
Главная шутка

Django чаще ругают не за то, что он ничего не умеет, а за то, что умеет слишком много и требует жить по уставу.

02
Главный факт

Большинство претензий повторяются из проекта в проект: ORM, миграции, тяжеловесный каркас и протекающая “магия”.

03
Честная приписка

Да, это шутка. Но именно поэтому она понятна всем, кто хотя бы раз дебажил Django в проде в 23:47.