Обновить
1024K+

Python *

Высокоуровневый язык программирования

673,89
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Нейронные сети не могут обобщать периодические зависимости. Как это исправить?

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели6K

Изучая нейронные сети все глубже, сталкиваешься с тем, что не ко всем задачам применимы полносвязные глубокие нейронные сети с классическими слоями Linear и слоями активации Relu, Sigmoid, Than и их вариации. Почему не используют остальные функции в качестве активации, например, периодические?
В целом, периодические функции являются одними из основных функций, важными для человеческого общества и естествознания: суточные и годовые циклы в мире диктуются периодическими движениями солнечной системы, графики изменения погоды, показателей мировой экономики также включают периодическую компоненту.

Читать далее

Как сделать Telegram-бота для проверки аптайма своего сервиса на Python (ч.3 получение графиков через телеграм)

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели7.3K

Всем привет! В предыдущих статьях (часть 1 и часть 2) я описывал мой опыт в части "наколенной" разработки системы алертинга и проверки состояния для сервиса, работающего на удаленном сервере, коммуникации с которым происходят через телеграм бота. Такой способ коммуникации удобен, потому что телефон с телегой всегда под рукой, а ноутбук иногда даже доставать лень, когда все можно быстро проверить в телеге.

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

Под кат

Развлечения с хеш-коллизиями

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели6.9K

Мой друг и коллега по цеху, блоггер Сэм, недавно опубликовал своё третье иллюстрированное руководство, темой которого стало хеширование. Нет острой необходимости читать его руководство перед прочтением моей статьи, но я очень рекомендую вам это сделать. Хотя бы ради того, чтобы посмотреть на восхитительные анимации, от которых невозможно оторваться. Честно — они просто потрясающие. Тут, к сожалению, анимаций вы не найдёте, поэтому насмотритесь на них в той статье, а потом возвращайтесь сюда. Здесь вы сможете немного позабавиться поиском коллизий алгоритма хеширования MurmurHash3.

Сразу хочу отметить, что этот материал я писал исключительно ради развлечения. Ничто из того, что я тут покажу, не предназначено для продакшн-кода. И вот, как всегда, ссылка на GitHub-репозиторий, в котором можно найти код к этой статье.

Идея этого поста возникла после того, как меня попросили помочь с поиском коллизий. Тогда меня охватило непреодолимое желание узнать о том, сколько хешей в секунду я смогу выжать из доступного мне железа. Собственно, тут я расскажу о поиске хеш-коллизий MurmurHash3 на скорости 200 гигахешей в секунду.

Читать далее

Пишем логи Python при помощи библиотеки Structlog

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

В этом посте мы расскажем о том, как structlog может помочь вам писать логи, которые не только помогают в повседневной работе, но и реализуют лучшие практики для согласованного логирования во всём проекте.

Также мы рассмотрим распространённые сложности логирования и узнаем, как их позволяет решать structlog.

Читать далее

Анализ данных по метеорологическим станциям с помощью Pandas

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели18K

В статье будет рассмотрено решение задачи анализа открытых метеорологических данных сервиса meteo.ru Федеральной службы по гидрометеорологии и мониторингу окружающей среды. Анализ будет произведен в Jupyter Notebook при помощи Python библиотеки Pandas, а также будут сделаны выводы относительно того какие изменения произошли в климате за последние 50 лет в нашей стране. Вы узнаете еще одну страшную правду о глобальном потеплении…

Узнать правду

Fastapi 0.100.0-beta1: ещё быстрее

Время на прочтение5 мин
Охват и читатели8K

На прошлой неделе вышла бета-версия нового FastAPI 0.100-beta1, а это значит что? Правильно, пришло время performance-тестов!

Читать далее

easypy – неизвестная библиотека для борьбы с boiler-plate на python

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели4.9K

Если занимаетесь автотестами на python, часто работаете с многопоточностью и хотите уменьшить количество boiler-plate кода в ваших тестах – имеет смысл посмотреть на библиотеку easypy.  

Читать далее

Как сделать Telegram-бота для проверки аптайма своего сервиса на Python (ч.2 алертинг)

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели8.1K

Всем привет, в предыдущей статье я начал описывать мой опыт разработки Python телеграм-бота для проверки работоспособности и мониторинга моего сервиса, расположенного на удаленом сервере. Если в двух словах, то когда делаешь какой-нибудь пет-проект, да и в некоторых рабочих задачах, бывает хочется иметь всю текущую информацию по состоянию системы под рукой (особенно мне нравится возможность видеть все и управлять через телеграм бота), при этом не хочется тратить на разработку много времени.

