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

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

     09.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Видео

Moscow Python Podcast. Путь джуна (level: All)

В гостях у Moscow Python Podcast выпускник курсов Learn Python, разработчик в компании Appello Павел Кузнецов.

     09.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Конфигурируем сервис с помощью Vault и Pydantic

В данной статье я расскажу о конфигурации для вашей сервисов с помощью связки Vault (KV и пока только первой версии, т.е. без версионирования секретов) и Pydantic (Settings) под патронажем Sitri.

 

Итак, допустим, что у нас есть приложение superapp с заведёнными конфигами в Vault и аутентификацией с помощью approle, примерно так настроим (настройку policies для доступа к секрет-энжайнам и к самим секретам я оставлю за кадром, так как это достаточно просто и статья не об этом):

     08.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Клиент-серверный IPC при помощи Python multiprocessing

Статья отражает личный опыт разработки CLI приложения для Linux.

В ней рассмотрен способ выполнения привилегированных системных вызовов процессом суперпользователя по запросам управляющей программы через строго описанный API.

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

     08.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Можно всё: решение NLP задач при помощи spacy

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

     08.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Типовые ошибки на собеседовании

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

     07.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Генератор диаграмм таблиц ClickHouse для PlantUML

Когда появляется необходимость документировать схемы баз данных, разные DBMS предоставляют свои инструменты для подобных задач. И большинство из них поддерживает DESC table_name, в том числе и ClickHouse. Однако, результат этой команды не столь выразителен, как хотелось бы.

     07.12.2020       Выпуск 364 (07.12.2020 - 13.12.2020)       Статьи

Редактирование JSON полей через Django админку

При использование Django админки часто может возникнуть необходимость подключить внешнюю библиотеку. Например если одно или несколько полей в вашей модели

     06.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Пушим метрики Prometheus с помощью pushgateway

Данная заметка в целом о пуше метрик в pushgateway, однако, предупрежу и признаюсь сразу, что в тексте будет пример — анти-паттерна пуша метрик, так как использование pushgateway рекомендуется в случае, когда сервис работает не постоянно (или у сервиса/запускаемого задания вообще нет никакого интерфейса), а значит и prometheus'у лучше в закрытые двери постоянно не стучать и не заниматься лишней работой.

     05.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Машинное обучение: ансамбль смешивания на Python

Смешивание — это ансамблевый алгоритм машинного обучения. Это разговорное название для стекового обобщения (stacked generalization) [далее будем использовать термин «пакетирование» вместо принятого в научных работах термина «стекинг»] или ансамбля пакетирования, где вместо того чтобы обучать метамодель на прогнозах вне групп, сделанных базовой моделью, модель обучается на прогнозах, сделанных на независимом наборе данных.

     04.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Пишем программу 3D-моделирования в 500 строках кода


Люди от природы креативны. Мы постоянно проектируем и создаём новые, полезные и интересные вещи. Сегодня мы пишем ПО, помогающее процессу проектирования и творчества. Программы САПР (Computer-aided design, CAD) позволяют творцам проектировать здания, мосты, графику видеоигр, чудовищ для фильмов, объектов для 3D-печати и множество других вещей перед созданием физической версии проекта.

     03.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Небольшой рассказ, как мы модернизировали и расширяли сеть Wi-Fi до 14 000 точек доступа

В качестве вводных, имеется довольно крупная сеть на базе решения Cisco, эксплуатируемую уже более 10 лет

     03.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Как пять лет просидеть в саппорте и за две недели стать Python-тестировщиком

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

     03.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Мелкая питонячая радость #14: ботнеты, распознавание текстов и генератор статических сайтов

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

     03.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Как работает память в Python

Ни одна компьютерная программа не может работать без данных. А данные, чтобы программа имела к ним доступ, должны располагаться в оперативной памяти вашего компьютера. Но что такое оперативная память на самом деле? Когда произносишь это словосочетание, многие сразу представляют «железную» плашку, вставленную в материнскую плату, на которой написано что-то типа 16Gb DDR4 2666MHz. И они, разумеется, правы — это действительно физический блок оперативной памяти, в котором, в итоге, все данные и оказываются. Но прежде, чем стать доступной внутри вашей программы, на память (как и на всё остальное аппаратное обеспечение) накладывается куча абстракций.

     02.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Видео

Moscow Python Podcast. Domain-driven design (level: All)

В гостях у Moscow Python Podcast Евгений Пешков разработчик в компании Dodo Engineering. Поговорили с Евгением о том, что такое DDD и зачем он нужен.

     02.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Проверим тысячи пакетов PyPI на вредоносность

Примерно год назад Python Software Foundation открыл Request for Information (RFI), чтобы обсудить, как можно обнаруживать загружаемые на PyPI вредоносные пакеты. Очевидно, что это реальная проблема, влияющая почти на любой менеджер пакетов: случаются захваты имён заброшенных разработчиками пакетов, эксплуатация опечаток в названиях популярных библиотек или похищение пакетов при помощи упаковки учётных данных.

     02.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Кодируем и декодируем сообщение для внеземных цивилизаций

Мотивом для этой статьи, на самом деле, послужил грустный повод. Всемирно известный радиотелескоп обсерватории Аресибо в Пуэрто-Рико разрушился и восстановлению не подлежит. Многие годы это был самый крупный радиотелескоп в мире с полной апертурой (диаметр 304 м, диапазон частот до 10 ГГц), с помощью которого было сделано немало открытий. Здесь на фото из Википедии он в еще рабочем состоянии:

     01.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Настройка GitHub Actions для автоматизированного тестирования средствами Python в конвейере CI/CD

В этой статье описываются операции по тестированию клиентской части приложения с помощью TestProject и pytest, а также способы выполнения тестов через GitHub Actions. Если у вас общедоступный репозиторий GitHub, все это будет совершенно бесплатно. Эта возможность хорошо подходит для изучения TestProject и выполнения интеграционного тестирования в ваших проектах. Если вы хотите выполнять эти операции из закрытого репозитория, то GitHub предлагает очень большое количество бесплатных минут, см. https://github.com/features/actions#pricing-details.

     01.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Делаем печатные ссылки кликабельными с помощью TensorFlow 2 Object Detection API

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

     01.12.2020       Выпуск 363 (30.11.2020 - 06.12.2020)       Статьи

Введение в обработку изображений в Python при помощи Pillow

Pillow — это свободно распространяемая библиотека для работы с изображениями (далее Imaging Library) на Python с открытым исходным кодом, которая добавляет вашему коду поддержку открытия, изменения и сохранения изображений в различных расширениях.