Главное из мира Python за январь 2023
Раз в месяц мы в Moscow Python Podcast собираемся и обсуждаем новые релизы, PEP, заинтересовавшие нас инструменты и статьи. Под катом — текстовая выжимка из обсуждения.
Читать: https://habr.com/ru/articles/715646/
#ru
@django_prog | Другие наши каналы
Раз в месяц мы в Moscow Python Podcast собираемся и обсуждаем новые релизы, PEP, заинтересовавшие нас инструменты и статьи. Под катом — текстовая выжимка из обсуждения.
Читать: https://habr.com/ru/articles/715646/
#ru
@django_prog | Другие наши каналы
Использовать хранилище Django для хранения результатов Celery в Google Cloud
Тот, кто подключает Celery к Django, использует как правило, пакет django-celery-results для использования таблицы специальной модели Django в качестве хранилища результатов выполнения задач Celery.
Вероятно, через какое-то время, у вас возникнет желание заменить такую таблицу на что-то другое, например облачное хранилище. Приглашаю под кат всех заинтересованных.
Читать: https://habr.com/ru/articles/716202/
#ru
@django_prog | Другие наши каналы
Тот, кто подключает Celery к Django, использует как правило, пакет django-celery-results для использования таблицы специальной модели Django в качестве хранилища результатов выполнения задач Celery.
Вероятно, через какое-то время, у вас возникнет желание заменить такую таблицу на что-то другое, например облачное хранилище. Приглашаю под кат всех заинтересованных.
Читать: https://habr.com/ru/articles/716202/
#ru
@django_prog | Другие наши каналы
Как я собираю AI-интервьюера, чтобы имитировать собеседования
Несколько месяцев назад я поймал себя на мысли: я знаю свою профессию, читаю статьи, работаю в команде — но сто́ит заговорить о собеседованиях, появляется напряжение. Да, я не один такой: стресс, туманные ожидания от интервьюеров, неочевидные слабые места в знаниях. Решил попробовать подойти к подготовке иначе — с помощью AI. Ну все сейчас хотят ко всяким GPT по разным нуждам.
Читать: https://habr.com/ru/articles/924252/
#ru
@django_prog | Другие наши каналы
Несколько месяцев назад я поймал себя на мысли: я знаю свою профессию, читаю статьи, работаю в команде — но сто́ит заговорить о собеседованиях, появляется напряжение. Да, я не один такой: стресс, туманные ожидания от интервьюеров, неочевидные слабые места в знаниях. Решил попробовать подойти к подготовке иначе — с помощью AI. Ну все сейчас хотят ко всяким GPT по разным нуждам.
Читать: https://habr.com/ru/articles/924252/
#ru
@django_prog | Другие наши каналы
Django-easy-audit – быстрый способ собирать базовые продуктовые метрики
Спустя месяц после запуска своего pet-проекта прошла волна первых активных регистраций. Теперь встал вопрос отслеживания их вовлеченности. С базовыми метриками все понятно, а как реализовать технически? Делюсь своим маленьким скромным кейсом.
Читать: https://habr.com/ru/articles/924400/
#ru
@django_prog | Другие наши каналы
Спустя месяц после запуска своего pet-проекта прошла волна первых активных регистраций. Теперь встал вопрос отслеживания их вовлеченности. С базовыми метриками все понятно, а как реализовать технически? Делюсь своим маленьким скромным кейсом.
Читать: https://habr.com/ru/articles/924400/
#ru
@django_prog | Другие наши каналы
Как я встраивал wysiwyg редактор в свой django проект
Разрабатывая сервис генерации AI курсов, я столкнулся с тем, что мне захотелось решить вопрос с удобным редактированием уроков.
В моем сервисе есть два режима создания курсов - AI режим, это когда ты пишешь промпт или прикладываешь список тем, а нейросеть генерирует контент. Это подходит для самообучения. А второй режим для авторов - ты можешь взять свои наработки, скормить их вместе с промптом модели, а та выдаст результат. Так вот чтобы поделиться с другими юзерами таким курсом, хотелось бы иметь возможность отредактировать ответ модели, дополнить самому, да еще и оформить это все красиво, с заголовками, отступами, списками и прочими украшательствами.
Почитав разные статьи про то, какие есть редакторы, я остановился на TinyMCE.
Читать: https://habr.com/ru/articles/924648/
#ru
@django_prog | Другие наши каналы
Разрабатывая сервис генерации AI курсов, я столкнулся с тем, что мне захотелось решить вопрос с удобным редактированием уроков.
В моем сервисе есть два режима создания курсов - AI режим, это когда ты пишешь промпт или прикладываешь список тем, а нейросеть генерирует контент. Это подходит для самообучения. А второй режим для авторов - ты можешь взять свои наработки, скормить их вместе с промптом модели, а та выдаст результат. Так вот чтобы поделиться с другими юзерами таким курсом, хотелось бы иметь возможность отредактировать ответ модели, дополнить самому, да еще и оформить это все красиво, с заголовками, отступами, списками и прочими украшательствами.
Почитав разные статьи про то, какие есть редакторы, я остановился на TinyMCE.
Читать: https://habr.com/ru/articles/924648/
#ru
@django_prog | Другие наши каналы
Просветление через Код: Суть Django Revolution
Django Revolution — это не просто инструмент, это философия. Философия, где рутина уступает место творчеству, а баги растворяются в чистоте кода. Это путь к просветлению в разработке API. Примите его, и ваш код будет сиять, а дух разработчика — парить.
Наш мир, сотканный из битов и фантомных сущностей, породил нового Джинна, способного исполнять самые заветные желания Разработчика. Встречайте: Django Revolution – не просто библиотека, а откровение, мантра, ключ к вратам истинного дзен в мире Django API.
Читать: https://habr.com/ru/articles/926938/
#ru
@django_prog | Другие наши каналы
Django Revolution — это не просто инструмент, это философия. Философия, где рутина уступает место творчеству, а баги растворяются в чистоте кода. Это путь к просветлению в разработке API. Примите его, и ваш код будет сиять, а дух разработчика — парить.
Наш мир, сотканный из битов и фантомных сущностей, породил нового Джинна, способного исполнять самые заветные желания Разработчика. Встречайте: Django Revolution – не просто библиотека, а откровение, мантра, ключ к вратам истинного дзен в мире Django API.
Читать: https://habr.com/ru/articles/926938/
#ru
@django_prog | Другие наши каналы
5 архитектурных ошибок, которые мы совершаем на старте проектов
Какие архитектурные ошибки чаще всего совершают разработчики при запуске проектов и как их избежать? Разбираем пять критичных промахов, которые мешают продукту масштабироваться и усложняют поддержку.
Читать: «5 архитектурных ошибок, которые мы совершаем на старте проектов»
#ru
@django_prog | Другие наши каналы
Какие архитектурные ошибки чаще всего совершают разработчики при запуске проектов и как их избежать? Разбираем пять критичных промахов, которые мешают продукту масштабироваться и усложняют поддержку.
Читать: «5 архитектурных ошибок, которые мы совершаем на старте проектов»
#ru
@django_prog | Другие наши каналы
10 библиотек Python, которые меняют карьеру
10 библиотек Python, которые помогут прокачаться в аналитике, ML и разработке. Как они работают и почему меняют карьеру.
Читать: «10 библиотек Python, которые меняют карьеру»
#ru
@django_prog | Другие наши каналы
10 библиотек Python, которые помогут прокачаться в аналитике, ML и разработке. Как они работают и почему меняют карьеру.
Читать: «10 библиотек Python, которые меняют карьеру»
#ru
@django_prog | Другие наши каналы
Tproger
10 библиотек Python, которые меняют карьеру
10 библиотек Python, которые помогут прокачаться в аналитике, ML и разработке. Как они работают и почему меняют карьеру.
Меньше нагрузки — больше запросов: искусство кеширования API
Привет! Меня зовут Дима, я Backend-разработчик в Doubletapp. В этой статье расскажу про кеширование API (на примере Django Ninja): чем оно полезно бизнесу и когда его стоит внедрять.
Когда ваш продукт начинает расти, а пользователей становится всё больше, любой повторяющийся запрос к серверу — это лишняя нагрузка. Даже если человек просто обновил страницу или несколько пользователей задали один и тот же вопрос приложению, сервер отвечает заново — и тратит на это ресурсы.
А теперь представьте: вы можете обрабатывать одновременно в несколько раз больше запросов пользователей без расширения ресурсов и без переписывания ядра продукта. Как? С помощью кеширования — подхода, который «запоминает» одинаковые запросы и снижает нагрузку на сервер.
Содержание
• Серверный кеш (хранилища «ключ-значение»)
• Клиентский кеш (браузер, прокси)
• Условные HTTP‑запросы
• Промежуточное кеширование (CDN, reverse proxy)
Читать: https://habr.com/ru/companies/doubletapp/articles/928874/
#ru
@django_prog | Другие наши каналы
Привет! Меня зовут Дима, я Backend-разработчик в Doubletapp. В этой статье расскажу про кеширование API (на примере Django Ninja): чем оно полезно бизнесу и когда его стоит внедрять.
Когда ваш продукт начинает расти, а пользователей становится всё больше, любой повторяющийся запрос к серверу — это лишняя нагрузка. Даже если человек просто обновил страницу или несколько пользователей задали один и тот же вопрос приложению, сервер отвечает заново — и тратит на это ресурсы.
А теперь представьте: вы можете обрабатывать одновременно в несколько раз больше запросов пользователей без расширения ресурсов и без переписывания ядра продукта. Как? С помощью кеширования — подхода, который «запоминает» одинаковые запросы и снижает нагрузку на сервер.
Содержание
• Серверный кеш (хранилища «ключ-значение»)
• Клиентский кеш (браузер, прокси)
• Условные HTTP‑запросы
• Промежуточное кеширование (CDN, reverse proxy)
Читать: https://habr.com/ru/companies/doubletapp/articles/928874/
#ru
@django_prog | Другие наши каналы
Обратный звонок с сайта: соединяем пользователя с компанией автоматически через Callback API
Привет, Хабр. Это Екатерина Саяпина, менеджер продукта в МТС Exolve.
Сегодня покажу, как реализовать анонимный обратный звонок с сайта через Callback API — ни клиент, ни менеджер не видят номера друг друга, соединение идёт через виртуальный номер. Всё на Django, просто и надёжно.
Читать: https://habr.com/ru/companies/exolve/articles/931446/
#ru
@django_prog | Другие наши каналы
Привет, Хабр. Это Екатерина Саяпина, менеджер продукта в МТС Exolve.
Сегодня покажу, как реализовать анонимный обратный звонок с сайта через Callback API — ни клиент, ни менеджер не видят номера друг друга, соединение идёт через виртуальный номер. Всё на Django, просто и надёжно.
Читать: https://habr.com/ru/companies/exolve/articles/931446/
#ru
@django_prog | Другие наши каналы
Система заказов: решаем проблему конкуренции без очередей
Система заказов: решаем проблему конкуренции без очередей
При разработке локального маркетплейса Django, и одна из задач, с которой пришлось поработать — это система бронирования товаров при создании заказа. Согласно требованиям, система должна уметь бронировать товары за покупателем, давать ему немного времени на оплату, а потом — если он не успел — освобождать эти товары для других.
Сначала стояла «заглушка»: при каждом новом заказе «на лету» агрегировали данные из базы — проверяли, хватает ли товара на складе с учетом уже оформленных заказов. Такой подход часто используют на старте, когда нужно быстро запустить MVP. Понимали, что при росте нагрузки он не масштабируется: возможны блокировки, гонки и overbooking. Пока писали другие части системы, держали это в голове и ждали, когда дойдут руки, чтобы заменить агрегацию на более устойчивое решение. Мы рассмотрели возможные варианты, и всё свелось к двум основным подходам. Дальше расскажем, как выбирали между ними и к чему в итоге пришли.
Открыть статью
Читать: https://habr.com/ru/articles/933542/
#ru
@django_prog | Другие наши каналы
Система заказов: решаем проблему конкуренции без очередей
При разработке локального маркетплейса Django, и одна из задач, с которой пришлось поработать — это система бронирования товаров при создании заказа. Согласно требованиям, система должна уметь бронировать товары за покупателем, давать ему немного времени на оплату, а потом — если он не успел — освобождать эти товары для других.
Сначала стояла «заглушка»: при каждом новом заказе «на лету» агрегировали данные из базы — проверяли, хватает ли товара на складе с учетом уже оформленных заказов. Такой подход часто используют на старте, когда нужно быстро запустить MVP. Понимали, что при росте нагрузки он не масштабируется: возможны блокировки, гонки и overbooking. Пока писали другие части системы, держали это в голове и ждали, когда дойдут руки, чтобы заменить агрегацию на более устойчивое решение. Мы рассмотрели возможные варианты, и всё свелось к двум основным подходам. Дальше расскажем, как выбирали между ними и к чему в итоге пришли.
Открыть статью
Читать: https://habr.com/ru/articles/933542/
#ru
@django_prog | Другие наши каналы
Как устроен пакет Django-Leaflet-Admin-List
Попросили рассказать про этот пакет, чем я и займусь.
Пакет Django-Leaflet-Admin-List позволяет добавить карту со всеми географическими объектами на странице в отображение списка в админке Django.
Читать: https://habr.com/ru/articles/933582/
#ru
@django_prog | Другие наши каналы
Попросили рассказать про этот пакет, чем я и займусь.
Пакет Django-Leaflet-Admin-List позволяет добавить карту со всеми географическими объектами на странице в отображение списка в админке Django.
Читать: https://habr.com/ru/articles/933582/
#ru
@django_prog | Другие наши каналы
5 VPS-хостингов в 2025, которые держат нагрузку: кейсы, стоимость, метрики
Сравниваем 5 VPS-провайдеров, которые стабильно работают под нагрузкой в 2025 году. Разбираем стоимость, примеры использования, производительность и uptime.
Читать: «5 VPS-хостингов в 2025, которые держат нагрузку: кейсы, стоимость, метрики»
#ru
@django_prog | Другие наши каналы
Сравниваем 5 VPS-провайдеров, которые стабильно работают под нагрузкой в 2025 году. Разбираем стоимость, примеры использования, производительность и uptime.
Читать: «5 VPS-хостингов в 2025, которые держат нагрузку: кейсы, стоимость, метрики»
#ru
@django_prog | Другие наши каналы
Куда двигаться после изучения Django: советы для Python-разработчиков
В статье разбираемся, почему Django — далеко не финиш в карьере, и в каких направлениях можно двигаться Python-разработчику.
Читать: «Куда двигаться после изучения Django: советы для Python-разработчиков»
#ru
@django_prog | Другие наши каналы
В статье разбираемся, почему Django — далеко не финиш в карьере, и в каких направлениях можно двигаться Python-разработчику.
Читать: «Куда двигаться после изучения Django: советы для Python-разработчиков»
#ru
@django_prog | Другие наши каналы
Tproger
Куда двигаться после изучения Django: советы для Python-разработчиков
В статье разбираемся, почему Django — далеко не финиш в карьере, и в каких направлениях можно двигаться Python-разработчику.