Большой розыгрыш от 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 разработчик»), так и те, кто только начинает с нами знакомиться.
Желаем удачи!😎
Друзья, мы решили активнее развивать свой телеграм-канал — делиться с вами больше полезностями о Python и веб-разработке. В честь этого анонсируем большой розыгрыш, в котором будет целых три победителя, и вот что они получат👇
Победитель
Победитель
Победитель
Условия розыгрыша:
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
Сегодня последний день участия в розыгрыше, уже завтра подведем итоги и выявим трех победителей☺️
Все подробности розыгрыша здесь:
https://t.me/devmanwiki/27
❤8🔥5👍2🥰1
Друзья, у нас возникли технические неполадки. Мы припозднились, только что выгрузили список участников. В связи с этим вопрос👇
В этой тяжелой борьбе победил вариант "Сейчас") Начнем трансляцию через 5 минут
❤4👍1
Победитель 1️⃣ : @otolstova
Победитель2️⃣ : @Ilyaangreevich
Победитель3️⃣ : @annfike
Поздравляем!🥳 🥳 🥳
Завтра с вами свяжется наш менеджер @andrey_from_devman
❤️- лайк на пост, если хотите больше розыгрышей😉
Победитель
Победитель
Поздравляем!
Завтра с вами свяжется наш менеджер @andrey_from_devman
❤️- лайк на пост, если хотите больше розыгрышей😉
Please open Telegram to view this post
VIEW IN TELEGRAM
❤40👍7🔥5
Привет, это «Девман»!
🥳 Мы вернулись и будем делиться с вами полезными и интересными материалами по всему, что связано с Python, курсами и программированием! Не переключайтесь, будет интересно!
Пока мы готовим для вас сюрприз ко Дню знаний, предлагаем познакомиться поближе и пройти небольшой опрос, чтобы мы могли делиться материалами, которые будут вам полезны!
🥳 Мы вернулись и будем делиться с вами полезными и интересными материалами по всему, что связано с Python, курсами и программированием! Не переключайтесь, будет интересно!
Пока мы готовим для вас сюрприз ко Дню знаний, предлагаем познакомиться поближе и пройти небольшой опрос, чтобы мы могли делиться материалами, которые будут вам полезны!
🥰9🔥4❤1👍1
Скидки 25% на мини-курсы «Основы Python» и «Git и GitHub» с 1 по 6 сентября — отличный повод начать сентябрь с изучения Python! 🎉
➡️ Мини-курс «Основы Python» — это стартовый учебный курс из 8 уроков. С ним вы разберетесь с базовыми конструкциями языка и попрактикуетесь в отладке кода. Он подойдет вам, даже если вы никогда не пробовали программировать!
Получить скидку можно здесь
➡️ Мини-курс «Git и GitHub» состоит из 5 уроков. С ним вы освоите универсальные инструменты, которые позволяют совместно работать над кодом и сохранять историю изменений, когда над проектом работают несколько разработчиков. Это незаменимая штука для всех, кто связан с программированием.
Мини-курс будет полезен не только будущим разработчикам, но и тестировщикам, системным администраторам и верстальщикам!
Получить скидку можно здесь
Уже работаете в IT и знаете основы? Расскажите про скидки друзьям, которые давно хотели изучать Python!
➡️ Мини-курс «Основы Python» — это стартовый учебный курс из 8 уроков. С ним вы разберетесь с базовыми конструкциями языка и попрактикуетесь в отладке кода. Он подойдет вам, даже если вы никогда не пробовали программировать!
Получить скидку можно здесь
➡️ Мини-курс «Git и GitHub» состоит из 5 уроков. С ним вы освоите универсальные инструменты, которые позволяют совместно работать над кодом и сохранять историю изменений, когда над проектом работают несколько разработчиков. Это незаменимая штука для всех, кто связан с программированием.
Мини-курс будет полезен не только будущим разработчикам, но и тестировщикам, системным администраторам и верстальщикам!
Получить скидку можно здесь
Уже работаете в IT и знаете основы? Расскажите про скидки друзьям, которые давно хотели изучать Python!
🔥5❤3🥰2
Во время обучения и работы программистом часто приходится задавать вопросы, уточнять задание, просить помощи у более опытных коллег.
Грамотный и полный вопрос может ускорить решение задачи или вовсе закрыть её, а сформулированный «на скорую руку» — погрузить во многочасовое обсуждение абстракций без гарантий результата.
❓ Как же задавать вопросы своевременно и эффективно?
Сегодня расскажем о частых ошибках и поделимся рекомендациями.
Читайте в энциклопедии «Девман» полезные статьи на тему вопросов:
- Как гуглить
- Откуда берутся нерешаемые проблемы
- Не знаешь что выбрать — спроси у заказчика
- Метод утёнка
Грамотный и полный вопрос может ускорить решение задачи или вовсе закрыть её, а сформулированный «на скорую руку» — погрузить во многочасовое обсуждение абстракций без гарантий результата.
❓ Как же задавать вопросы своевременно и эффективно?
Сегодня расскажем о частых ошибках и поделимся рекомендациями.
Читайте в энциклопедии «Девман» полезные статьи на тему вопросов:
- Как гуглить
- Откуда берутся нерешаемые проблемы
- Не знаешь что выбрать — спроси у заказчика
- Метод утёнка
🔥6👍2❤1🥰1
⚡️ Всем привет! Это Devman. Предлагаем вам размяться и поискать улучшения для кода для чат-бота!
Описание продукта: чат-бот в Телеграм для обмена вещами позволяет пользователям обмениваться, если они лайкнули вещи друг друга.
Данные лежат в нереляционной базе данных redis json, уникальный id пользователя — chat_id Телеграма. Фрагмент кода ищет совпадение между лайками пользователей. Результат — булевое значение, указывающее доступна ли вещь для обмена.
Найдите проблемы в коде и предложите улучшение кода:
Предлагайте решения в комментариях, а мы вернемся завтра с нашим вариантом!
Описание продукта: чат-бот в Телеграм для обмена вещами позволяет пользователям обмениваться, если они лайкнули вещи друг друга.
Данные лежат в нереляционной базе данных 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
Предлагайте решения в комментариях, а мы вернемся завтра с нашим вариантом!
🔥6❤2
⚡️ Возвращаемся с нашим вариантом улучшения!
В первоначальном фрагменте кода мы нашли несколько проблем, которые стоит поправить:
➡️ Избавьтесь от сравнений с True/False
➡️Уточните названия переменных:
➡️ Разверните if, сделайте код плоским
➡️ Высушите код
➡️ Сократите валидаторы с использованием any
⚡️ И в результате нашли такое изящное решение:
➡️ То, что явно не было указано в задании — liked_by_chat_ids может быть пустой, тогда redis возвращает
➡️ По неймингу предлагаем использовать противопоставление «мое-чужое», чтобы явно различать пользователей.
➡️ Поскольку
Мы увидели много классных вариантов в комментариях!
➡️ Конструкцию с
➡️ @IlyaShirko озвучил и начал ремонт нейминга —
➡️ @LuSP7 продолжил успешно чинить нейминг
Всем спасибо за активность! Кому понравился формат — ставьте 🔥 и мы пойдем искать еще фрагменты для улучшайзинга!
В первоначальном фрагменте кода мы нашли несколько проблем, которые стоит поправить:
➡️ Избавьтесь от сравнений с 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 продолжил успешно чинить нейминг
Всем спасибо за активность! Кому понравился формат — ставьте 🔥 и мы пойдем искать еще фрагменты для улучшайзинга!
DEVMAN
Избавьтесь от сравнений с True/False
Следующие две конструкции делают одно и то же: if value == True: if value: Еще …
🔥12