Forwarded from IT Юмор
This media is not supported in your browser
VIEW IN TELEGRAM
Не нужно давать джуну доступ к проду
🤣41👍36😁7💩2
А вот и свежая подборка лучших материалов по Python!
Узнайте, как подключить AutoGPT к своему проекту, какие обновления затронули Django и как обучить GPT-4 новым данным. Бонусом — огромная подборка полезных статей, гайдов и видео:
https://tproger.ru/articles/python-digest-8/
#дайджест #веб #django #нейросети #gamedev
Узнайте, как подключить AutoGPT к своему проекту, какие обновления затронули Django и как обучить GPT-4 новым данным. Бонусом — огромная подборка полезных статей, гайдов и видео:
https://tproger.ru/articles/python-digest-8/
#дайджест #веб #django #нейросети #gamedev
😁13💩4👍2👏1
В AWS Lambda наконец-то добавили рантайм Python 3.10
Как-то пропустил эту новость, но фишка в том, что ребята в AWS почему-то добавляют новые рантаймы с задержкой в 1,5 года. Так что это вполне себе важная новость.
Конечно, это не всегда критично, да и для serverless-приложений можно завести контейнер с нужной версией Python. Но такое отставание для такой крупной компании просто странно. Да и у таких контейнеров cold start медленнее.
Анонс и инструкцию можно почитать здесь: https://aws.amazon.com/ru/blogs/compute/python-3-10-runtime-now-available-in-aws-lambda/
#новости
Как-то пропустил эту новость, но фишка в том, что ребята в AWS почему-то добавляют новые рантаймы с задержкой в 1,5 года. Так что это вполне себе важная новость.
Конечно, это не всегда критично, да и для serverless-приложений можно завести контейнер с нужной версией Python. Но такое отставание для такой крупной компании просто странно. Да и у таких контейнеров cold start медленнее.
Анонс и инструкцию можно почитать здесь: https://aws.amazon.com/ru/blogs/compute/python-3-10-runtime-now-available-in-aws-lambda/
#новости
😁8👍1
Как улучшить дизайн ООП в Python: Принципы SOLID
Когда вы пишете на Python, используя ООП, сложно сразу правильно запланировать то, как классы и объекты будут взаимодействовать друг с другом. Тут могут здорово помочь принципы SOLID.
Статья на английском, которая поможет разобраться, что за принципы и как их лучше применять.
Серия коротких видео на русском, которая объясняет то же самое. И хотя примеры на JS, всё равно объяснено очень доступно и применимо для Python.
#лучшиепрактики
Когда вы пишете на Python, используя ООП, сложно сразу правильно запланировать то, как классы и объекты будут взаимодействовать друг с другом. Тут могут здорово помочь принципы SOLID.
Статья на английском, которая поможет разобраться, что за принципы и как их лучше применять.
Серия коротких видео на русском, которая объясняет то же самое. И хотя примеры на JS, всё равно объяснено очень доступно и применимо для Python.
#лучшиепрактики
❤4👍1
Оптимизируем использование памяти в приложениях Python
Когда дело доходит до оптимизации производительности, чаще всего особое внимание уделяется скорости и активности использования ЦП. Гораздо реже кто-либо задумывается о потреблении памяти, а зря.
В этой статье будет исследовано, как находить в ваших приложениях на Python такие участки с перерасходом памяти. Проанализировано, по каким причинам это происходит и как снижать использование памяти, пользуясь простыми приёмами и эффективными структурами данных.
#лучшиепрактики
Когда дело доходит до оптимизации производительности, чаще всего особое внимание уделяется скорости и активности использования ЦП. Гораздо реже кто-либо задумывается о потреблении памяти, а зря.
В этой статье будет исследовано, как находить в ваших приложениях на Python такие участки с перерасходом памяти. Проанализировано, по каким причинам это происходит и как снижать использование памяти, пользуясь простыми приёмами и эффективными структурами данных.
#лучшиепрактики
👍2👌1
Как работает функция filter?
Вроде бы всё просто, функция делает буквально то, о чём говорит её название, — фильтрует элементы в последовательности. Но давайте разбираться, как именно она это делает.
Основная фишка функции
Например:
Мы получим:
Для базового использования этого понимания должно хватить. Но у
#собеседование
Вроде бы всё просто, функция делает буквально то, о чём говорит её название, — фильтрует элементы в последовательности. Но давайте разбираться, как именно она это делает.
Основная фишка функции
filter
в том, что каждый элемент передается функции, которая включает его в последовательность, если по условию получает True
, и отбрасывает в случае False
.Например:
def add_three(x):
if x % 2 == 0:
return True
else:
return False
li = [1,2,3,4,5,6,7,8]
[i for i in filter(add_three, li)]
Мы получим:
#=> [2, 4, 6, 8}
Для базового использования этого понимания должно хватить. Но у
filter
также есть несколько особенностей использования, которые важно учитывать при продвинутой разработке. О них подробнее можно почитать в статье.#собеседование
👍5
Как использовать инструменты статического анализа в Python
Cтатические анализаторы кода здорово оптимизировали разработку приложений. Они избавляют от необходимости искать ошибки и уязвимости в системе продакшн или среде развертывания, указывая участок предполагаемого сбоя на основе типизации и других подсказок кода.
В статье подробно разобрали несколько инструментов статического анализа с открытым ПО для Python, включая Bandit и Radon. Bandit находит уязвимости в коде, а Radon генерирует метрики о сложности и удобстве сопровождения кода: https://nuancesprog.ru/p/17267/
#лучшиепрактики #безопасность
Cтатические анализаторы кода здорово оптимизировали разработку приложений. Они избавляют от необходимости искать ошибки и уязвимости в системе продакшн или среде развертывания, указывая участок предполагаемого сбоя на основе типизации и других подсказок кода.
В статье подробно разобрали несколько инструментов статического анализа с открытым ПО для Python, включая Bandit и Radon. Bandit находит уязвимости в коде, а Radon генерирует метрики о сложности и удобстве сопровождения кода: https://nuancesprog.ru/p/17267/
#лучшиепрактики #безопасность
👍1
Основатель «Типичного программиста» в авторском канале рассказывает с чего начинался Tproger (спойлер: с мемов): @nostoppers
Кроме предпринимательства Алексей занимается менторингом, консультирует фаундеров стартапов, помогает бизнесам расти, а людям экономить время на достижение своих целей. В своём канале даёт советы по личной эффективности, рассуждает про бизнес, программирование, медиа и другие темы.
Несколько примеров постов:
— Есть идея по стартапу. Что дальше?
— Как быть с задачами, которые не делаются?
— Неочевидные правила Daily standup
— Пробежки как способ развития бизнеса
— Правила проведения демо разработки
Кроме предпринимательства Алексей занимается менторингом, консультирует фаундеров стартапов, помогает бизнесам расти, а людям экономить время на достижение своих целей. В своём канале даёт советы по личной эффективности, рассуждает про бизнес, программирование, медиа и другие темы.
Несколько примеров постов:
— Есть идея по стартапу. Что дальше?
— Как быть с задачами, которые не делаются?
— Неочевидные правила Daily standup
— Пробежки как способ развития бизнеса
— Правила проведения демо разработки
❤1👍1
Компания Modular выпустила Mojo — Python-совместимый язык с производительностью Си
2 мая 2023 года компания Modular, одна из компаний-лидеров в сфере AI, анонсировала новый язык программирования Mojo.
Язык обещает полную совместимость с Python и (внимание!) сверх-высокую производительность. В компании утверждают, что автоматическое низкоуровневое распараллеливание, возможности строгой типизации и статической компиляции уже на самых ранних этапах развития языка позволяют достичь скорости, превосходящей Python в 35 000 раз.
В теории, как всегда, всё хорошо, но как на деле — давайте разбираться: https://habr.com/ru/articles/734318/
#новости
2 мая 2023 года компания Modular, одна из компаний-лидеров в сфере AI, анонсировала новый язык программирования Mojo.
Язык обещает полную совместимость с Python и (внимание!) сверх-высокую производительность. В компании утверждают, что автоматическое низкоуровневое распараллеливание, возможности строгой типизации и статической компиляции уже на самых ранних этапах развития языка позволяют достичь скорости, превосходящей Python в 35 000 раз.
В теории, как всегда, всё хорошо, но как на деле — давайте разбираться: https://habr.com/ru/articles/734318/
#новости
🤔10👍1🥰1
Что почитать на выходных: «Паттерны разработки на Python: TDD, DDD и событийно-ориентированная архитектура» Гарри Персиваля и Боба Грегори
Неплохая книга, в которой авторы познакомят вас с проверенными паттернами, чтобы вы могли управлять сложностью приложений и получать максимальную отдачу от тестов.
Отдельно хорошо то, что теория подкреплена примерами на чистом Python без синтаксической избыточности Java и C#.
#книги #паттерны
Неплохая книга, в которой авторы познакомят вас с проверенными паттернами, чтобы вы могли управлять сложностью приложений и получать максимальную отдачу от тестов.
Отдельно хорошо то, что теория подкреплена примерами на чистом Python без синтаксической избыточности Java и C#.
#книги #паттерны
👍8❤1👎1🤯1👨💻1
Особенности работы с русской кодировкой при загрузке файлов через aiohttp
Если работали с aiohttp, вы наверняка натыкались на баги с битой кодировкой. Если да, то вот небольшая статья на несколько минут чтения, в которой разработчики рассказывают о своём опыте столкновения с этой ошибкой и её фиксом.
#лучшиепрактики #безопасность #библиотека
Если работали с aiohttp, вы наверняка натыкались на баги с битой кодировкой. Если да, то вот небольшая статья на несколько минут чтения, в которой разработчики рассказывают о своём опыте столкновения с этой ошибкой и её фиксом.
#лучшиепрактики #безопасность #библиотека
👍1
25 мини-проектов для практики Python
Пет-проекты обычно делают для себя в свободное время. Но основная проблема — это найти такие пет-проекты, чтобы научиться чему-нибудь полезному, не забить на них в процессе и сделать их так, чтобы в портфолио не стыдно было приложить.
Вот подборка из 25 идей мини-проектов для практики с готовым кодом
Там есть и генератор паролей, и добавление водяного знака на фото, и уведомление о низком заряде батареи и много других интересных идей. Для основы хватит, а если допилить интерфейс и добавить фич, получится вполне себе пет-проект.
#подборка #гайд #начинающим
Пет-проекты обычно делают для себя в свободное время. Но основная проблема — это найти такие пет-проекты, чтобы научиться чему-нибудь полезному, не забить на них в процессе и сделать их так, чтобы в портфолио не стыдно было приложить.
Вот подборка из 25 идей мини-проектов для практики с готовым кодом
Там есть и генератор паролей, и добавление водяного знака на фото, и уведомление о низком заряде батареи и много других интересных идей. Для основы хватит, а если допилить интерфейс и добавить фич, получится вполне себе пет-проект.
#подборка #гайд #начинающим
👍19👎2❤1
«Карманный синоптик за час»: пишем Telegram-бота для мониторинга погоды на Python
Небольшой гайд о том, как написать своего Telegram-бота для получения данных о погоде в любом городе.
В статье подробно рассмотрели работу с API, парсинг JSON и написали бота на асинхронной библиотеке aiogram. А после — загрузили на виртуальный сервер и запустили бота.
#туториал #бот #telegram
Небольшой гайд о том, как написать своего Telegram-бота для получения данных о погоде в любом городе.
В статье подробно рассмотрели работу с API, парсинг JSON и написали бота на асинхронной библиотеке aiogram. А после — загрузили на виртуальный сервер и запустили бота.
#туториал #бот #telegram
❤10👍4
Дайджест Python #9: PandasAI, телеграм-бот на Django и языковые модели на Python
Собрали дайджест из лучших материалов. Там есть полезные статьи, гайды и видео на русском и английском языках.
Узнайте, что такое PandasAI и почему он изменит Data Science, как написать Telegram-бота на Django и как сделать языковую модель на Python:
https://tproger.ru/articles/dajdzhest-python-9/
#дайджест
Собрали дайджест из лучших материалов. Там есть полезные статьи, гайды и видео на русском и английском языках.
Узнайте, что такое PandasAI и почему он изменит Data Science, как написать Telegram-бота на Django и как сделать языковую модель на Python:
https://tproger.ru/articles/dajdzhest-python-9/
#дайджест
👍3
Как бесплатно хостить Telegram-ботов?
На днях делился инструкцией по созданию бота для мониторинга погоды. Внимательный читатель поинтересовался, можно ли хостить бота бесплатно — в статье предлагают покупать хостинг.
Я пообещал найти и поделиться гайдом. Собственно, вот гайд, который я использую, когда нужно завести небольшого личного бота на Replit. Чтобы он работал без остановки и его не сбрасывало каждые 20-30 минут.
Но по личному опыту скажу, что больше согласен со вторым комментарием — рано или поздно всё равно придётся задуматься о переезде и потратить 100-300 рублей на нормальный хостинг.
Далеко за примером ходить не буду, однажды Replit внезапно как-то странно перезапустил моего бота, и тот запросил код из сообщения. Я этого не делал, не подумал про Replit и сбросил все активные сеансы.
И теперь каждый раз, когда я запускаю бота на Replit, Telegram выкидывает все активные сеансы в моём аккаунте и исправить это нельзя. Видимо, Telegram счёл подозрительным IP/сервер Replit. Благо, ботом уже активно пользовались и другие люди, поэтому Replit только поторопил с переносом.
Надо ли говорить, что на нормальном платном хостинге такие вопросы всегда можно решить с поддержкой. Или, как минимум, взять сервер с другим IP/гео. Но тут, как говорится, на вкус и цвет.
#туториал #бот #telegram
На днях делился инструкцией по созданию бота для мониторинга погоды. Внимательный читатель поинтересовался, можно ли хостить бота бесплатно — в статье предлагают покупать хостинг.
Я пообещал найти и поделиться гайдом. Собственно, вот гайд, который я использую, когда нужно завести небольшого личного бота на Replit. Чтобы он работал без остановки и его не сбрасывало каждые 20-30 минут.
Но по личному опыту скажу, что больше согласен со вторым комментарием — рано или поздно всё равно придётся задуматься о переезде и потратить 100-300 рублей на нормальный хостинг.
Далеко за примером ходить не буду, однажды Replit внезапно как-то странно перезапустил моего бота, и тот запросил код из сообщения. Я этого не делал, не подумал про Replit и сбросил все активные сеансы.
И теперь каждый раз, когда я запускаю бота на Replit, Telegram выкидывает все активные сеансы в моём аккаунте и исправить это нельзя. Видимо, Telegram счёл подозрительным IP/сервер Replit. Благо, ботом уже активно пользовались и другие люди, поэтому Replit только поторопил с переносом.
Надо ли говорить, что на нормальном платном хостинге такие вопросы всегда можно решить с поддержкой. Или, как минимум, взять сервер с другим IP/гео. Но тут, как говорится, на вкус и цвет.
#туториал #бот #telegram
👍8🔥3❤2
Pandas AI — ИИ-библиотека для работы с Big Data
Большинство разработчиков на Python представляют, что такое pandas. Это главная библиотека в Python для работы с данными. Её активно используют аналитики данных и дата-сайентисты
А теперь представьте, что у вас есть огромная база данных на миллиарды строк, из которой нужно вытянуть одно нужное значение. Скорее всего, на это вы потратите много времени, не говоря уже об обработке данных.
Отличная новость, теперь можно «поговорить» со своей БД и просто задать нужный вопрос. А в ответ получить нужное вам значение. Звучит странно, но именно так и работает Pandas AI!
Рассказываем подробнее, что такое Pandas AI и как его использовать
#нейросети #инструменты
Большинство разработчиков на Python представляют, что такое pandas. Это главная библиотека в Python для работы с данными. Её активно используют аналитики данных и дата-сайентисты
А теперь представьте, что у вас есть огромная база данных на миллиарды строк, из которой нужно вытянуть одно нужное значение. Скорее всего, на это вы потратите много времени, не говоря уже об обработке данных.
Отличная новость, теперь можно «поговорить» со своей БД и просто задать нужный вопрос. А в ответ получить нужное вам значение. Звучит странно, но именно так и работает Pandas AI!
Рассказываем подробнее, что такое Pandas AI и как его использовать
#нейросети #инструменты
👍5👎1
Инвариантность, ковариантность и контравариантность на примере Python
До сих пор не понимаете, что такое ковариантность и контравариантность? Чувствуете, как они дышат вам в спину, но когда оборачиваетесь ничего не находите? Давайте попробую объяснить.
Всё просто:
1. Вариантность — перенос наследования исходных типов на производные от них типы.
2. Ковариантность — перенос наследования исходных типов на производные от них типы в прямом порядке.
3. Контравариантность — перенос наследования исходных типов на производные от них типы в обратном порядке.
4. Инвариантность — ситуация, когда наследование исходных типов не переносится на производные.
Всё равно не понятно? Тогда вот вам отличное видео, в котором объясняют инвариантность, ковариантность и контравариантность на примере Python.
До сих пор не понимаете, что такое ковариантность и контравариантность? Чувствуете, как они дышат вам в спину, но когда оборачиваетесь ничего не находите? Давайте попробую объяснить.
Всё просто:
1. Вариантность — перенос наследования исходных типов на производные от них типы.
2. Ковариантность — перенос наследования исходных типов на производные от них типы в прямом порядке.
3. Контравариантность — перенос наследования исходных типов на производные от них типы в обратном порядке.
4. Инвариантность — ситуация, когда наследование исходных типов не переносится на производные.
Всё равно не понятно? Тогда вот вам отличное видео, в котором объясняют инвариантность, ковариантность и контравариантность на примере Python.
YouTube
Инвариантность, ковариантность и контравариантность на примере Python
Поговорим о насущном! Инвариантность, ковариантность и контравариантность на примере Python:)
0:00 Вариантность
3:01 Иерархия классов
5:06 Ковариантность
7:05 Инвариантность
10:32 Контравариантность
15:21 Резюме
Мой курс «Хардкорная веб-разработка» — h…
0:00 Вариантность
3:01 Иерархия классов
5:06 Ковариантность
7:05 Инвариантность
10:32 Контравариантность
15:21 Резюме
Мой курс «Хардкорная веб-разработка» — h…
❤6👍5👎1💩1
Как получить отрицательную длину len()≤0 на Python?
Встроенная функция
Но возможно ли получить негативное значение из встроенной функции
Вот интересная заметка, в которой автор задался таким вопросом. И пришёл к очень необычному выводу, почему иногда всё-таки нужно задавать себе такие глупые вопросы.
#начинающим #лучшиепрактики
Встроенная функция
len()
возвращает длину (количество элементов) объекта. Количество элементов в коллекции не может быть отрицательным. Оно должно быть равно 0 или больше.Но возможно ли получить негативное значение из встроенной функции
len()
в Python? Но тут скорее правильный вопрос, а зачем?Вот интересная заметка, в которой автор задался таким вопросом. И пришёл к очень необычному выводу, почему иногда всё-таки нужно задавать себе такие глупые вопросы.
#начинающим #лучшиепрактики
🤔5👍4👎3❤1