Я недавно рассказывал про django-modern-rest. Появилось небольшое issues, которое отлично подходит для входа новичкам. Мб кому-то будет интересно
https://github.com/wemake-services/django-modern-rest/issues/107
https://github.com/wemake-services/django-modern-rest/issues/107
GitHub
GitHub - wemake-services/django-modern-rest: Modern REST framework for Django with types and async support!
Modern REST framework for Django with types and async support! - wemake-services/django-modern-rest
❤3👍3
Forwarded from Находки в опенсорсе
Зачем нужен новый REST API для Django?
Последний месяц я крайне увлечен созданием https://github.com/wemake-services/django-modern-rest
(Кстати, у нас уже >200 звезд и 26 контрибьюторов при 0 релизов)
Ключевой вопрос – зачем? Что будет нового?
Во-первых, я крайне сильно люблю Django. Основная причина – под него есть буквально любые библиотеки. Все то, что в FastAPI нужно героически писать руками – в джанге уже давно есть и работает.
Но, есть несколько основных причин, почему люди думают, что не любят джангу:
1. DRF, тут без лишних слов – он ужасен. Нет типизации, нет async, очень сложно работать с ним в сложных случаях
2. Многие считают, что джанга - сложная. Однако, она как FastAPI или Litestar может спокойно уместиться в один файл: https://django-modern-rest.readthedocs.io/en/latest/pages/micro-framework.html
3. Есть критика за архитектуру: тут нечего особо даже комментировать. На любом фреймворке можно писать хорошо, на любом можно писать плохо. Слой фреймворка очень тонкий
4. Медленный. А вот тут остановимся подробнее.
На скринах выше можно сравнить, что с
Во-вторых, Django на длительный срок был в плену DRF. Который морально устарел еще в середине десятых.
Потом появилась
Вот такие проблемы мы решаем.
Одной строкой:
- Супер строгая OpenAPI схема и валидация при разработке, что мы ее соблюдаем
- Полная типизация всего
- Нормальный способ создания АПИ, без god-functions a-la FastAPI
-
- Быстро:
- Пидантик,
- Полная поддержка всего существующего в Django. От декораторов до миддлварь (с полной валидацией и OpenAPI схемой!)
- OpenAPI схема из коробки
- Удобное тестирование с polyfactory
- property-based тесты вашего АПИ одной командой благодаря schemathesis
Что еще будет:
- RSGI (да, на #rust скорее всего) под granian, в теории можем побить FastAPI после такого
- SSE с автоматической OpenAPI спекой и умной валидацией схемы
- JWT или любая другая аутентификация
- Какие-то части (скорее всего валидацию) мы компильнем cython, чтобы было еще быстрее
Modern? Modern!
Осталось дождаться. Релиз скоро!
И еще скоро будут несколько новых видео.
Мы регулярно постим задачки в @opensource_findings_python, так что можно нам помочь.
А если кто хочет мне закинуть на развитие опенсорса (за написание 32500 строк кода за 2 недели), то мой бусти открыт: https://boosty.to/sobolevn
Ну и звезды можно ставить, конечно же. Там посмотрите, какие люди нас уже советуют.
Большое спасибо Александру, Алексею, Роману, Максиму и всем остальным за неоценимую помощь. Пацаны, без вас никак! Лучшее сообщество!
Обсуждение: а чего бы вам хотелось в modern rest фреймворке? Чего сильно не хватает сейчас?
Последний месяц я крайне увлечен созданием https://github.com/wemake-services/django-modern-rest
(Кстати, у нас уже >200 звезд и 26 контрибьюторов при 0 релизов)
Ключевой вопрос – зачем? Что будет нового?
Во-первых, я крайне сильно люблю Django. Основная причина – под него есть буквально любые библиотеки. Все то, что в FastAPI нужно героически писать руками – в джанге уже давно есть и работает.
Но, есть несколько основных причин, почему люди думают, что не любят джангу:
1. DRF, тут без лишних слов – он ужасен. Нет типизации, нет async, очень сложно работать с ним в сложных случаях
2. Многие считают, что джанга - сложная. Однако, она как FastAPI или Litestar может спокойно уместиться в один файл: https://django-modern-rest.readthedocs.io/en/latest/pages/micro-framework.html
3. Есть критика за архитектуру: тут нечего особо даже комментировать. На любом фреймворке можно писать хорошо, на любом можно писать плохо. Слой фреймворка очень тонкий
4. Медленный. А вот тут остановимся подробнее.
На скринах выше можно сравнить, что с
django-modern-rest, без нескольких будущих оптимизаций (привет cython и rust!), голая джанга начинает выглядеть не так уж и медленнее FastAPI: бенчи.Во-вторых, Django на длительный срок был в плену DRF. Который морально устарел еще в середине десятых.
Потом появилась
django-ninja, которая хоть и намного лучше, но все равно не решает главную задачу: интеграция с существующими тулами. Конечно, если затащить FastAPI дизайн в чужой мир, то ничего не будет нормально работать 🌚️️Вот такие проблемы мы решаем.
Одной строкой:
- Супер строгая OpenAPI схема и валидация при разработке, что мы ее соблюдаем
- Полная типизация всего
- Нормальный способ создания АПИ, без god-functions a-la FastAPI
-
async без sync_to_async- Быстро:
msgspec для парсинга json (самый быстрый способ в питоне), практически 0 работы в рантайме (все делаем при импорте), оптимизации роутера (быстрее дефолтного в 51 раз)- Пидантик,
msgspec, или любой другой способ выражать модели. Хоть adaptix- Полная поддержка всего существующего в Django. От декораторов до миддлварь (с полной валидацией и OpenAPI схемой!)
- OpenAPI схема из коробки
- Удобное тестирование с polyfactory
- property-based тесты вашего АПИ одной командой благодаря schemathesis
Что еще будет:
- RSGI (да, на #rust скорее всего) под granian, в теории можем побить FastAPI после такого
- SSE с автоматической OpenAPI спекой и умной валидацией схемы
- JWT или любая другая аутентификация
- Какие-то части (скорее всего валидацию) мы компильнем cython, чтобы было еще быстрее
Modern? Modern!
Осталось дождаться. Релиз скоро!
И еще скоро будут несколько новых видео.
Мы регулярно постим задачки в @opensource_findings_python, так что можно нам помочь.
А если кто хочет мне закинуть на развитие опенсорса (за написание 32500 строк кода за 2 недели), то мой бусти открыт: https://boosty.to/sobolevn
Ну и звезды можно ставить, конечно же. Там посмотрите, какие люди нас уже советуют.
Большое спасибо Александру, Алексею, Роману, Максиму и всем остальным за неоценимую помощь. Пацаны, без вас никак! Лучшее сообщество!
Обсуждение: а чего бы вам хотелось в modern rest фреймворке? Чего сильно не хватает сейчас?
👍10❤5🔥2
Есть мнение, что хорошего качественного контента для мидл и выше не существует. Он существует, просто его не так просто найти.
Делюсь подобным кладезем знаний от автора dishka - https://xn--r1a.website/advice17
Делюсь подобным кладезем знаний от автора dishka - https://xn--r1a.website/advice17
Telegram
Советы разработчикам (python и не только)
Советы для разработчиков ПО от @Tishka17
Поддержать материально https://www.tinkoff.ru/cf/2NkdXaljivI
Programming, python, software architecture и все такое
Поддержать материально https://www.tinkoff.ru/cf/2NkdXaljivI
Programming, python, software architecture и все такое
🔥10
А помните раньше было модно делиться папками-подборками разных тг-каналов? Тренд дошел и до меня (спустя 52 года)
Поэтому делюсь свой подборкой тг-каналов. Здесь много разного - от каналов с полезной инфой для прокачки до чатов и мемов. Залетайте, мб найдете для себя что-то интересное
https://xn--r1a.website/addlist/akUhw65HHcUxZjFi
Поэтому делюсь свой подборкой тг-каналов. Здесь много разного - от каналов с полезной инфой для прокачки до чатов и мемов. Залетайте, мб найдете для себя что-то интересное
https://xn--r1a.website/addlist/akUhw65HHcUxZjFi
Telegram
Pulp Fiction
Максим Мельников invites you to add the folder “Pulp Fiction”, which includes 21 chats.
👍6❤1🔥1💩1
Раскрываю тайное знание - без мам пап кредитов, смс и регистрации
https://www.youtube.com/watch?v=53n3bxYTQT0
https://www.youtube.com/watch?v=53n3bxYTQT0
YouTube
ТЫ БУДЕШЬ УСПЕШНЕЕ 99% ЛЮДЕЙ ЕСЛИ НАУЧИШЬСЯ ГОВОРИТЬ РТОМ
Почему 99% людей не добиваются успеха в карьере и отношениях? Они не умеют одной простой вещи — говорить ртом. В этом видео я объясняю, почему умение ясно проговаривать свои мысли — самый недооцененный навык современного человека.
Мы обсудим, почему люди…
Мы обсудим, почему люди…
🔥6
🎬 Мой сетап для производства роликов
В комментариях под роликом о создании контента у меня спросили, что нужно для успешного старта? Я подумал и решил выложить то, что использую сейчас и чем пользовался, когда начинал снимать первые ролики
1. Камера (в редких роликах, когда есть говорящая голова)
Раньше - Genius ECam 8000 Red (3000 р. на тот момент)
Сейчас - IPhone 16 Pro Max
2. Микрофон
Раньше - Диктофон телефона. Какой телефон, уже не вспомню. Android какой-то за 4 000 р.
Сейчас - Blue Yeti Серебряный (как у Юзи, закрываем детский гештальт)
3. Свет
Раньше - Кольцевая лампа Goodly (1 500 р.)
Сейчас
- Кольцевая лампа Goodly
- LED-осветитель Ulanzi L2 RGB (2 шт.)
- Софтбоксы по типу SH 50x70 (2 шт.)
4. Монтажный софт
Раньше - Sony Vegas Pro 13 (крякнутый)
Сейчас - DaVinci Resolve (последней бесплатной версии с оф.сайта для всего хватает)
5. Наушники
Раньше - какие-то капли за 300 р.
Сейчас - какие-то капли за 300 р.
6. Компьютер
Раньше - СборОчка из 2012 года (8 гб RAM DDR3, 2 ГБ VRAM, Intel I5 3500). Ролик на 10 минут рендерился почти час
Сейчас - Lenovo IdeaPad Gaming 3 / MacBook Pro M4
К чему это все? Чтобы начать - нужно начать. Для старта особо ничего не нужно, кроме желания делать и творческого подхода. Лучше момент чем сейчас уже не будет
В комментариях под роликом о создании контента у меня спросили, что нужно для успешного старта? Я подумал и решил выложить то, что использую сейчас и чем пользовался, когда начинал снимать первые ролики
1. Камера (в редких роликах, когда есть говорящая голова)
Раньше - Genius ECam 8000 Red (3000 р. на тот момент)
Сейчас - IPhone 16 Pro Max
2. Микрофон
Раньше - Диктофон телефона. Какой телефон, уже не вспомню. Android какой-то за 4 000 р.
Сейчас - Blue Yeti Серебряный (как у Юзи, закрываем детский гештальт)
3. Свет
Раньше - Кольцевая лампа Goodly (1 500 р.)
Сейчас
- Кольцевая лампа Goodly
- LED-осветитель Ulanzi L2 RGB (2 шт.)
- Софтбоксы по типу SH 50x70 (2 шт.)
4. Монтажный софт
Раньше - Sony Vegas Pro 13 (крякнутый)
Сейчас - DaVinci Resolve (последней бесплатной версии с оф.сайта для всего хватает)
5. Наушники
Раньше - какие-то капли за 300 р.
Сейчас - какие-то капли за 300 р.
6. Компьютер
Раньше - СборОчка из 2012 года (8 гб RAM DDR3, 2 ГБ VRAM, Intel I5 3500). Ролик на 10 минут рендерился почти час
Сейчас - Lenovo IdeaPad Gaming 3 / MacBook Pro M4
К чему это все? Чтобы начать - нужно начать. Для старта особо ничего не нужно, кроме желания делать и творческого подхода. Лучше момент чем сейчас уже не будет
🔥4👍2