🥳🥳🥳 Спешим сообщить вам, что во вторник у нас стартовал бета-поток по новому курсу по FastAPI!
🔥Новые курсы давно обещали и, наконец-то, можем вас порадовать! Мы подготовили первый большой проект, в ходе которого вы начнете свое знакомство с FastAPI на практике! И скоро выпустим еще!
🚀Что будет в курсе?
По ходу прохождения курса вы сделаете генератор сайтов: запустите первый проект на FastAPI, интегрируетесь по API с нейросетью, подключите готовый фронтенд и покроете код автотестами.
Этапы первого проекта:
⚡️ Разворачиваем базовое приложение на FastAPI как профи.
⚡️ Пишем первый API endpoint на FastAPI и подключаем готовый фронтенд.
⚡️ Пишем заглушку API endpoint для генерации сайтов.
⚡️ Объединяем все части веб-приложения в готовый генератор сайтов.
🔥 Но это еще не все! Для курса мы разработали новый формат — созвоны с тимлидом!
Преимущества нового формата:
— Индивидуальные созвоны. Никаких бесполезных видео и вебинаров, обсуждайте конкретные вопросы с действующим тимлидом в формате one-to-one. Вы сможете задавать любые вопросы по учебному проекту и разбирать их совместно!
— Выбор технических решений. Вместе изучите архитектуру проекта, потренируетесь в обсуждении технических решений и сборе недостающих требований к ПО. Получите не абстрактные знания, а практические решения, которые тимлид применяет в рабочих проектах.
— Профессиональное код-ревью. Подсветит ошибки и слабые места. Научит писать чистый и поддерживаемый код. Ревью разберете на созвоне, получите ответы на все вопросы.
🤫 Позже курс будет доступен и в старом формате мини-курса для самостоятельного прохождения!
❓Когда можно будет записаться?
Мы планируем релиз на конец июля-начало августа! Конкретную дату старта первого потока сообщим здесь!
Остались вопросы? Задавайте в комментариях!
🔥Новые курсы давно обещали и, наконец-то, можем вас порадовать! Мы подготовили первый большой проект, в ходе которого вы начнете свое знакомство с FastAPI на практике! И скоро выпустим еще!
🚀Что будет в курсе?
По ходу прохождения курса вы сделаете генератор сайтов: запустите первый проект на FastAPI, интегрируетесь по API с нейросетью, подключите готовый фронтенд и покроете код автотестами.
Этапы первого проекта:
⚡️ Разворачиваем базовое приложение на FastAPI как профи.
⚡️ Пишем первый API endpoint на FastAPI и подключаем готовый фронтенд.
⚡️ Пишем заглушку API endpoint для генерации сайтов.
⚡️ Объединяем все части веб-приложения в готовый генератор сайтов.
🔥 Но это еще не все! Для курса мы разработали новый формат — созвоны с тимлидом!
Преимущества нового формата:
— Индивидуальные созвоны. Никаких бесполезных видео и вебинаров, обсуждайте конкретные вопросы с действующим тимлидом в формате one-to-one. Вы сможете задавать любые вопросы по учебному проекту и разбирать их совместно!
— Выбор технических решений. Вместе изучите архитектуру проекта, потренируетесь в обсуждении технических решений и сборе недостающих требований к ПО. Получите не абстрактные знания, а практические решения, которые тимлид применяет в рабочих проектах.
— Профессиональное код-ревью. Подсветит ошибки и слабые места. Научит писать чистый и поддерживаемый код. Ревью разберете на созвоне, получите ответы на все вопросы.
🤫 Позже курс будет доступен и в старом формате мини-курса для самостоятельного прохождения!
❓Когда можно будет записаться?
Мы планируем релиз на конец июля-начало августа! Конкретную дату старта первого потока сообщим здесь!
Остались вопросы? Задавайте в комментариях!
🔥6👍2
Обновить нельзя оставить: версия Django
📎У библиотек и фреймворков, а также у операционных систем обычно есть несколько поддерживаемых версий, которые помечаются как LTS (long term support — это часть жизненного цикла ПО, которая означает, что стабильный релиз будет поддерживаться долгое время и будет считаться стандартной версией к распространению).
✏️Django 5.2 — это текущая стабильная версия веб-фреймворка Django, вышедшая 2 апреля 2025 года. Django 5.2 поддерживает Python 3.10, 3.11 и 3.12. Самое важное, что появилось в 5 версии фреймворка — продвинутая асинхронность.
❓А что делать если проект написан, например, на версии 3.2?
Обновления к LTS-версии Django 3.2 перестали выходить в апреле 2024 года. Если в вашем проекте используется именно версия 3.2, то переживать не стоит. После даты окончания поддержки проект не «превратится в тыкву»: просто для этой версии фреймворка перестанут выходить патч-релизы.
В большинстве крупных компаний обновления версий протекают медленно. Так что не удивляйтесь, если увидите в вакансиях требования знать Django 2.1 или даже Python 2! От обновлений не всегда пользы больше, чем вреда.
❓Когда не стоит спешить с обновлением версии:
👉 никогда не обновляйте боевой проект до не LTS версии — это опасно из-за большого количества еще не исправленных ошибок;
👉 проект очень большой (особенно монолит) и «живой» — даже несколько часов простоя из-за ошибок будут стоит значительных убытков бизнесу, а стоимость обновления не факт что окупится, если проект не развивается активно;
👉 функционал, добавленный в новой версии не будет использоваться в проекте;
👉 библиотеки, используемые в проекте, несовместимы с новой версией фреймворка.
💥Ну а мы решили, что в уроках пора обновляться! Сразу до Django 5.2, которая недавно стала LTS.
Хорошие новости — мы обновили уроки в «Знакомство с Django: ORM» и «Django». Учебные проекты остаются прежним, махровой асинхронщины не будет. Но можно использовать последние версии Python!
Еще убрали деплой на PythonAnyWhere из первого урока по Django — уж очень много с ним проблем, с новыми версиями не совместим, интерфейс кошмарный. Деплоить будем полноценно в третьем уроке и дальше уже в Docker и Kubernetes.
А вот в старых боевых проектах остаемся на старой Django. Так что идущие к нам на стажировку — готовьтесь к Django 4.2.1💪
А самая старая версия – у громоздкого сайта Девмана, который остается на 3.1.14 и в ближайшей перспективе нет причин для полномасштабного обновления.
👉В ближайшие дни могут быть ошибки из-за версий. Менторы передают их нам, мы активно чиним!
📎У библиотек и фреймворков, а также у операционных систем обычно есть несколько поддерживаемых версий, которые помечаются как LTS (long term support — это часть жизненного цикла ПО, которая означает, что стабильный релиз будет поддерживаться долгое время и будет считаться стандартной версией к распространению).
✏️Django 5.2 — это текущая стабильная версия веб-фреймворка Django, вышедшая 2 апреля 2025 года. Django 5.2 поддерживает Python 3.10, 3.11 и 3.12. Самое важное, что появилось в 5 версии фреймворка — продвинутая асинхронность.
❓А что делать если проект написан, например, на версии 3.2?
Обновления к LTS-версии Django 3.2 перестали выходить в апреле 2024 года. Если в вашем проекте используется именно версия 3.2, то переживать не стоит. После даты окончания поддержки проект не «превратится в тыкву»: просто для этой версии фреймворка перестанут выходить патч-релизы.
В большинстве крупных компаний обновления версий протекают медленно. Так что не удивляйтесь, если увидите в вакансиях требования знать Django 2.1 или даже Python 2! От обновлений не всегда пользы больше, чем вреда.
❓Когда не стоит спешить с обновлением версии:
👉 никогда не обновляйте боевой проект до не LTS версии — это опасно из-за большого количества еще не исправленных ошибок;
👉 проект очень большой (особенно монолит) и «живой» — даже несколько часов простоя из-за ошибок будут стоит значительных убытков бизнесу, а стоимость обновления не факт что окупится, если проект не развивается активно;
👉 функционал, добавленный в новой версии не будет использоваться в проекте;
👉 библиотеки, используемые в проекте, несовместимы с новой версией фреймворка.
💥Ну а мы решили, что в уроках пора обновляться! Сразу до Django 5.2, которая недавно стала LTS.
Хорошие новости — мы обновили уроки в «Знакомство с Django: ORM» и «Django». Учебные проекты остаются прежним, махровой асинхронщины не будет. Но можно использовать последние версии Python!
Еще убрали деплой на PythonAnyWhere из первого урока по Django — уж очень много с ним проблем, с новыми версиями не совместим, интерфейс кошмарный. Деплоить будем полноценно в третьем уроке и дальше уже в Docker и Kubernetes.
А вот в старых боевых проектах остаемся на старой Django. Так что идущие к нам на стажировку — готовьтесь к Django 4.2.1💪
А самая старая версия – у громоздкого сайта Девмана, который остается на 3.1.14 и в ближайшей перспективе нет причин для полномасштабного обновления.
👉В ближайшие дни могут быть ошибки из-за версий. Менторы передают их нам, мы активно чиним!
🔥4
Мы уже рассказывали, что у нашей компании есть отдельное подразделение, которое занимается разработкой веб-сервисов на заказ. Все наши бэкенд-разработчики — это выпускники курсов школы Девман💪
Хотим поделиться, какие проекты реализовали и делают сейчас наши команды!
✏️Задача
Сделать MVP CRM для автоматизации бизнес-процессов с учетом всей специфики деятельности.
Компания Заказчика сопровождает получение банковских гарантий. Предметная область сложная — много юридических и финансовых терминов, неожиданных корнер-кейсов. Да, есть коробочные решения: amoCRM, Bitrix24 и пр. Но они не учитывают специфику бизнеса.
📎 Если бизнес растет и под область нет качественных отраслевых решений — пора задуматься о разработке кастомной CRM.
Она будет адаптирована под бизнес-процессы и персонал компании — возрастет эффективность сотрудников, снизится время обработки заявок и число ошибок, собственник получит отчетность в нужном формате.
💡Решение
Мы разрабатывали ТЗ в очень плотной работе с Заказчиком, обновляли и поддерживали по ходу разработки.
❗️ТЗ обязательно должно развиваться вместе с продуктом. Нельзя предусмотреть заранее все истории, предугадать насколько будет удобно пользоваться системой после внедрения.
Автоматизация уже существующих бизнес-процессов — это в итоге создание новых процессов, которых еще нет. И прогнозы могут не совпасть с реальностью. О своем подходе к проектированию и работе с ТЗ рассказывали на конференции прошлой осенью, видео можно посмотреть здесь.
🚀Первым большим рубежом проекта стал релиз MVP через 6 месяцев после старта. Уже сразу после него CRM стала полноценным рабочим инструментом для команды Заказчика. Она позволила серьезно экономить время на обработку запросов клиентов.
🔥Еще больше порадовала обратная связь от Заказчика: конкуренты реализовали примерно такой же функционал для себя, но за несколько лет и бюджетом минимум x3!
Алёна, бессменный тимлид команды, поделилась своими впечатлениями:
🚀Проект продолжает развиваться: расширяем интеграции, улучшаем интерфейс и автоматизируем рутинные процессы. Например, прикручиваем умные парсеры для интеграции с веб-сайтами, которые не хотят делиться API. Об этом расскажем подробнее в другой раз! 🤫
👉 Вы или ваши друзья намучились с коробочными CRM для автоматизации бизнес-процессов? Приходите к нам на бесплатную консультацию — подскажем, нужна ли вам своя система.
Хотим поделиться, какие проекты реализовали и делают сейчас наши команды!
✏️Задача
Сделать MVP CRM для автоматизации бизнес-процессов с учетом всей специфики деятельности.
Компания Заказчика сопровождает получение банковских гарантий. Предметная область сложная — много юридических и финансовых терминов, неожиданных корнер-кейсов. Да, есть коробочные решения: amoCRM, Bitrix24 и пр. Но они не учитывают специфику бизнеса.
📎 Если бизнес растет и под область нет качественных отраслевых решений — пора задуматься о разработке кастомной CRM.
Она будет адаптирована под бизнес-процессы и персонал компании — возрастет эффективность сотрудников, снизится время обработки заявок и число ошибок, собственник получит отчетность в нужном формате.
💡Решение
Мы разрабатывали ТЗ в очень плотной работе с Заказчиком, обновляли и поддерживали по ходу разработки.
❗️ТЗ обязательно должно развиваться вместе с продуктом. Нельзя предусмотреть заранее все истории, предугадать насколько будет удобно пользоваться системой после внедрения.
Автоматизация уже существующих бизнес-процессов — это в итоге создание новых процессов, которых еще нет. И прогнозы могут не совпасть с реальностью. О своем подходе к проектированию и работе с ТЗ рассказывали на конференции прошлой осенью, видео можно посмотреть здесь.
🚀Первым большим рубежом проекта стал релиз MVP через 6 месяцев после старта. Уже сразу после него CRM стала полноценным рабочим инструментом для команды Заказчика. Она позволила серьезно экономить время на обработку запросов клиентов.
🔥Еще больше порадовала обратная связь от Заказчика: конкуренты реализовали примерно такой же функционал для себя, но за несколько лет и бюджетом минимум x3!
Алёна, бессменный тимлид команды, поделилась своими впечатлениями:
В нашем проекте мы намеренно отказались от полноценного фронта, отдав все силы построению бизнес-логики. Но удобство интерфейса для нас тоже — немаловажный фактор, поэтому кастомизация админки Django — это очень интересный вызов для команды.
Одна из самых непростых задач была — импортировать в новую CRM все данные, с которыми Заказчик работал ранее: данные из таблиц и старых CRM. Сложность обусловлена тут несколькими факторами: эти данные сложносоставные, неоднородные, их структура сильно отличается от структуры данных в новой CRM.
Нужно было не просто "залить" их, а ещё и сопоставить, верифицировать, чтобы в результате всё корректно отображалось в боевой CRM, которая уже использовалась в работе. Кроме того, в процессе импорта нужно было обновить и обогатить данные с помощью уже реализованных интеграций со справочными сервисами.
Мы провели множество тестов, в том числе на эмуляции боевой базы, прогнали скрипты миграции на разных окружениях, постарались учесть все corner-case'ы, которые могли встретиться в архивах. Как часто случается, при боевой миграции все-таки вылезли некоторые проблемы, которые удалось решить оперативным вмешательством и слаженной работой команды). И ни одна "боевая данная" не пострадала!
Я считаю очень удачным, что я попала в этот проект, т.к. эта предметная область мне знакома и я рада, что мои знания помогают улучшить его. Мне нравится наш проект, Заказчик и наша команда. Я уверена, мы доведем CRM до совершенства) И, безусловно, я уже получила и еще получу колоссальный опыт: написание ТЗ, проектирование, работа с новыми инструментами и тимлидство в конце концов)
🚀Проект продолжает развиваться: расширяем интеграции, улучшаем интерфейс и автоматизируем рутинные процессы. Например, прикручиваем умные парсеры для интеграции с веб-сайтами, которые не хотят делиться API. Об этом расскажем подробнее в другой раз! 🤫
👉 Вы или ваши друзья намучились с коробочными CRM для автоматизации бизнес-процессов? Приходите к нам на бесплатную консультацию — подскажем, нужна ли вам своя система.
🔥5❤2👍1
Какие навыки нужны для изучения FastAPI
🚀FastAPI — это мощный и современный фреймворк для создания API на Python. Он быстрый, удобный и продолжает набирать популярность. Но чтобы начать его изучать, нужно подготовиться. Сегодня обсудим, какие стартовые навыки вам нужны, чтобы изучить FastAPI.
✅Минимальный набор навыков:
— Знаете Python на базовом уровне
— Использовали сторонние библиотеки
— Использовали PIP или его аналоги
— Создавали Классы-наследники и Объекты (экземпляры класса, инстансы)
— Писали функции с нуля
— Работали с requests или аналогами
✅✅Рекомендуемый набор навыков:
— Все навыки, которые перечислены выше
— Писали и использовали Callback-функции
— Использовали декораторы
— Отправляли HTTP-запросы с авторизацией
— Обрабатывали HTTP-ответы с JSON-нагрузкой
Если уже прошли наш курс «Профессия Middle Python/Django разработчик», то будет интересно сравнить возможности Django и FastAPI и дополнить резюме востребованным навыком.
Чтобы подтянуть стартовые навыки до рекомендуемого уровня, достаточно пройти мини-курсы:
— Основы Python
— Git и GitHub
— Командная строка
— API веб-сервисов
🚀FastAPI — это мощный и современный фреймворк для создания API на Python. Он быстрый, удобный и продолжает набирать популярность. Но чтобы начать его изучать, нужно подготовиться. Сегодня обсудим, какие стартовые навыки вам нужны, чтобы изучить FastAPI.
✅Минимальный набор навыков:
— Знаете Python на базовом уровне
— Использовали сторонние библиотеки
— Использовали PIP или его аналоги
— Создавали Классы-наследники и Объекты (экземпляры класса, инстансы)
— Писали функции с нуля
— Работали с requests или аналогами
✅✅Рекомендуемый набор навыков:
— Все навыки, которые перечислены выше
— Писали и использовали Callback-функции
— Использовали декораторы
— Отправляли HTTP-запросы с авторизацией
— Обрабатывали HTTP-ответы с JSON-нагрузкой
Если уже прошли наш курс «Профессия Middle Python/Django разработчик», то будет интересно сравнить возможности Django и FastAPI и дополнить резюме востребованным навыком.
Чтобы подтянуть стартовые навыки до рекомендуемого уровня, достаточно пройти мини-курсы:
— Основы Python
— Git и GitHub
— Командная строка
— API веб-сервисов
А вы готовы к изучению FastAPI?
Anonymous Poll
22%
Нет, надо еще прокачаться
22%
Да, на минимальном уровне
35%
Да, на рекомендуемом уровне и выше
22%
Уже знаю FastAPI
⁉️Что лучше: FastAPI или Django
Обсудили, что лучше: FastAPI или Django, чем эти фреймворки отличаются друг от друга и с чем лучше справляются.
💥В дискуссии участвовали:
— Евгений Евсеев — основатель школы Devman, автор методики обучения и разработчик с 17+ опытом.
—Михаил Акопян — тимлид команды разработки в PelidTeam.
🗣Обсудили:
— Чем FastAPI отличается от Django
— Что такое Pydantic в FastAPI
— Автодокументацию и вебсокеты в FastAPI
— Django Ninja
— Django ORM vs SQLAlchemy
⚡️Приглашаем послушать и поучаствовать обсуждении в комментариях:
YouTube
RuTube
VK
У вас есть идея для дискуссии или интересный вопрос? Пишите в комментариях!
Обсудили, что лучше: FastAPI или Django, чем эти фреймворки отличаются друг от друга и с чем лучше справляются.
💥В дискуссии участвовали:
— Евгений Евсеев — основатель школы Devman, автор методики обучения и разработчик с 17+ опытом.
—Михаил Акопян — тимлид команды разработки в PelidTeam.
🗣Обсудили:
— Чем FastAPI отличается от Django
— Что такое Pydantic в FastAPI
— Автодокументацию и вебсокеты в FastAPI
— Django Ninja
— Django ORM vs SQLAlchemy
⚡️Приглашаем послушать и поучаствовать обсуждении в комментариях:
YouTube
RuTube
VK
У вас есть идея для дискуссии или интересный вопрос? Пишите в комментариях!
👍7
🤔 Давайте вместе разберемся, что не так с этим кодом?
👉 Чтобы понять, что можно исправить, загляните в типичные улучшения Девмана.
from math import pi
def calculate_circle_area(radius):
circle_area = pi * radius ** 2
return circle_area
# def calculate_square_area(side):
# return side * side
if __name__==’__main__’:
radius = 5
circle_area = calculate_circle_area(radius)
👉 Чтобы понять, что можно исправить, загляните в типичные улучшения Девмана.
Если что-то можно закомментировать из-за того, что оно уже не используется, значит этому в принципе не место в рабочей версии кода. Такой код сбивает с толку и его лучше удалить.
✅Код из нашего примера должен выглядеть вот так:
✅Код из нашего примера должен выглядеть вот так:
from math import pi
def calculate_circle_area(radius):
circle_area = pi * radius ** 2
return circle_area
if __name__ == '__main__':
radius = 5
circle_area = calculate_circle_area(radius)
💡При выборе курса важно понимать, как именно будет проходить обучение — от этого зависит ваш комфорт и результат. Можно сколько угодно искать «идеальную программу», но если формат не вписывается в жизненные обстоятельства, прогресс будет даваться тяжело.
Давайте разберем, какие варианты есть у нас и как выбрать тот, в котором вы добьетесь максимума!
📎Профессия — это длинный трек из разных активностей, который включает кроме уроков с поддержкой ментора, учебные командные проекты, стажировку и трудоустройство. На курс «Профессия Middle Python/Django разработчик» можно зайти с разного уровня: с нуля, о новичка, от джуна.
✅Преимущества формата:
— Гарантированная стажировка 13 недель на коммерческом проекте после выполнения всех уроков.
— Поддержка ментора в личном чате, индивидуальные учебные планы на каждую неделю
— Команда Девман и дедлайны поддерживают мотивацию дойти до конца трека.
— Код-ревью от действующего разработчика по каждому проекту.
— Учебные командные проекты с опытным менеджером проектов.
— Консультации HR и подготовка к техинтервью для трудоустройства.
— Для лучших выпускников есть возможность получить оффер к нам или нашим партнерам.
— Вернем деньги, если не трудоустроитесь разработчиком (см. условия и порядок оформления в оферте).
⚠️ Ограничения:
— Выделять не менее 15 часов в неделю.
— Распределять график обучения не только на выходные, но и на будние дни.
— Выделить время на обязательные групповые созвоны по командным проектам и стажировке.
— Срок обучения от 10 до 19 месяцев.
— Высокая стоимость курса.
👉Это ваш вариант, если хотите освоить новую специальность и трудоустроиться!
📎 Мини-курс — это короткая и емкая программа, которая за несколько уроков дает конкретный навык или решает одну задачу.
✅Преимущества формата:
— Поддержка куратора в чате, если не удается пройти урок.
— Код-ревью от действующего разработчика по каждому проекту.
— Гибкий график занятий — занимайтесь в любое время, учебные материалы доступны 24/7.
— Прокачивайте навыки точечно — только по необходимой теме.
— Можно начать занятия в любое время и проходить в своем темпе. Курс ваш навсегда.
⚠️ Ограничения:
— Придется самостоятельно организовывать график обучения, бороться с прокрастинацией
— Нет модулей для отработки навыков работы в команде
👉 Этот вариант подойдет вам, если нужно освоить какой-то конкретный навык или хотите учиться в своем темпе!
📎Занятия с ментором — это формат, в ходе которого вы будете созваниваться с ментором индивидуально, задавать вопросы по проекту и разбирать их совместно. Это наш новый формат, который опробовали на майском интенсиве по проектированию баз данных и запускаем на регулярной основе для курсов по FastAPI.
✅Преимущества формата:
— Выполняете проект в формате спринтов с дедлайнами.
— Индивидуальные созвоны с ментором.
— Гибкий график занятий — пишите код в удобное время, учебные материалы доступны 24/7.
— Профессиональное код-ревью.
— Возможность обсудить вопросы по код-ревью на последнем созвоне.
— Инсайты из опыта продуктовой разработки от действующего разработчика.
— Обсуждение и выбор технических решений, разбор архитектуры учебного проекта.
👉 Этот вариант подойдет вам, если вам нужна максимальная обратная связь, погружение в разработку, мотивация и поддержка!
Давайте разберем, какие варианты есть у нас и как выбрать тот, в котором вы добьетесь максимума!
📎Профессия — это длинный трек из разных активностей, который включает кроме уроков с поддержкой ментора, учебные командные проекты, стажировку и трудоустройство. На курс «Профессия Middle Python/Django разработчик» можно зайти с разного уровня: с нуля, о новичка, от джуна.
✅Преимущества формата:
— Гарантированная стажировка 13 недель на коммерческом проекте после выполнения всех уроков.
— Поддержка ментора в личном чате, индивидуальные учебные планы на каждую неделю
— Команда Девман и дедлайны поддерживают мотивацию дойти до конца трека.
— Код-ревью от действующего разработчика по каждому проекту.
— Учебные командные проекты с опытным менеджером проектов.
— Консультации HR и подготовка к техинтервью для трудоустройства.
— Для лучших выпускников есть возможность получить оффер к нам или нашим партнерам.
— Вернем деньги, если не трудоустроитесь разработчиком (см. условия и порядок оформления в оферте).
⚠️ Ограничения:
— Выделять не менее 15 часов в неделю.
— Распределять график обучения не только на выходные, но и на будние дни.
— Выделить время на обязательные групповые созвоны по командным проектам и стажировке.
— Срок обучения от 10 до 19 месяцев.
— Высокая стоимость курса.
👉Это ваш вариант, если хотите освоить новую специальность и трудоустроиться!
📎 Мини-курс — это короткая и емкая программа, которая за несколько уроков дает конкретный навык или решает одну задачу.
✅Преимущества формата:
— Поддержка куратора в чате, если не удается пройти урок.
— Код-ревью от действующего разработчика по каждому проекту.
— Гибкий график занятий — занимайтесь в любое время, учебные материалы доступны 24/7.
— Прокачивайте навыки точечно — только по необходимой теме.
— Можно начать занятия в любое время и проходить в своем темпе. Курс ваш навсегда.
⚠️ Ограничения:
— Придется самостоятельно организовывать график обучения, бороться с прокрастинацией
— Нет модулей для отработки навыков работы в команде
👉 Этот вариант подойдет вам, если нужно освоить какой-то конкретный навык или хотите учиться в своем темпе!
📎Занятия с ментором — это формат, в ходе которого вы будете созваниваться с ментором индивидуально, задавать вопросы по проекту и разбирать их совместно. Это наш новый формат, который опробовали на майском интенсиве по проектированию баз данных и запускаем на регулярной основе для курсов по FastAPI.
✅Преимущества формата:
— Выполняете проект в формате спринтов с дедлайнами.
— Индивидуальные созвоны с ментором.
— Гибкий график занятий — пишите код в удобное время, учебные материалы доступны 24/7.
— Профессиональное код-ревью.
— Возможность обсудить вопросы по код-ревью на последнем созвоне.
— Инсайты из опыта продуктовой разработки от действующего разработчика.
— Обсуждение и выбор технических решений, разбор архитектуры учебного проекта.
👉 Этот вариант подойдет вам, если вам нужна максимальная обратная связь, погружение в разработку, мотивация и поддержка!
dvmn.org
Курс Python-разработчик: обучение программированию на Python для начинающих
Обучение веб-разработке на Python до уровня Middle. Курс Python-разработчик от Devman с сертификатом и гарантией трудоустройства. Обучись языку программирования и стань востребованным специалистом.
👍1
Продолжаем разбирать вопросы, который часто задают работодатели на собеседованиях веб-разработчиков на Python!
❓Что такое middleware в Django?
📎В Django «middleware» (промежуточное ПО или промежуточный слой) — это компоненты, которые обрабатывают запросы и ответы глобально перед тем, как они достигают вьюх или после того, как покинут вьюхи.
Их используют для реализации множества разных функций, таких как управление сессиями, обеспечение безопасности, кэширование и т.д.
Промежуточный слой работает на основе принципа «луковицы». Каждый слой в луковице — это приложение middleware, а в ее центре находится вьюха. Порядок слоев устанавливается в настройках.
Когда запрос приходит на сервер, он проходит через каждый слой луковицы прежде чем достичь соответствующей вьюхи. После обработки вьюхой ответ проходит через те же слои луковицы, но уже в обратном порядке, прежде чем быть отправленным клиенту.
✍️Вот несколько примеров того, для чего может быть использован middleware:
— Управление сессиями. SessionMiddleware управляет данными сессии пользователя. Он загружает данные сессии перед началом обработки запроса и сохраняет их после завершения обработки.
— Аутентификация. AuthenticationMiddleware добавляет атрибут user к каждому объекту HttpRequest. Это позволяет легко определить, аутентифицирован ли пользователь.
— Обработка кросс-доменных запросов (CORS). Если у вас есть middleware для обработки CORS, он может установить соответствующие заголовки ответа для управления кросс-доменными запросами.
— Кэширование. Некоторые слои middleware могут кэшировать ответы, уменьшая таким образом нагрузку на сервер.
⚙️Чтобы добавить middleware в ваш проект Django, нужно:
1️⃣ Создать класс middleware, реализовав в нем необходимые методы __init__ и __call__ (а так же при необходимости process_view, process_exception, process_template_response и т.д.).
Пример простого middleware, который добавляет заголовок 'X-Simple-Header' = 'Hello, world!' к каждому ответу:
2️⃣ Добавить путь к этому классу в список MIDDLEWARE в настройках вашего проекта:
❗️Важно помнить, что порядок приложений middleware в настройках определяет порядок их выполнения. Middleware, определенные раньше в списке, будут обрабатывать запросы перед теми, что определены позже, и обрабатывать ответы после тех, что определены позже.
👉Пишите вопросы, которые хотели бы разобрать, в комментариях!
#вопросы_с_собесов
❓Что такое middleware в Django?
📎В Django «middleware» (промежуточное ПО или промежуточный слой) — это компоненты, которые обрабатывают запросы и ответы глобально перед тем, как они достигают вьюх или после того, как покинут вьюхи.
Их используют для реализации множества разных функций, таких как управление сессиями, обеспечение безопасности, кэширование и т.д.
Промежуточный слой работает на основе принципа «луковицы». Каждый слой в луковице — это приложение middleware, а в ее центре находится вьюха. Порядок слоев устанавливается в настройках.
Когда запрос приходит на сервер, он проходит через каждый слой луковицы прежде чем достичь соответствующей вьюхи. После обработки вьюхой ответ проходит через те же слои луковицы, но уже в обратном порядке, прежде чем быть отправленным клиенту.
✍️Вот несколько примеров того, для чего может быть использован middleware:
— Управление сессиями. SessionMiddleware управляет данными сессии пользователя. Он загружает данные сессии перед началом обработки запроса и сохраняет их после завершения обработки.
— Аутентификация. AuthenticationMiddleware добавляет атрибут user к каждому объекту HttpRequest. Это позволяет легко определить, аутентифицирован ли пользователь.
— Обработка кросс-доменных запросов (CORS). Если у вас есть middleware для обработки CORS, он может установить соответствующие заголовки ответа для управления кросс-доменными запросами.
— Кэширование. Некоторые слои middleware могут кэшировать ответы, уменьшая таким образом нагрузку на сервер.
⚙️Чтобы добавить middleware в ваш проект Django, нужно:
1️⃣ Создать класс middleware, реализовав в нем необходимые методы __init__ и __call__ (а так же при необходимости process_view, process_exception, process_template_response и т.д.).
Пример простого middleware, который добавляет заголовок 'X-Simple-Header' = 'Hello, world!' к каждому ответу:
class SimpleMiddleware:
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
response = self.get_response(request)
response['X-Simple-Header'] = 'Hello, world!'
return response
2️⃣ Добавить путь к этому классу в список MIDDLEWARE в настройках вашего проекта:
MIDDLEWARE = [
"django.middleware.security.SecurityMiddleware",
...
"myapp.middlewares.SimpleMiddleware",
]
❗️Важно помнить, что порядок приложений middleware в настройках определяет порядок их выполнения. Middleware, определенные раньше в списке, будут обрабатывать запросы перед теми, что определены позже, и обрабатывать ответы после тех, что определены позже.
👉Пишите вопросы, которые хотели бы разобрать, в комментариях!
#вопросы_с_собесов
👍5🔥2❤1
🌟Знакомо ощущение, когда код написан, а оказывается, что половину требований упустили? В Devman мы решаем эту проблему и превращаем скучное ТЗ в увлекательный интерактивный веб-сервис!
❗️Программный продукт должен быть не только с чистым кодом внутри, но еще и решать реальные проблемы пользователей, для которых он и разрабатывается.
🚀В авторской методике ProductFlow задание на продукт описывается с точки зрения того, какую проблему пользователя решает продукт, в каких обстоятельствах. А ТЗ используется не только на этапе сбора требований, но и служит актуальной документацией, чек-листом для тестирования, отчетом о прогрессе реализации и планом наращивания функциональности. Веб-сервис, который вы встретите в новых уроках назвали СУП ProductFlow — система управления потребностями.
⚙️Техническое задание в СУПе включает:
— Роль — это пользователь программного продукта. Не только клиент, но и администратор, и даже разработчик
— Функция — это некая «хотелка» пользователя, потребность, которую ПО должно закрыть.
— История — это контекст, т.е. условия, в которых выполняется функция.
Подробно об интерактивном ТЗ в формате ProductFlow можно почитать в Энциклопедии Devman.
✅Преимущества интерактивного ТЗ:
— Развивает навыки проектирования, подсвечивает нестыковки.
— Не ограничивает способы реализации, а описывает необходимый результат.
— Включает не только конечный продукт, но и вспомогательные подсистемы — «строительные леса» разработчика.
— Наглядный визуализированный мониторинг прогресса по реализации продукта.
— Кейсы для тестирования разработанного ПО и документации к нему.
— Персонализация процесса обучения.
💥Интерактивное ТЗ появится в новом курсе по FastAPI. Постепенно мы добавим его и в другие курсы.
Собрали отзывы от тех, кто уже успел познакомиться с СУПом:
❗️Программный продукт должен быть не только с чистым кодом внутри, но еще и решать реальные проблемы пользователей, для которых он и разрабатывается.
🚀В авторской методике ProductFlow задание на продукт описывается с точки зрения того, какую проблему пользователя решает продукт, в каких обстоятельствах. А ТЗ используется не только на этапе сбора требований, но и служит актуальной документацией, чек-листом для тестирования, отчетом о прогрессе реализации и планом наращивания функциональности. Веб-сервис, который вы встретите в новых уроках назвали СУП ProductFlow — система управления потребностями.
⚙️Техническое задание в СУПе включает:
— Роль — это пользователь программного продукта. Не только клиент, но и администратор, и даже разработчик
— Функция — это некая «хотелка» пользователя, потребность, которую ПО должно закрыть.
— История — это контекст, т.е. условия, в которых выполняется функция.
Подробно об интерактивном ТЗ в формате ProductFlow можно почитать в Энциклопедии Devman.
✅Преимущества интерактивного ТЗ:
— Развивает навыки проектирования, подсвечивает нестыковки.
— Не ограничивает способы реализации, а описывает необходимый результат.
— Включает не только конечный продукт, но и вспомогательные подсистемы — «строительные леса» разработчика.
— Наглядный визуализированный мониторинг прогресса по реализации продукта.
— Кейсы для тестирования разработанного ПО и документации к нему.
— Персонализация процесса обучения.
💥Интерактивное ТЗ появится в новом курсе по FastAPI. Постепенно мы добавим его и в другие курсы.
Собрали отзывы от тех, кто уже успел познакомиться с СУПом:
Выполнение работы в этом формате сильно "бустануло" обучение. Эта штука ставит тебя в точку неопределённости, заставляя больше погружаться в проект, читать всё ТЗ и позволяет принимать решения. Хотел бы видеть такое ТЗ в рамках каждого Урока на Девман
Методика Product Flow оказалась максимально удобной в исполнении: весь
процесс работы над проектом структурирован. Благодаря этому, можно сразу
понять, когда проект будет готов на все 100% и у каких историй в ходе работы
могут быть трудности при реализации. Гибкость методики также позволяет
оперативно изменять и добавлять задачи, которые могут появиться в ходе
выполнения текущих
Процесс разбит на части, что позволяет мне отмечать завершенные задачи. Это
не только помогает отслеживать прогресс, но и придаёт чувство выполненной
работы.
Понравилась свобода действий: я мог самостоятельно выбирать, с чего начать и как реализовать те или иные задачи. Это позволило мне проявить креативность и даже вносить дополнительные идеи, которые не были прописаны в ТЗ. Такой подход
вдохновляет и мотивирует!
❤3
🥳🥳🥳Друзья, вот и настал момент! С 24.07 мы открываем запись на новый курс по FastAPI! Тот самый курс, который вы так долго ждали!
Мы подготовили первый большой проект, в ходе которого вы начнете свое знакомство с FastAPI на практике!
В процессе вы сделаете генератор сайтов: запустите первый проект на FastAPI, интегрируетесь по API с нейросетью и подключите готовый фронтенд.
❓Что будет в программе:
— Разворачиваем с нуля проект на FastAPI
— Знакомство с профессиональными инструментами разработки
— Подключение фронтенда на React
— Работа с MinIO
— Подключение нейросети DeepSeek
— Грамотная архитектура и структура кода
Запись на курс доступна в новом формате — занятия с ментором!
🚀Мы набираем первый поток, который стартует уже 30 июля! Количество мест ограничено!
👉Для записи оставьте заявку на странице или напишите нам в Телеграм
💥Но это еще не все! 29 июля Евгений Евсеев проведет вебинар, на котором разберем:
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
👉 Ссылкой для подключения поделимся здесь 29 июля
➡️Есть вопросы, которые хотите разобрать с Евгением на вебинаре? Пишите в комментариях под этим постом!
Мы подготовили первый большой проект, в ходе которого вы начнете свое знакомство с FastAPI на практике!
В процессе вы сделаете генератор сайтов: запустите первый проект на FastAPI, интегрируетесь по API с нейросетью и подключите готовый фронтенд.
❓Что будет в программе:
— Разворачиваем с нуля проект на FastAPI
— Знакомство с профессиональными инструментами разработки
— Подключение фронтенда на React
— Работа с MinIO
— Подключение нейросети DeepSeek
— Грамотная архитектура и структура кода
Запись на курс доступна в новом формате — занятия с ментором!
🚀Мы набираем первый поток, который стартует уже 30 июля! Количество мест ограничено!
👉Для записи оставьте заявку на странице или напишите нам в Телеграм
💥Но это еще не все! 29 июля Евгений Евсеев проведет вебинар, на котором разберем:
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
👉 Ссылкой для подключения поделимся здесь 29 июля
➡️Есть вопросы, которые хотите разобрать с Евгением на вебинаре? Пишите в комментариях под этим постом!
🔥8👍2
⚡️⚡️⚡️Уже завтра Евгений Евсеев проведет вебинар, на котором разберем:
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия?
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
📌 Вебинар пройдет завтра 29 июля в 19:00
👉Ссылкой для подключения поделимся здесь
Ставьте 🔥, если планируете прийти!
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия?
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
📌 Вебинар пройдет завтра 29 июля в 19:00
👉Ссылкой для подключения поделимся здесь
Ставьте 🔥, если планируете прийти!
🔥24
💥💥💥 В 19:00 Евгений Евсеев проведет вебинар, на котором разберем:
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
👉 Ссылкой для подключения поделимся здесь за полчаса до мероприятия
— Чем FastAPI хорош для нейросетей?
— Почему FastAPI не панацея?
— Как в вебе используют нейросети?
— В чем сложность подключения генеративных ИИ?
— Как устроен наш новый курс и как будут проходить занятия
— Ваши вопросы
🎁А еще на вебинаре будет сюрприз для тех, кто присоединится к нам онлайн!
👉 Ссылкой для подключения поделимся здесь за полчаса до мероприятия
🔥6
Девман для питонистов
💥💥💥 В 19:00 Евгений Евсеев проведет вебинар, на котором разберем: — Чем FastAPI хорош для нейросетей? — Почему FastAPI не панацея? — Как в вебе используют нейросети? — В чем сложность подключения генеративных ИИ? — Как устроен наш новый курс и как будут проходить…
💥 Ждем вас на вебинаре! Стартуем в 19:00!
Подключиться можно по ссылке 👉 https://start.bizon365.ru/room/devman/FastAPI-dvmn-2025-07-29
Подключиться можно по ссылке 👉 https://start.bizon365.ru/room/devman/FastAPI-dvmn-2025-07-29
🔥4
Девман для питонистов
💥💥💥 В 19:00 Евгений Евсеев проведет вебинар, на котором разберем: — Чем FastAPI хорош для нейросетей? — Почему FastAPI не панацея? — Как в вебе используют нейросети? — В чем сложность подключения генеративных ИИ? — Как устроен наш новый курс и как будут проходить…
💥💥💥Начинаем через 5 минут! Заходите, чтобы не пропустить самое интересное!
Ждем вас по ссылке 👉 https://start.bizon365.ru/room/devman/FastAPI-dvmn-2025-07-29
Ждем вас по ссылке 👉 https://start.bizon365.ru/room/devman/FastAPI-dvmn-2025-07-29
❤2
⁉️Микросервисы ускоряют разработку или тормозят ее
Сегодня в 12:00 мы поговорим о микросервисах и их влиянии на разработку.
⚡️В рамках дискуссии обсудим:
— При каких условиях переход на микросервисы действительно решает проблемы, а не создает новые? Размер команды, сложность домена, нагрузка?
— Какие самые частые ошибки совершают команды при переходе на микросервисную архитектуру и как их можно было бы избежать?
— Как микросервисы влияют на скорость разработки новых фичей — в каких случаях ускоряют, в каких тормозят?
— Observability в микросервисах: какой минимально необходимый набор инструментов критично иметь с первого дня?
— Как решается проблема distributed transactions и consistency? Eventual consistency — панацея или вынужденный компромисс?
— Conway's Law в действии: как структура команды влияет на архитектуру микросервисов и нужно ли перестраивать команды под новую архитектуру?
— Как измерить ROI от перехода на микросервисы? Какие метрики говорят о том, что переход был успешным или провальным?
— Service mesh, Kubernetes, API Gateway — что из сложной инфраструктуры критично с первого дня, а что можно добавить потом?
— Если стартовать проект сегодня, с чего лучше начать: с монолита или сразу с микросервисов?
📌Дискуссия пройдет в прямом эфире на YouTube сегодня в 12:00. Будет ретрансляция на RUTUBE.
От нас участвует Евгений Евсеев — основатель и технический директор Devman.
Приглашаем присоединиться, послушать и поучаствовать в обсуждении в комментариях!
👉 Трансляция на YouTube
👉 Ретрансляция на RUTUBE
Нажимайте на колокольчик, чтобы не пропустить трансляцию!
Сегодня в 12:00 мы поговорим о микросервисах и их влиянии на разработку.
⚡️В рамках дискуссии обсудим:
— При каких условиях переход на микросервисы действительно решает проблемы, а не создает новые? Размер команды, сложность домена, нагрузка?
— Какие самые частые ошибки совершают команды при переходе на микросервисную архитектуру и как их можно было бы избежать?
— Как микросервисы влияют на скорость разработки новых фичей — в каких случаях ускоряют, в каких тормозят?
— Observability в микросервисах: какой минимально необходимый набор инструментов критично иметь с первого дня?
— Как решается проблема distributed transactions и consistency? Eventual consistency — панацея или вынужденный компромисс?
— Conway's Law в действии: как структура команды влияет на архитектуру микросервисов и нужно ли перестраивать команды под новую архитектуру?
— Как измерить ROI от перехода на микросервисы? Какие метрики говорят о том, что переход был успешным или провальным?
— Service mesh, Kubernetes, API Gateway — что из сложной инфраструктуры критично с первого дня, а что можно добавить потом?
— Если стартовать проект сегодня, с чего лучше начать: с монолита или сразу с микросервисов?
📌Дискуссия пройдет в прямом эфире на YouTube сегодня в 12:00. Будет ретрансляция на RUTUBE.
От нас участвует Евгений Евсеев — основатель и технический директор Devman.
Приглашаем присоединиться, послушать и поучаствовать в обсуждении в комментариях!
👉 Трансляция на YouTube
👉 Ретрансляция на RUTUBE
Нажимайте на колокольчик, чтобы не пропустить трансляцию!
🔥3