IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     15.07.2020       Выпуск 343 (13.07.2020 - 19.07.2020)       Статьи

Как в компании развивался Python. Доклад Яндекса

13 лет назад начался эксперимент по использованию Python в больших сервисах Яндекса. Эксперимент получился удачным (кто бы сомневался!) и Python начал свое победное поползновение по сервисам компании. Яндекс.Афиша, Яндекс.Погода — через некоторое время сервисов стало очень много. Вместе с ними начали появляться «лучшие практики» и «устоявшиеся подходы» к решению задач.

     14.07.2020       Выпуск 343 (13.07.2020 - 19.07.2020)       Статьи

Слияние списков на python

Пусть у нас есть два списка (для простоты из целых чисел), каждый из которых отсортирован. Хотим объединить их в один список, который тоже должен быть отсортирован. Эта задача наверняка всем знакома, используется, например, при сортировке слиянием.

     14.07.2020       Выпуск 343 (13.07.2020 - 19.07.2020)       Статьи

Беспилотное такси возит по городу желтых резиновых уточек! Модуль проверки задач для платформы Gym-Duckietown

К 2040 году в большинстве крупных городов мира автомобили будут ездить без водителей, считают аналитики. Но чтобы расслабиться на дороге через 20 лет, сейчас нужно хорошо поработать над алгоритмами автономного вождения. Для этого в MIT разработали платформу Duckietown, которая позволяет делать это с минимальными затратами. В Duckietown недорогие мобильные роботы перевозят желтых резиновых уточек по уменьшенной модели города. На базе этой платформы проводят соревнования AI Driving Olympics и запускают курсы в университетах по применению технологий искусственного интеллекта в управлении беспилотным транспортом.

     14.07.2020       Выпуск 343 (13.07.2020 - 19.07.2020)       Статьи

Продвинутый уровень визуализации данных для Data Science на Python

Когнитивное искажение о невозвратных затратах (sunk cost fallacy) является одним из многих вредных когнитивных предубеждений, жертвой которых становятся люди. Это относится к нашей тенденции продолжать посвящать время и ресурсы проигранному делу, потому что мы уже потратили — утонули — так много времени в погоне. Заблуждение о заниженной стоимости применимо к тому, чтобы оставаться на плохой работе дольше, чем мы должны, рабски работать над проектом, даже когда ясно, что он не будет работать, и да, продолжать использовать утомительную, устаревшую библиотеку построения графиков — matplotlib — когда существуют более эффективные, интерактивные и более привлекательные альтернативы.

     13.07.2020       Выпуск 343 (13.07.2020 - 19.07.2020)       Статьи

Цепи Маркова и Пайтон — разбираемся в теории и собираем генератор текстов

Хорошие новости перед статьей: высоких математических скиллов для прочтения и (надеюсь!) понимания не требуется.

Дисклеймер: кодовая часть данной статьи, как и предыдущей, является адаптированным, дополненным и протестированным переводом. Я благодарна автору, потому что это один из первых моих опытов в коде, после которого меня поперло ещё больше. Надеюсь, что на вас моя адаптация подействует так же!

     11.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Разработка zond-а для замера скорости интернета

Тружусь я в компании, предоставляющей услуги кабельного телевидения и доступа в интернет. И, как это бывает в подобных компаниях, периодически слышу жалобы о несоответствии тарифного плана заявленному в договоре. То пользователь жалуется на низкую скорость «по кабелю», то на высокие пинги определенных сервисов, иногда на полное отсутствие интернета в определенное время суток. Зачастую, такие жалобы попадают в пулл заявок, по которым происходит выезд «на место» одного из сотрудников с рабочим ноутбуком, на котором и производятся все замеры. И, зачастую, выясняется, что со скоростью все в порядке. А низкая скорость на самом деле на мобильном телефоне, через wi-fi, на балконе. Ну или нечто подобное.

     10.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

CPython библиотека «ВКФ» для машинного обучения

В предыдущей заметке автора был описан web-сервер для проведения экспериментов с ВКФ-методом машинного обучения, основанного на теории решеток. Как альтернатива использования web-сервера в настоящей заметке сделана попытка указать путь использования CPython-библиотеки напрямую. Мы воспроизведем рабочие сессии экспериментов с массивами Mushroom и Wine Quality из UCI репозитория данных для тестирования алгоритмов машинного обучения. Потом будут даны объяснения о форматах входных данных.

     09.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

В каких случаях не нужно использовать списки в Python

В Python, наверное, самым популярным контейнером данных будет список (list). Он настолько гибкий, что его можно использовать в проектах почти повсеместно и хранить в нем данные различного типа: целые числа, строки и экземпляры пользовательских классов. Помимо этого, список мутабелен, что позволяет нам добавлять или удалять элементы по мере необходимости. По вышеперечисленным причинам некоторые программисты склонны слишком часто использовать списки и даже не рассматривать жизнеспособные альтернативы.

     09.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

