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

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

     19.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Денис Тимофеев - Как мы не пишем тесты

Вы что код с ошибками пишете?! Да! И чтобы их обнаружить, в дополнение к программе мы пишем тесты. Но так ли они хороши? Во время доклада обсудим несколько простых техник тестирования, которые мы обычно не применяем.

     19.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Александр Горохов - Питон в бигдате

Big Data сегодня — динамически развивающаяся отрасль. Как бы мы могли использовать python для обработки больших объёмов данных? В этом ознакомительном докладе я расскажу про Apache Spark, и как его можно использовать для обработки данных на python.

     19.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Александр Артеменко - Бесполезный REPL

Из этого доклада вы узнаете о том, почему REPL в Python бесполезен, даже если это волшебный ipython. Будет предложено одно из возможных решений этой проблемы. В первую очередь доклад будет интересен тем, кого интересует более быстрая и эффективная разработка, а также тем, кто разрабатывает stateful системы.

     19.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Алексей Рябчиков - Как написать свой Твиттер и не прогореть

Почти каждый месяц появляются новости об утечках данных пользователей из социальных сетей. На этой волне я написал twitter-оподобную социальную сеть с заложенной цепочкой уязвимостей для соревнований типа CTF. На ее примере я расскажу про разработку современного web-сервиса и его возможные уязвимости. Рассмотрим, что к ним привело, и как их можно было избежать при проектировании и разработке.

     19.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Как мы в Яндексе следим за производительностью веб-приложений / Кирилл Дунаев (Яндекс)

Большинство разработчиков собирают логи своих приложений. Обращения к базе данных, HTTP-запросы и ответы API, задачи Celery. Логи полезны: там видны пятисотки от внешних сервисов, проседания производительности и неожиданно возросшее время ответа после деплоя в пятницу вечером.

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Меню консольных команд на python

Очень часто во время работы над каким-либо проектом возникают задачи решение которых требует ввода в консоль нескольких команд, такие как, например, пересборка фронтенда, запуск/остановка нескольких docker-контейнеров, развертывание окружения на новом девелоперском компе и тому подобные вещи.

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

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Метрики сложности кода: как сделать просто и хорошо

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

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Использование faiss для поиска по многомерным пространствам

Осенью 2019 мы запустили сервис поиска похожих изображений на основе библиотеки faiss. Он помогает нам понимать, что фотографии уже встречались в другом объявлении, даже если они достаточно серьёзно искажены: размыты, обрезаны и тому подобное. Так мы определяем потенциально фейковые публикации.

 

Мне бы хотелось рассказать о тех проблемах, с которыми мы столкнулись в процессе создания этого сервиса, и наших подходах к их решению.

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Настройка функции потерь для нейронной сети на данных сейсморазведки

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

Рассмотрены 2 базовых класса функций – Binary cross entropy и Intersection over Union – в 6-ти вариантах с подбором параметров, а также комбинации функций разных классов. Дополнительно рассмотрена регуляризация функции потерь.

Спойлер: удалось существенно улучшить качество прогноза сети.

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Как проверить навыки программирования на Python? Задачи от Яндекса

В 2019 году нам потребовалось автоматизированно проверить умение писать Python-код у сотен разработчиков. Так мы отбирали будущих студентов для Школы бэкенд-разработки. Это не то же самое, что предложить решить задачу на листе бумаги, как на собеседовании. С другой стороны, мы также не могли переиспользовать условия задач, уже подготовленные для наших соревнований по программированию. Дело в том, что соревнования с целью определить лучших из лучших — это одно, а отбор специалистов с небольшим опытом в школу — совсем другое. Нам требовались задачи, по решению которых было бы видно, обладает ли разработчик базовыми навыками написания кода и умением грамотно использовать память и время. Вот какие условия мы составили.

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Логирование изменения данных в моделях Django

В этой статье я бы хотел рассказать как можно реализовать автоматический контроль над изменениями данных в проектах построенных с использованием Django.

     18.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Пандас и другие для толстых данных

В этой заметке я расскажу о паре простых приемов, полезных при работе с данными, не помещающимися в память локальной машины, но все еще слишком мелкими чтобы называться Большими. Следуя англоязычной аналогии (large but not big), будем называть эти данные толстыми. Речь идет о размерах в единицы и десятки гигабайт.

     17.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

А как вам такой вариант управления зависимостями в Python?

Недавно я решил, что пора наконец-то разобраться в теме управления зависимостями в моих Python проектах и начал искать решение, которое бы меня полностью устроивало. Я поэкспериментировал с pipenv, проштудировал документацию к poetry, почитал другие статьи по теме. К сожалению, идеального решения я так и не нашел. В результате, я изобрел новый велосипед свой подход, который и предлагаю обсудить под катом.

     17.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Создаем Todo приложение c помощью Django. Часть 1

Джанго это мощный фреймворк для создания веб-приложений. Изначально Django был создан для того, чтобы быстро создавать, например, новостные сайты (или другие сайты, который нужно создавать максимально быстро). И после нативного PHP не покидает ощущение, что ты едешь на очень быстрой машине разработки. Чтобы посмотреть все его возможности для быстрой разработки, мы с вами попробуем создать простое Todo — приложение.

     17.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Статьи

Web Scraping. Часть 1

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

 

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

     17.02.2020       Выпуск 322 (17.02.2020 - 23.02.2020)       Видео

Как создать десять приложений из одного и не сойти с ума / Анна Мошкина (IPONWEB)

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

     15.02.2020       Выпуск 321 (10.02.2020 - 16.02.2020)       Статьи

Знакомство с FastAPI

FastAPI — это фреймворк для создания лаконичных и довольно быстрых HTTP API-серверов со встроенными валидацией, сериализацией и асинхронностью,

 

что называется, из коробки. Стоит он на плечах двух других фреймворков: работой с web в FastAPI занимается Starlette, а за валидацию отвечает Pydantic.

Комбайн получился легким, неперегруженным и более, чем достаточным по функционалу.

     14.02.2020       Выпуск 321 (10.02.2020 - 16.02.2020)       Видео

Цены на Avito: как мы управляем миллиардом значений / Дмитрий Климинский (Авито)

Все цены на Avito выбираются программно: у нас есть команда аналитиков с Machine Learning, множество одновременных экспериментов и миллиард цен на разные услуги в разных городах. В докладе я расскажу про нашу инфраструктуру на Python, как мы работаем с данными, общаемся с аналитиками, отдаем цены для Frontend и быстро ищем нужные значения.

     13.02.2020       Выпуск 321 (10.02.2020 - 16.02.2020)       Статьи

Введение в Apache Airflow

Apache Airflow — это продвинутый workflow менеджер и незаменимый инструмент в арсенале современного дата инженера. Если смотреть открытые вакансии на позицию data engineer, то нередко встретишь опыт работы с Airflow как одно из требований к позиции.

 

     13.02.2020       Выпуск 321 (10.02.2020 - 16.02.2020)       Видео

Инструменты domain driven design / Артем Малышев

Сложность бывает неотъемлемой и привнесённой. Из доклада вы узнаете, как организовывать первую и минимизировать вторую. Поговорим о том, как построить свой продукт вокруг решаемой проблемы, а не используемого фреймворка. Узнаем, в каком месте лучше вводить typing и dataclasses.