Не обижайте Django
Чем популярнее становится FastAPI, тем сильнее критикуют Django. И не просто критикуют. Брезгуют? Пренебрегают? Всего понемножку. Всё чаще слышу, что Django - пережиток прошлого. Любой проект на Django - устаревший мусор. Любой "джанговод" - просто не знает, что тоже устарел. Объективно ли это? Нет, не объективно. Если отвёртка плохо забивает гвозди, это не значит, что отвёртки устарели — просто это не их задача.
Читать: https://habr.com/ru/articles/959114/
#ru
@django_prog | Другие наши каналы
Чем популярнее становится FastAPI, тем сильнее критикуют Django. И не просто критикуют. Брезгуют? Пренебрегают? Всего понемножку. Всё чаще слышу, что Django - пережиток прошлого. Любой проект на Django - устаревший мусор. Любой "джанговод" - просто не знает, что тоже устарел. Объективно ли это? Нет, не объективно. Если отвёртка плохо забивает гвозди, это не значит, что отвёртки устарели — просто это не их задача.
Читать: https://habr.com/ru/articles/959114/
#ru
@django_prog | Другие наши каналы
«Автопилот» для HeadHunter — как я потратил 100 часов на бота- чтобы сэкономить тысячи часов айтишникам на поиске работы
Привет- Хабр!
Поиск работы – это... боль. Нет- не так. Это – ад.
Это бесконечный скроллинг- десятки открытых вкладок.
Это "Tinder-свайпинг" вакансий- где ты 200 раз жмешь "Нет" и 10 раз "Да"- чтобы получить 0 ответов.
Это ручное написание "Здравствуйте- [Имя рекрутера]- меня заинтересовала вашу вакансия..." – 50 раз в день.
Это тошнотворное состояние- когда ты- квалифицированный инженер- тратишь 80% времени не на решение задач и подготовку к собеседованиям- а на тупую- механическую работу по "кликанью".
Я – инженер. Я должен был это автоматизировать.
Есть золотое правило- Любая повторяющаяся рутинная задача должна быть автоматизирована.
Я решил- что мой следующий поиск работы не будет таким. Я создам свою "идеальную" систему.
Читать: https://habr.com/ru/articles/961496/
#ru
@django_prog | Другие наши каналы
Привет- Хабр!
Поиск работы – это... боль. Нет- не так. Это – ад.
Это бесконечный скроллинг- десятки открытых вкладок.
Это "Tinder-свайпинг" вакансий- где ты 200 раз жмешь "Нет" и 10 раз "Да"- чтобы получить 0 ответов.
Это ручное написание "Здравствуйте- [Имя рекрутера]- меня заинтересовала вашу вакансия..." – 50 раз в день.
Это тошнотворное состояние- когда ты- квалифицированный инженер- тратишь 80% времени не на решение задач и подготовку к собеседованиям- а на тупую- механическую работу по "кликанью".
Я – инженер. Я должен был это автоматизировать.
Есть золотое правило- Любая повторяющаяся рутинная задача должна быть автоматизирована.
Я решил- что мой следующий поиск работы не будет таким. Я создам свою "идеальную" систему.
Читать: https://habr.com/ru/articles/961496/
#ru
@django_prog | Другие наши каналы
Как стримить большие ответы в Django через StreamingHttpResponse и async-генераторы
Привет, Хабр!
Сегодня рассмотрим решение одной непростой задачи, как в Django выдавать очень большие объёмы данных, например, выгрузку в CSV или потоковый JSON-формат NDJSON) так, чтобы сервер не ложился от нагрузки, а пользователи быстрее получали первые данные. Разберём, как использовать
Подробнее о стриминге
Читать: https://habr.com/ru/companies/otus/articles/960036/
#ru
@django_prog | Другие наши каналы
Привет, Хабр!
Сегодня рассмотрим решение одной непростой задачи, как в Django выдавать очень большие объёмы данных, например, выгрузку в CSV или потоковый JSON-формат NDJSON) так, чтобы сервер не ложился от нагрузки, а пользователи быстрее получали первые данные. Разберём, как использовать
StreamingHttpResponse и генераторы (в том числе асинхронные) для стриминга больших ответов и поговорим нюансах. Подробнее о стриминге
Читать: https://habr.com/ru/companies/otus/articles/960036/
#ru
@django_prog | Другие наши каналы
Почему ваш AI-ассистент пишет «вырвиглазный» код, и как это исправить грубой силой
Технически это называется «неконсистентный». А по-человечески — боль. Делюсь рабочим, хоть и неидеальным, способом её лечения.
Читать: https://habr.com/ru/articles/962490/
#ru
@django_prog | Другие наши каналы
Технически это называется «неконсистентный». А по-человечески — боль. Делюсь рабочим, хоть и неидеальным, способом её лечения.
Читать: https://habr.com/ru/articles/962490/
#ru
@django_prog | Другие наши каналы
Как собрать платный AI-микро-SaaS (Next.js + Django + ЮKassa + Web Stories) и не застрять в пет-проекте
Большинство наших «проектов мечты» умирают не потому, что идея плохая, а потому что мы останавливаемся на уровне «ну вот, фронт есть, бэк вроде тоже, как-нибудь допилю оплаты и выложу». Не допиливаем. Потому что платежи, вебхуки, витрина, SEO, публикации — это уже не «интересный код», а «организационная скука».
Проект как раз про то, чтобы скучное сделать готовым и многоразовым. Мы один раз собираем связку: AI → Django/DRF → ЮKassa → деплой → Web Stories → SEO, а дальше в неё можно подставлять вашу идею — не только Mermaid. Mermaid здесь как манекен: на нём удобно показывать, куда вешать оплату, куда прикручивать экспорт, где пускать трафик.
Если у вас в голове крутится мысль «я бы запустил свою фичу, если бы была готовая дорожка к деньгам» — это она.
Читать: https://habr.com/ru/articles/963420/
#ru
@django_prog | Другие наши каналы
Большинство наших «проектов мечты» умирают не потому, что идея плохая, а потому что мы останавливаемся на уровне «ну вот, фронт есть, бэк вроде тоже, как-нибудь допилю оплаты и выложу». Не допиливаем. Потому что платежи, вебхуки, витрина, SEO, публикации — это уже не «интересный код», а «организационная скука».
Проект как раз про то, чтобы скучное сделать готовым и многоразовым. Мы один раз собираем связку: AI → Django/DRF → ЮKassa → деплой → Web Stories → SEO, а дальше в неё можно подставлять вашу идею — не только Mermaid. Mermaid здесь как манекен: на нём удобно показывать, куда вешать оплату, куда прикручивать экспорт, где пускать трафик.
Если у вас в голове крутится мысль «я бы запустил свою фичу, если бы была готовая дорожка к деньгам» — это она.
Читать: https://habr.com/ru/articles/963420/
#ru
@django_prog | Другие наши каналы
Я устал кликать по HH — отдал это Gemini и получил 7 инвайтов за 3 дня
Привет Хабр!
Давайте честно, поиск работы - это ад. Я инженер и я ненавижу рутину. А поиск работы - это 90% тупого кликанья.
Открыть 50 вкладок - 50 раз написать "Здравствуйте- меня заинтересовало..." - 50 раз скопировать-вставить. Это выжигает.
Можно конечно написать автокликер, который будет спамить "пустышками". Но рекрутеры не дураки - такие отклики летят в мусор. А "ручной" режим- это 3-4 часа в день.
Я понял - что должен быть третий путь. Не просто автоматизация - а умная автоматизация.
Читать: https://habr.com/ru/articles/963512/
#ru
@django_prog | Другие наши каналы
Привет Хабр!
Давайте честно, поиск работы - это ад. Я инженер и я ненавижу рутину. А поиск работы - это 90% тупого кликанья.
Открыть 50 вкладок - 50 раз написать "Здравствуйте- меня заинтересовало..." - 50 раз скопировать-вставить. Это выжигает.
Можно конечно написать автокликер, который будет спамить "пустышками". Но рекрутеры не дураки - такие отклики летят в мусор. А "ручной" режим- это 3-4 часа в день.
Я понял - что должен быть третий путь. Не просто автоматизация - а умная автоматизация.
Читать: https://habr.com/ru/articles/963512/
#ru
@django_prog | Другие наши каналы
Почему я отказался от ORM в пользу чистого SQL
Во время выполнения очередного проекта мне пришлось работать с Битрикс ORM, при этом параллельно в системе был инстанс Laravel. Две разные ORM работали с единой базой данных. Не буду вдаваться в причины, по которым был выбран такой подход, и воздержусь от его оценки. Суть в том, что мне приходилось одновременно работать с двумя принципиально разными системами. Этот опыт привел меня к фундаментальному выводу: ORM — не для меня.
Почитать мнение
Читать: https://habr.com/ru/companies/betboom/articles/959322/
#ru
@django_prog | Другие наши каналы
Во время выполнения очередного проекта мне пришлось работать с Битрикс ORM, при этом параллельно в системе был инстанс Laravel. Две разные ORM работали с единой базой данных. Не буду вдаваться в причины, по которым был выбран такой подход, и воздержусь от его оценки. Суть в том, что мне приходилось одновременно работать с двумя принципиально разными системами. Этот опыт привел меня к фундаментальному выводу: ORM — не для меня.
Почитать мнение
Читать: https://habr.com/ru/companies/betboom/articles/959322/
#ru
@django_prog | Другие наши каналы
Разбираю свой фотоархив
Сделал поиск по личному архиву фотографий с применением трех нейросетей, векторного расширения к PostgreSQL и Django
Читать: https://habr.com/ru/articles/963874/
#ru
@django_prog | Другие наши каналы
Сделал поиск по личному архиву фотографий с применением трех нейросетей, векторного расширения к PostgreSQL и Django
Читать: https://habr.com/ru/articles/963874/
#ru
@django_prog | Другие наши каналы
Первый взгляд на новые фоновые задачи в Django 6.0
Команда Python for Devs подготовила перевод статьи о новых фоновых задачах в Django 6.0. Фреймворк наконец получил встроенный API для очередей задач — но без воркеров, так что чудес пока ждать рано. Автор показывает, зачем это обновление всё равно важно, как оно работает внутри и что можно построить поверх него уже сегодня.
Читать: https://habr.com/ru/articles/972320/
#ru
@django_prog | Другие наши каналы
Команда Python for Devs подготовила перевод статьи о новых фоновых задачах в Django 6.0. Фреймворк наконец получил встроенный API для очередей задач — но без воркеров, так что чудес пока ждать рано. Автор показывает, зачем это обновление всё равно важно, как оно работает внутри и что можно построить поверх него уже сегодня.
Читать: https://habr.com/ru/articles/972320/
#ru
@django_prog | Другие наши каналы
Как использовать асинхронные вьюхи в Django 5.1 с примерами кода
Разберитесь с асинхронным программированием в Django 5.1: работа с async-вьюхами, ORM-запросами и системой миграций. Готовые примеры кода, решение типичных ошибок и лучшие практики для веб-разработчиков.
Читать: «Как использовать асинхронные вьюхи в Django 5.1 с примерами кода»
#ru
@django_prog | Другие наши каналы
Разберитесь с асинхронным программированием в Django 5.1: работа с async-вьюхами, ORM-запросами и системой миграций. Готовые примеры кода, решение типичных ошибок и лучшие практики для веб-разработчиков.
Читать: «Как использовать асинхронные вьюхи в Django 5.1 с примерами кода»
#ru
@django_prog | Другие наши каналы
Увольте своих программистов. Или спросите их…
В каждой компании есть один странный ритуал. Он происходит тихо, почти интимно: менеджеры склоняются над очередным отчётом о сроках, разработчики молча листают тикеты, и все делают вид, что корабль идёт вперёд, хотя штурман давно гребёт в сторону. Это напоминает старый анекдот про то, как команда чинит дырявую лодку на воде, параллельно обсуждая дизайн будущей яхты.
В этом и есть суть современной разработки: бесконечный ремонт, замаскированный под «инновации».
Читать: https://habr.com/ru/articles/975140/
#ru
@django_prog | Другие наши каналы
В каждой компании есть один странный ритуал. Он происходит тихо, почти интимно: менеджеры склоняются над очередным отчётом о сроках, разработчики молча листают тикеты, и все делают вид, что корабль идёт вперёд, хотя штурман давно гребёт в сторону. Это напоминает старый анекдот про то, как команда чинит дырявую лодку на воде, параллельно обсуждая дизайн будущей яхты.
В этом и есть суть современной разработки: бесконечный ремонт, замаскированный под «инновации».
Читать: https://habr.com/ru/articles/975140/
#ru
@django_prog | Другие наши каналы
Django 6.0: эволюция фреймворка в деталях
Команда Python for Devs подготовила перевод обзора обновлений Django 6.0. В свежем релизе фреймворк усиливает совместимость между СУБД, упрощает работу с email, улучшает ORM, добавляет удобства в шаблонах и снижает риск «выгорания» первичных ключей.
Читать: https://habr.com/ru/articles/975472/
#ru
@django_prog | Другие наши каналы
Команда Python for Devs подготовила перевод обзора обновлений Django 6.0. В свежем релизе фреймворк усиливает совместимость между СУБД, упрощает работу с email, улучшает ORM, добавляет удобства в шаблонах и снижает риск «выгорания» первичных ключей.
Читать: https://habr.com/ru/articles/975472/
#ru
@django_prog | Другие наши каналы