10 предпочтительных методов рефакторинга кода на Python

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

     09.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Учимся квантовому программированию на Python с помощью примеров. Доклад Яндекса

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

     09.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Сравнение разных django filter на примере демо базы PostgreSQL

Началось всё с того, что мне предложили в рамках предмета "Основы веб-программирования" поучаствовать в проекте, вместо проделывания лабораторных работ и курсовой, поскольку я заявил о том, что хотел быть делать нечто отдалённое от общего курса (и так уже достаточно знаний было по связке DRF + Vue, хотелось чего-то нового). И вот в одном из своих PR на github я решил использовать полнотекстовый поиск (задание намекало на это) для фильтрации контента, что заставило меня обратиться к документации Django в поисках того, каким же образом лучше это дело реализовать.

     08.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

is против == в Python – Сравнение объектов

В Python есть два очень похожих оператора для проверки равенства двух объектов. Эти два оператора is и ==.

     08.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Внедрение RoI Pooling в TensorFlow + Keras

В этом посте мы объясним основную концепцию и общее использование RoI pooling (Region of Interest — область интересов) и предоставим реализацию с использованием слоев Keras среды TensorFlow.

 

Целевая аудитория этого поста — люди, знакомые с базовой теорией (сверточных) нейронных сетей (CNN) и способные создавать и запускать простые модели с использованием Keras.

Если вы здесь только для кода, обратитесь сюда и не забудьте поставить лайк и поделиться статьей!

     07.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Juniper: выращивание можжевельника в домашних условиях

Довольно продолжительное время в команде я провёл, разрабатывая софт для управления коммутаторами. Вместе мы пережили взлеты и падения: от написания сервисов для управления железом до падения офисной сети и часовых свиданий в серверной в надежде не потерять своих любимых.

     07.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Магия WebPush в Mozilla Firefox. Взгляд изнутри

Безусловно одной из самых популярных технологий доставки оповещений на устройства пользователей являются Push уведомления. Технология такова, что для её работы необходим постоянный доступ к интернету, а именно доступ к серверам, на которых регистрируются устройства пользователя для получения уведомлений. В данной статье мы рассмотрим весь спектр механизмов технологии WebPush уведомлений, спрятанных за словами WebSocket, ServiceWorker, vapid, register, broadcast, message encryption и т.д. Основной причиной побудившей меня к реверсу и изучению механизма, являлась необходимость доставки уведомлений мониторинга на рабочие места техподдержки, находящиеся в закрытом сегменте сети без доступа в интернет. И да, это возможно!

     06.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

Подборка статей о машинном обучении: кейсы, гайды и исследования за июнь 2020

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

     06.07.2020       Выпуск 342 (06.07.2020 - 12.07.2020)       Статьи

pyOpenRPA туториал. Управление оконными GUI приложениями

Специально для Хабр я начинаю серию статей-туториалов по использованию RPA платформы OpenRPA. Буду рад получить от вас комментарии и замечания, если возникнут какие-либо вопросы. Надеюсь, что эта история не оставит вас равнодушными.

     05.07.2020       Выпуск 341 (29.06.2020 - 05.07.2020)       Статьи

Чтобы я хотел знать когда начинал изучать Django? — очень общий взгляд

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

В этом посте я бы хотел посмотреть на Django с очень «философского вида» — минимум кода, максимум общих фактов. Думаю, что такой взгляд поможет тем, кто хочет начать изучать Django но теряется на старте.

     04.07.2020       Выпуск 341 (29.06.2020 - 05.07.2020)       Статьи

О нет! Моя Data Science ржавеет

Предлагаем вашему вниманию перевод интереснейшего исследования от компании Crowdstrike. Материал посвящен использованию языка Rust в области Data Science (применительно к malware analysis) и демонстрирует, в чем Rust на таком поле может посоперничать даже с NumPy и SciPy, не говоря уж о чистом Python.

     03.07.2020       Выпуск 341 (29.06.2020 - 05.07.2020)       Статьи

Web-сервер машинного обучения «ВКФ-решатель»

Сейчас в глазах обычной публики машинное обучение прочно ассоциируется с различными вариантами обучения нейронных сетей. Если первоначально это были полносвязные сети, потом заместившиеся сверточными и рекуррентными, то теперь это стало совсем экзотическими вариантами типа GAN и LTSM-сетей. Кроме все больших объемов выборок, требуемых для их обучения, они еще страдают невозможностью объяснить, почему было принято то или иное решение. Но существуют и структурные подходы к машинному обучению, программная реализация одного из которых описана в настоящей статье.