Нас больше 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
Скидки 25% на мини-курсы «Асинхронный Python», «Чат-боты на Python», «Django», «Знакомство с Django: ORM» с 12 по 18 сентября ко Дню программиста! 🎉
Спешим поздравить вас с наступающим праздником и дарим скидки на мини-курсы, чтобы вы могли усилить свое резюме новыми скиллами!
С мини-курсом «Асинхронный Python» вы сможете упрощать архитектуру ПО и создавать сложные проекты, не теряя в скорости разработки.
👉 Получить скидку здесь
С мини-курсом «Чат-боты на Python» вы получите боевые навыки создания ботов — научитесь разворачивать их на серверах, работать с базами данных и заглянете «под капот» к популярным библиотекам.
👉 Получить скидку здесь
С мини-курсом «Знакомство с Django: ORM» погрузитесь в мир баз данных, научитесь работать с ними и писать сложные запросы.
👉 Получить скидку здесь
С мини-курсом «Django» изучите самый популярный веб-фреймворк на Python — сможете создавать современные сайты, строить стартапы и работать над проектами крупных IT-компаний!
👉 Получить скидку здесь
Спешим поздравить вас с наступающим праздником и дарим скидки на мини-курсы, чтобы вы могли усилить свое резюме новыми скиллами!
С мини-курсом «Асинхронный Python» вы сможете упрощать архитектуру ПО и создавать сложные проекты, не теряя в скорости разработки.
👉 Получить скидку здесь
С мини-курсом «Чат-боты на Python» вы получите боевые навыки создания ботов — научитесь разворачивать их на серверах, работать с базами данных и заглянете «под капот» к популярным библиотекам.
👉 Получить скидку здесь
С мини-курсом «Знакомство с Django: ORM» погрузитесь в мир баз данных, научитесь работать с ними и писать сложные запросы.
👉 Получить скидку здесь
С мини-курсом «Django» изучите самый популярный веб-фреймворк на Python — сможете создавать современные сайты, строить стартапы и работать над проектами крупных IT-компаний!
👉 Получить скидку здесь
👍4🔥3❤1