В предыдущей части мы рассматривали способ получить мгновенные метрики по запросу. В этой части мы будем делать простой алертинг, то есть получение сообщения в боте, когда в системе начались сбои. А в следующей третьей части разберем еще случай сбора аналитики и получения онлайн графиков.

Читать далее

The Game is On: поиск и закрытие уязвимостей на НТО

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели2K

Привет! В прошлый раз я рассказывал про содержательную форензику на НТО по информационной безопасности. В этот раз хотел бы поговорить о новом и еще более интересном формате, встретившемся на этом соревновании – поиске и закрытии уязвимостей!

Устраивайтесь поудобнее и готовьтесь к путешествию…

Поехали!

Верификация e-mail по протоколу smtp. Узнаем, что почта есть и ждёт писем при помощи python

Уровень сложностиСредний
Время на прочтение3 мин
Охват и читатели12K

Пригодится для решения задач по организации рассылок, а также как средство предварительной проверки эл. почты при регистрации.

Это пересказ довольно старой статьи (2015 г) некоего Скотта Бради. Автор предупреждает, что попытка реализовать предложенный подход в промышленных масштабах приведёт вас в списки спамеров, и вообще всё это крайне ненадежно и сомнительно. И вообще больше с целью познакомиться с процессом, что собственно предлагаю и сделать.

Читать далее

Фильтруй базар! Как мы параллельный русско-башкирский корпус чистили

Уровень сложностиСложный
Время на прочтение6 мин
Охват и читатели4.6K

Чтобы обучать нейросети понимать и генерировать человеческие языки, нужно много качественных текстов на нужных языках. «Много» – не проблема в эпоху интернета, но с качеством бывают сложности. В этом посте я предлагаю использовать BERT-подобные модели для двух задач улучшения качества обучающих текстов: исправление ошибок распознавания текста из сканов и фильтрация параллельного корпуса предложений. Я испробовал их на башкирском, но и для других языков эти рецепты могут оказаться полезны.

Читать далее

Легкий фаззинг в интеграционных тестах с помощью hypothesis

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели3.3K

Если никогда не слышали о hypothesis и хотите дополнить свои функциональные интеграционные тесты чем-то новым и попробовать найти баги там, где вроде бы уже искали – добро пожаловать в статью. 

Читать далее

Кажется, вы больше не должны давать тестовые задания кандидатам на дом

Уровень сложностиПростой
Время на прочтение24 мин
Охват и читатели34K

В 2023 году, в эпоху взрывного роста нейросетей, вся IT-отрасль продолжает давать кандидатам в стажёры (и не только) домашние тестовые задания. Компании тратят время на то, чтобы придумать эти задания, студенты тратят время на то, чтобы их сделать, потом компании снова тратят время на проверку… В этой небольшой заметке я продемонстрирую, что все задачи последних лет решаются за несколько минут при использовании нейронки, доступ к которой может получить каждый.




Я возьму тестовые задания на Python, C++, Go и C#  и буду использовать только открытые источники, убрав названия компаний и прямые ссылки, чтобы исключить любые подозрения в предвзятости.


А в качестве нейронки использую ChatGPT Plus (GPT 4). Она всё еще очень глупа, много выдумывает и постоянно смешно ошибается, но как раз для таких задач годится хорошо.


И да, вместо дисклеймера. Если вы хоть немного успели «посотрудничать» с ChatGPT, то статья может показаться вам глубоко капитанскоочевидной (она такая и есть, безусловно). Но если вы вместо хайпа по нейронкам предпочитаете работать, то у вас нет времени на такие развлечения. Так что, возможно, несколько минут, которые вы сейчас потратите на прочтение, сэкономят вам много часов инвестиций в «ненастоящих стажеров» и «ненастоящих джунов». И соответственно, помогут не наделать ошибок при найме.

Читать дальше →

Ближайшие события

Как сделать Telegram-бота для проверки аптайма своего сервиса на Python (ч.1 мгновенные метрики)

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели6.1K

Всем привет, я уже несколько лет пишу для себя разных телеграм-ботов "помощников" на python, которые делают за меня ту или иную маленькую рутинную задачу - уведомляют меня о чем-то, проверяют аптайм сервисов, пересылают интересное из телеграм-каналов и чатов и тд. Это удобно, потому что телефон всегда под рукой, а возможность что-то поправить на сервере даже не открывая ноутбук, мне доставляет особое удовольствие.

В общем, у меня накопилось много разных небольших шаблонов проектов, которыми я хочу поделиться с хабровчанами. Сразу скажу, что примеры могут быть узкими с точки зрения применения "как есть", но я буду помечать те места, где, меняя несколько строк кода на свои, вы сможете переиспользовать основную часть наработок для своих проектов.

Под кат

Простейший бот «на движке» WEB WhatsApp

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели25K

Доброго времени суток всем!

