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

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

     12.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Рисовалка для атомных орбиталей на Python

Начался новый учебный год, и преподавателям, студентам и школьникам, возможно, требуется (или просто хочется) посмотреть на то, как выглядят орбитальки, на которых сидят электроны в атомах: все эти завораживающие буковки s, p, d, f, и т.д. Да, картинок полно как в учебниках, так и в Интернете, но покрутить орбитальки на картинке не получится, а картинку из учебника/с левого сайта в презентацию/реферат без мороки с лицензией пихать (по-хорошему) не стоит. Поэтому в этом посте мы разберём одну из возможных реализаций рисовалки для этих самых орбиталек.

     12.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Подгонялка соотношения белков, жиров и углеводов

В один прекрасный день я сидел и прикидывал в голове, сколько и чего надо съесть, чтобы получилось 30 гр. белка, 25 гр. жиров и 60 гр. углеводов. Из продуктов у меня были: гречка, яйца и авокадо. Json (БЖУ указанно на 100 гр. сырого продукта):{"Гречка": {"Белки": 11.7, "Жиры": 2.7, "Углеводы": 75}, "Яйца": {"Белки": 12.7, "Жиры": 11.5, "Углеводы": 0.7}, "Авокадо": {"Белки": 2, "Жиры": 15, "Углеводы": 9}}Если вы программист, возможно, вам будет интересно остановиться на чтении и прикинуть, как бы вы ее решали. Статья рассказывает об одном из способов.

     11.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Как серверу на Django знать своих клиентов на React в лицо, практическое руководство

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

Достаточно несложно в React нарисовать форму, где можно позволить пользователям вводить свои учетные данные, включающие в себя логин и пароль. Не стоит практически никаких усилий, чтобы на Django сверить пароль, соответствующий логину в базе данных. Но что дальше? Обзор получился достаточно объемный с примерами кода, которые помогут воссоздать реализацию всех схем аутентификации/авторизации.

     10.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Простая нейронка без библиотек и многомерных массивов

Руководство? Гайд? В общем описание моего опыта создания :)

     09.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Kedro — ключ к модульной Data Science

Kedro — фреймворк модульного кода в Data Science. С его помощью вы можете создавать проекты по шаблону, настраивать конвейер в YAML, делить его на части, документировать проект — и это далеко не всё.

     08.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Быстрый, мощный интерфейс на Python

Dear PyGui принципиально отличается от других фреймворков GUI Python. Рендеринг на GPU, более 70 виджетов, встроенная поддержка асинхронности — это лишь некоторые возможности Dear PyGui. Руководством по работе с этим пакетом делимся к старту курса по разработке на Python.

     08.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Программа раннего доступа к JetBrains DataSpell открыта для всех

С тех пор, как мы анонсировали JetBrains DataSpell в марте, наша новая IDE для Data Science была доступна для ограниченного числа пользователей, которые помогали нам с тестированием IDE и обратной связью. Сегодня мы запускаем программу раннего доступа для всех желающих. Всем, кто хотел участвовать в программе, придут приглашения. Вы можете скачать свежую EAP-сборку на сайте JetBrains DataSpell (регистрация не требуется).

     08.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Поиграем в слова? Автоматическое распознавание букв и нахождение слов в игре Слово

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

     07.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Как классифицировать данные без разметки

Пользователи iFunny ежедневно загружают в приложение около 100 000 единиц контента, среди которого не только мемы, но и расизм, насилие, порнография и другие недопустимые вещи.

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

     07.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

«Оптимизируем» функции на уровне AST

Python предоставляет программисту огромное пространство свободы. Увы, обычно это довольно дорогая в плане производительности свобода, зато при правильном применении иногда она позволяет творить сущую магию. Но сегодня мы поговорим не о таких вот «богоугодных» применениях свободы, а о том, что никогда не стоит использовать в прикладном программировании — о модификациях кода на уровне AST.

     07.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Использование API-схем для property-based-тестирования

Когда мы работаем с API-схемами, обычно существует несколько моделей, и они синхронизируются на разных уровнях. Обычно есть база данных, код и схема. И всё это нужно держать между собой в синхроне, чтобы они нормально друг с другом взаимодействовали.

Я расскажу об обычных проблемах, с которыми люди сталкиваются при использовании API-схем. Как можно использовать API-схемы для описания property-based-тестов, и чем здесь может помочь Schemathesis. И покажу на практике, как его можно интегрировать в существующий проект.

     06.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Python-культура в российских* IT-компаниях. Часть 2: Provectus

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

     06.09.2021       Выпуск 403 (06.09.2021 - 12.09.2021)       Статьи

Как объединить 5 языков программирования в одном Python проекте?

На сегодняшний день существует несколько тысяч языков программирования, каждый из которых создавался с определенной целью, пытаясь изменить и улучшить недостатки своих предшественников. Так, например, появился язык Kotlin, который был нацелен на замену Java в мобильной разработке. В 2010 году увидел свет язык Rust, разработчики которого пытались создать быстрый и безопасный язык, который закрывал бы многие недостатки C/C++.

 

     31.08.2021       Выпуск 402 (30.08.2021 - 05.09.2021)       Статьи
     31.08.2021       Выпуск 402 (30.08.2021 - 05.09.2021)       Статьи

JSON-Logger для FastAPI

Пошаговая инструкция, как я сделал собственный асинхронный json-logger для FastApi и зачем.

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

     30.08.2021       Выпуск 402 (30.08.2021 - 05.09.2021)       Статьи

Google Sheets API + Python. Чтение и запись с Сервисным Аккаунтом Google Cloud

Google Sheet и Sheets API - классный (простой, бесплатный и универсальный) способ организовать хранение и анализ данных получаемых от своего сервиса. При условии что этих данных не то чтобы очень много и поступают они не то чтобы очень часто.

У меня таких задач хватает и решаю я их либо на Python, либо на PHP. Сегодня возьму в руки Python.

     30.08.2021       Выпуск 402 (30.08.2021 - 05.09.2021)       Статьи

Как достичь максимального счастья в обществе? (теория игр)

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

     30.08.2021       Выпуск 402 (30.08.2021 - 05.09.2021)       Статьи

Асинхронный джанго, другой взгляд

Этот текст содержит предложения, как сделать джанго орм (а вместе с ним и сам джанго) асинхронным.

     29.08.2021       Выпуск 401 (23.08.2021 - 29.08.2021)       Статьи

Классификатор методом BallTree поиска k-ближайших соседей на Python

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

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