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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     08.09.2020       Выпуск 351 (07.09.2020 - 13.09.2020)       Видео

Cerberus, or Data Validation for Humans / Nicola Iarocci (CIR 2000, Italy)

Soon or later in their career, every programmer has to deal with data validation. Be it a web, desktop or mobile application, you just cannot avoid data validation. A robust, powerful yet easy-to-use data validation library can be a valuable tool in your toolset. Cerberus is a lightweight and extensible open source data validation library for Python. It provides type checking and other validation, transformation and normalization rules out of the box and it is designed to be easily extensible and customized.

     07.09.2020       Выпуск 351 (07.09.2020 - 13.09.2020)       Статьи

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

Продолжаем собирать для вас материалы из области ML. Как и всегда предпочтение отдаем проектам, которые содержат ссылки на непустые репозитории, или предоставляют высокоуровневые API.

     07.09.2020       Выпуск 351 (07.09.2020 - 13.09.2020)       Видео

Sufficiently Advanced Testing / Zac Hatfield-Dodds (Australian National University)

Writing tests is a great start - but property-based testing libraries like Hypothesis can help you find bugs you didn't know were possible! There are even more advanced techniques out there, like symbolic execution, fuzzing, metamorphic relations, and delta-debugging. Come find out how they work, why you'd use them, and change the way you think about testing!

     07.09.2020       Выпуск 351 (07.09.2020 - 13.09.2020)       Статьи

Внедрение зависимостей в Python

Перевод: Jan Giacomelli — Python Dependency Injection Написание чистого, поддерживаемого кода — сложная задача

     05.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Определение положения и скорости тележки мостового крана с помощью цифровой камеры и OpenCV

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

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

Тема посвящена моей дипломной работе в магистратуре, которую я писал два года назад.

     04.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Заметки Дата Сайентиста: на что обратить внимание при выборе модели машинного обучения — персональный топ-10

Мы снова в эфире и продолжаем цикл заметок Дата Сайентиста и сегодня представляю мой абсолютно субъективный чек-лист по выбору модели машинного обучения. Это топ-10 свойств задачи и просто пунктов (без порядка в них), с точки зрения которых я начинаю выбор модели и вообще моделирование задачи по анализу данных. Совсем не обязательно, что у вас он будет таким же — здесь все субъективно, но делюсь опытом из жизни.

     04.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Пайплайны и частичное применения функций, зачем это в Python

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

     04.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Видео

Все возможности JupyterHub для более чем 20 студентов или R&D-команды / Петр Ермаков

Особенности и лайфхаки настройки JupyterHub для большой Data Science-команды. Как правильно организовать работу на общих серверах. Даже если команда состоит из одного человека, вы вынесете новые хитрости. Но что, если вы не один? Как ужиться на одной машине 20 студентам, изучающим ML, или R&D-;команде из 15? Готовые рецепты, рекомендации и собранные грабли.

     04.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Немного Сythonа

Дошли руки до Cythona, спасибо самоизоляции. Проблема прозаична — как ускориться на python с минимальными потерями в синтаксисе. Один из подходов — использование Сython (сместь С и python). Не давала покоя публикация с громким названием отсюда — habr.com/ru/company/ruvds/blog/462487 Но из содержания публикации мало что можно вынести, так как формулы и результирующая таблица неверны. Попробуем дополнить картину, начатую авторами поста и расставим точки над и.

     03.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

CTF. Пароли в Firefox. Пароль Android. Атака Bit-Flipping. Решение задач с r0от-мi Crypto. Часть 3

В данной статье ломаем шифры перестановки и Виженера, расшифруем сохраненный в браузере Mozilla Firefox пароль, расправляемся с блокировкой Android и разбираемся с атакой Bit-Flipping.

     03.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Видео

We make services / Никита Соболев (wemake.services)

Краткий обзор тайп-чекинга в питоне, mypy, pep484. Как я писал библиотеку django-stubs. С какими проблемами столкнулся в процессе. Что еще планируется сделать. DEP (Django Enhancement Proposal) по поводу добавления типов в core.

     03.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Создание первой модели глубокого обучения Visual Studio IntelliCode: исследовательский путь

С тех пор, как первая модель завершения кода IntelliCode была представлена в Visual Studio и Visual Studio Code в 2018 году, она стала важным помощником по кодингу для миллионов разработчиков по всему миру. В последние два года мы постоянно работали над тем, чтобы адаптировать IntelliCode для большего количества языков программирования, а в то же время изучали способы повышения точности и покрытия модели, чтобы обеспечить еще большее удовлетворение пользователей. Одним из наших основных исследовательских усилий было привнести последние достижения в области глубокого обучения для моделирования естественного языка в моделирование языков программирования. После использования таких технологий, как машинное обучение Azure и среда выполнения ONNX, мы успешно реализовали первую модель глубокого обучения для всех пользователей IntelliCode Python в Visual Studio Code.

     02.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Кракс! Миллениалы изобрели Python фреймворк

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

     02.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи
     02.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

3 полезных Python-инструмента для упрощения работы с кодом

Любой разработчик использует те или иные вспомогательные инструменты. Какие-то из них позволяют ускорить процесс, какие-то — избавиться от ошибок, сделать код более понятным. Такие инструменты есть практически в любой сфере разработки. Престон Бадир (Preston Badeer), Python-программист, поделился набором расширений которые, по его мнению, значительно упрощают и ускоряют кодинг. За 5 лет работы он перепробовал множество инструментов и выделил три наиболее полезных.

     02.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Тесты в Python: все основные подходы, плюсы и минусы. Доклад Яндекса

Перед вами доклад Марии Зеленовой zelma — разработчика в Едадиле. За час Маша рассказала, в чём состоит тестирование программ, какие тесты бывают, зачем их писать. На простых примерах можно узнать про библиотеки для тестирования Python-кода (unittest, pytest, mock), принципы их работы и отличия между ними. — Добрый вечер, меня зовут Маша, я работаю в отделе подготовки анализа данных Едадила, и сегодня у нас с вами лекция про тестирование.

     02.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи
     01.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Определяем пульс по вебкамере в 50 строчек кода

Однажды мне попалось описание приложения для Android, которое определяло пульс по камере телефона, просто по общей картинке. Камера не прикладывалась к пальцу, не просвечивалась светодиодом и пр. Интересный момент был в том, что ревьюеры не поверили в возможность такого определения пульса, и приложение было отклонено. Чем дело кончилось у автора программы, не знаю, но стало интересно проверить, возможно ли это.

     01.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Функциональное программирование в питоне. Генераторы, как питонячий декларативный стиль

Говоря о Python, обычно используется процедурный и ООП стиль программирования, однако это не значит, что другие стили невозможны. В презентации ниже мы рассмотрим ещё пару вариантов — Функциональное программирование и программирование с помощью генераторов. Последние, в том числе, привели к появлению сопрограмм, которые позднее помогли создать асинхронность в Python. Сопрограммы и асинхронность выходят за рамки текущего доклада, поэтому, если интересно, можете ознакомиться об этом самостоятельно. Лично я рекомендую книгу "Fluent Python", в которой разговор начинается от итераторов, плавно переходит в темы о генераторах, сопрограммах и асинхронности.

     01.09.2020       Выпуск 350 (31.08.2020 - 06.09.2020)       Статьи

Использование NLP для построения классификатора сарказма

В этой статье мы попробуем написать классификатор определяющий саркастические статьи используя машинное обучение и TensorFlow

 

Статья является переводом с Machine Learning Foundations: Part 10 — Using NLP to build a sarcasm classifier