Продолжу изгаляться над Web версией Whatsapp и попробую превратить его в подобие телеграмм-бота. Тем более, что все это бесплатно и не требует никаких внешних сервисов.

Я не буду повторять все действия, которые нужны для для запуска python c необходимыми пакетами, он описаны в моей предыдущей статье: https://habr.com/ru/articles/737990/

Только упомяну, что в данном боте (его код будет ниже) не требуется подключение autoit, так как он не предусматривает отправку файлов в ответ на запрос.

Теперь опишу суть задумки. Так как нет специализированного сервера, то придётся использовать выделенный компьютер (виртуальную машину, docker-образ & etc). На нём в цикле запускать робота, который будет просматривать группу, где подключены все пользователи бота, и отвечать на их запросы. Данный робот ничего умного не умеет, кроме как отправить назад, в группу текст сообщения с префиксом "Echo:". Но с учетом предыдущего поста, думаю, что можно превратить его в полноценного "ответчика".

А сейчас, подробнее по структуре бота. Он реализован в классе, который называется whatapp(). В нём есть следующие методы:

Читать далее

Оптимизации работы Jupyter notebook при помощи параллельных вычислений (Библиотека Joblib)

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели19K

Привет, Хабр!

Меня зовут Серов Александр, я участник профессионального сообщества NTA.

Параллелизм играет важную роль в задачах Data Science, так как может значительно ускорить вычисления и обработку больших объемов данных. В посте расскажу  о возможностях применения параллельных вычислений в интерактивной среде Jupyter notebook языка Python.

Узнать больше

Как создать свой мод для Cyberpunk 2077? Шерстим исходники, Lua, C++ и Python

Время на прочтение16 мин
Охват и читатели12K

Недавно мой коллега @Doctor_IT попросил помочь с его проектом — VR-жилетом, который «проецирует» ощущения урона, которые получает персонаж, на тело игрока. С моей стороны — мод, который будет отправлять данные из Cyberpunk 2077 на сам жилет.

Информации по теме моддинга мало, на русском языке материалов практически нет, а существующие статьи местами устарели — пора это исправить. Если вам интересно, как разработать свой мод для Cyberpunk 2077 и собрать VR-жилет, добро пожаловать под кат.
Читать дальше →

Как я написал конвертер 3D-моделей из подручных средств

Время на прочтение18 мин
Охват и читатели9.3K

Всем привет! Меня зовут Шико, я работаю в Яндекс Маркете в команде Android-разработки. Сегодня я расскажу историю, которая случилась в 2021 году. Как-то раз я вызвался добавить в мобильное приложение AR (то есть, дополненную реальность). Оно нужно, чтобы товар можно было «примерить» в интерьер.

Сначала я расстроился: показалось, что ничего особо интересного не будет — всего-то подключить ARCore и делов. Но это ровно до тех пор, пока не выяснилось, что большинство файлов моделек было в USDZ-формате, а ArCore на тот момент с ним не работал. То есть, когда на iOS в процессе разработки таких проблем не возникало, нам нужно было придумать способ перевести существующие модельки в другой формат — GLB. Казалось бы, скачай конвертер и нажми на кнопку «Конвертировать». Не тут-то было. 

И в этой статье я расскажу, какие методы конвертации я пробовал, почему они не подошли и с чем не смогли справиться Blender и Unreal Engine. Спойлер: в итоге мне пришлось написать собственный плагин и я покажу его код.

Читать далее

Всё хорошо, но нужно переписать или почему ваш код не попадает в прод

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.1K

Разберу простую задачу, получение rss-ленты, и то, чем будет отличаться код, который просто получает ленту, от того, который собственно используется в производстве. 

Надеюсь материал будет полезен начинающим программистам и покажет, как примерно должна осуществляться разработка с прицелом на получение результата применимого в проектах. 

Читать далее

Мониторинг активности пользователей OpenVPN при помощи Python

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели20K

Приветствую! Меня зовут Евгений, я DevOps в команде развития инфраструктуры. Мои прошлые статьи были посвящены протоколу BGP, но в этот раз я приготовил нечто поинтереснее. В прошлом году мне захотелось расширить своё портфолио навыков в сторону автоматизации задач. Не последнюю роль в этом желании сыграла книга «Автоматизация программируемых сетей», выпущенная известным в IT-кругах издательским домом O'Reilly. В ней примеры скриптов написаны на Python. Позже я в учебном центре прошёл курс повышения квалификации по программе «Python для сетевых инженеров. Автоматизация сетевых задач», а затем продолжил самостоятельно постигать это искусство. Недавно подвернулась интересная задача, о решении которой при помощи Python я вам сегодня и расскажу. Усаживаетесь поудобнее, мы отправляемся.

Читать далее