Девман для питонистов
532 subscribers
144 photos
3 videos
186 links
Веб-разработка на Python. Канал от практиков.

Сайт школы Девман: https://dvmn.org/
Контакт для связи: @yulya_devman
Download Telegram
Большой розыгрыш от Devman! 🥳🥳🥳

Друзья, мы решили активнее развивать свой телеграм-канал — делиться с вами больше полезностями о Python и веб-разработке. В честь этого анонсируем большой розыгрыш, в котором будет целых три победителя, и вот что они получат👇

Победитель 1️⃣: Бесплатный доступ к любому курсу по темам (список курсов по темам: https://dvmn.org/modules/) или скидку 7 000 руб. на курс «Профессия — Мидл Python/Django разработчик».

Победитель 2️⃣: Скидку 50% на любой из курсов по темам (список курсов по темам: https://dvmn.org/modules/) или скидку 5 000 руб. на курс «Профессия — Мидл Python/Django разработчик».

Победитель 3️⃣: Скидку 40% на любой из курсов по темам (список курсов по темам: https://dvmn.org/modules/) или скидку 3 000 руб. на курс «Профессия — Мидл Python/Django разработчик».

Условия розыгрыша:
1️⃣ Подписаться на этот телеграм-канал
2️⃣ Поставить реакцию на этот пост❤️

Важно: участвовать можно до 18 сентября включительно, а уже 19 сентября мы подведем итоги, выбрав рандомно трех счастливчиков 😉

Участвовать могут абсолютно все: и те, кто уже учатся с нами на любом из курсов (в том числе «Профессия — Мидл Python/Django разработчик»), так и те, кто только начинает с нами знакомиться.

Желаем удачи!😎
Please open Telegram to view this post
VIEW IN TELEGRAM
313👍22🔥14🥰5
Нас больше 300! 🥳

Сегодня последний день участия в розыгрыше, уже завтра подведем итоги и выявим трех победителей☺️

Все подробности розыгрыша здесь:
https://t.me/devmanwiki/27
8🔥5👍2🥰1
Друзья, у нас возникли технические неполадки. Мы припозднились, только что выгрузили список участников. В связи с этим вопрос👇
Проводим трансляцию с итогами
Anonymous Poll
55%
Сейчас
45%
Завтра с утра
В этой тяжелой борьбе победил вариант "Сейчас") Начнем трансляцию через 5 минут
4👍1
Live stream finished (7 minutes)
Победитель 1️⃣: @otolstova

Победитель 2️⃣: @Ilyaangreevich

Победитель 3️⃣: @annfike

Поздравляем!🥳🥳🥳
Завтра с вами свяжется наш менеджер @andrey_from_devman

❤️- лайк на пост, если хотите больше розыгрышей😉
Please open Telegram to view this post
VIEW IN TELEGRAM
40👍7🔥5
Привет, это «Девман»!

🥳 Мы вернулись и будем делиться с вами полезными и интересными материалами по всему, что связано с Python, курсами и программированием! Не переключайтесь, будет интересно!

Пока мы готовим для вас сюрприз ко Дню знаний, предлагаем познакомиться поближе и пройти небольшой опрос, чтобы мы могли делиться материалами, которые будут вам полезны!
🥰9🔥41👍1
Скидки 25% на мини-курсы «Основы Python» и «Git и GitHub» с 1 по 6 сентября — отличный повод начать сентябрь с изучения Python! 🎉

➡️ Мини-курс «Основы Python» — это стартовый учебный курс из 8 уроков. С ним вы разберетесь с базовыми конструкциями языка и попрактикуетесь в отладке кода. Он подойдет вам, даже если вы никогда не пробовали программировать!

Получить скидку можно здесь

➡️ Мини-курс «Git и GitHub» состоит из 5 уроков. С ним вы освоите универсальные инструменты, которые позволяют совместно работать над кодом и сохранять историю изменений, когда над проектом работают несколько разработчиков. Это незаменимая штука для всех, кто связан с программированием.

Мини-курс будет полезен не только будущим разработчикам, но и тестировщикам, системным администраторам и верстальщикам!

Получить скидку можно здесь

Уже работаете в IT и знаете основы? Расскажите про скидки друзьям, которые давно хотели изучать Python!
🔥53🥰2
Во время обучения и работы программистом часто приходится задавать вопросы, уточнять задание, просить помощи у более опытных коллег.

Грамотный и полный вопрос может ускорить решение задачи или вовсе закрыть её, а сформулированный «на скорую руку» — погрузить во многочасовое обсуждение абстракций без гарантий результата.

Как же задавать вопросы своевременно и эффективно?

Сегодня расскажем о частых ошибках и поделимся рекомендациями.

Читайте в энциклопедии «Девман» полезные статьи на тему вопросов:
- Как гуглить
- Откуда берутся нерешаемые проблемы
- Не знаешь что выбрать — спроси у заказчика
- Метод утёнка
🔥6👍21🥰1
⚡️ Всем привет! Это Devman. Предлагаем вам размяться и поискать улучшения для кода для чат-бота!

Описание продукта: чат-бот в Телеграм для обмена вещами позволяет пользователям обмениваться, если они лайкнули вещи друг друга.

Данные лежат в нереляционной базе данных redis json, уникальный id пользователя — chat_id Телеграма. Фрагмент кода ищет совпадение между лайками пользователей. Результат — булевое значение, указывающее доступна ли вещь для обмена.

Найдите проблемы в коде и предложите улучшение кода:

is_available = False
for stuff in users_stuff:
if stuff.status_like_users == False:
pass
else:
for user in stuff.status_like_users:
if user == username_2.external_id:
is_available = True

Предлагайте решения в комментариях, а мы вернемся завтра с нашим вариантом!
🔥62
⚡️ Возвращаемся с нашим вариантом улучшения!

В первоначальном фрагменте кода мы нашли несколько проблем, которые стоит поправить:

➡️ Избавьтесь от сравнений с True/False

➡️Уточните названия переменных: users_stuff, username_2, external_id, status_like_users

➡️ Разверните if, сделайте код плоским

➡️ Высушите код

➡️ Сократите валидаторы с использованием any

⚡️ И в результате нашли такое изящное решение:

# Лайкнул ли владелец чужой вещи что-то из вещей пользователя
has_match = any(
foreign_stuff_owner.chat_id in my_stuff.liked_by_chat_ids
for my_stuff in my_stuff_items if my_stuff.liked_by_chat_ids # liked_by_chat_ids can be False
)


➡️ То, что явно не было указано в задании — liked_by_chat_ids может быть пустой, тогда redis возвращает False, поэтому добавили проверочку.

➡️ По неймингу предлагаем использовать противопоставление «мое-чужое», чтобы явно различать пользователей.

➡️ Поскольку stuff во множественном числе не используется, то в этом случае корректно использовать stuff_items для указания на коллекцию вещей

Мы увидели много классных вариантов в комментариях!

➡️ Конструкцию с any предложил почти сразу @thunderhawkk.
➡️ @IlyaShirko озвучил и начал ремонт нейминга — liked_by утащили даже в наш итоговый вариант
➡️ @LuSP7 продолжил успешно чинить нейминг

Всем спасибо за активность! Кому понравился формат — ставьте 🔥 и мы пойдем искать еще фрагменты для улучшайзинга!
🔥12