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

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

     22.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи
     22.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Подготовка сервера для публикации web-app на Python

Появилось свободное время, и возникло желание сделать небольшую веб-приложение. Идея есть (получать данные с метеодатчика, хранить в БД и потом делать что-то интересное), свободный сервер на centos тоже. Туториалов по настройке вроде бы тоже… Но на момент написания ни одного полностью рабочего не нашлось. Если вы тоже хотите развернуть приложение на сервере CentOS 7.4 используя связку python3.*, uwsgi и nginx, добро пожаловать под кат.

     22.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи
     21.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Автоматизация задач администрирования API VMware vSphere с использованием Ansible

В предыдущей статье мы рассмотрели взаимодействие с VMware с помощью Python. В этой же обсудим взаимодействие с VMware с помощью Ansible.

 

Ansible — система управления конфигурациями, написанная на языке программирования Python с использованием декларативного языка разметки для описания конфигураций. Про Ansible на Хабре уже есть множество статей, но стоит еще раз упомянуть, что одним из ключевых свойств playbook'a является идемпотентность. Это значит, что сколько бы раз подряд вы не запускали свой playbook, результат будет один и тот же.

Ansible модули используют библиотеку pyVmomi и чаще всего требуют Python версии выше 2.6.

     21.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Генетический алгоритм на Python для поиска глобальных экстремумов

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

     21.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Спор о первом языке программирования: окончательное решение

Говорят, на выбор влияет миллион фаторов и спорить по этому поводу не имеет никакого смысла. Тем не менее, холивары продолжаются.

Виталий Брагилевский решил поставить точку и на Saint AppsConf представил окончательное решение. После прочтения статьи (или просмотра доклада) вы будете знать, как правильно отвечать родственникам или знакомым, которые узнали, сколько зарабатывают в IT и что удалёнка тут не помеха, и теперь интересуются, с чего же начать.

     21.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи
     20.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи
     20.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Программисты-сантехники, или история об одной утечке и сложностях борьбы с ней

Шел вторник, 25 февраля. Непростой выпуск версии в субботу, 22 февраля, был уже в прошлом. Казалось, что все худшее позади, и ничто не предвещало беды. Но все изменилось в один момент, когда от мониторинга пришла ошибка об утечке памяти на процессе-координаторе сервиса контроля доступа.

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

     20.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Прекратите называть ваши Python модули “utils”

Перевод статьи: Stop naming your python modules “utils”

Представьте себе следующую типичную ситуацию: разработчик, который либо добавляет новый код, либо реорганизует существующий, работая с каким нибудь новым классом или функцией. Ему нужно решать где разместит этот код, но он функционально не подходит к уже существующим модулям. И что же обычно делает разработчик в этой ситуации? Он создает новый модуль – utils.py.

     20.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи

Сохраните в закладках эту статью, если вы новичок в Python (особенно если изучаете Python сами)

Представляю вашему вниманию перевод статьи "Bookmark this if you are new to Python (especially if you self-learn Python)" в двух частях (1, 2) c простыми, но полезными советами и трюками в Python.

     20.04.2020       Выпуск 331 (20.04.2020 - 26.04.2020)       Статьи
     19.04.2020       Выпуск 330 (13.04.2020 - 19.04.2020)       Статьи

Строим города по клику мыши с Houdini и Python

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

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

В этом материале я разберу базовую настройку инструмента City Builder в Houdini, который может строить города простыми кликами мышью. Обратите внимание, что он работает только внутри Houdini с использованием Python Viewer States.

     19.04.2020       Выпуск 330 (13.04.2020 - 19.04.2020)       Статьи

PyDERASN: как я добавил big-data поддержку

Продолжаю прошлую статью о PyDERASN — свободном ASN.1 DER/CER/BER кодеке на Python. За прошедший год, с момента её написания, кроме всяких мелочей, небольших исправлений, ещё более строгой проверки данных (хотя и прежде он был уже самым строгим из известных мне свободных кодеков), в этой библиотеке появился функционал для работы с большими объёмами данных — не влезающих в оперативную память. Об этом и хочу рассказать в данной статье.

     19.04.2020       Выпуск 330 (13.04.2020 - 19.04.2020)       Статьи

Пробуждение спящего института: как мы убираем ходунки у Python в REAPER

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

 

Однако, сегодня нежданно вырвался из локдауна ментейнер героя сегодняшнего обзора, и, буквально несколько часов назад в PyPi ушел reapy v0.6.0. Под катом — последний changelog, и мне особенно приятно, что в той или иной степени я поучаствовал в появлении каждой его строчки.

Итак: зачем нужен reapy, и что происходит с Python в REAPER.

     18.04.2020       Выпуск 330 (13.04.2020 - 19.04.2020)       Статьи

Делаем модем: передаем цифровые данные по воздуху с помощью OFDM и GNU Radio

Данный текст можно считать продолжением статьи "Разбираем звук Dial-up модема", в которой разбирался метод установки связи между модемами. Сегодня мы пойдем дальше, и посмотрим на практике как передаются данные, для чего создадим простую реализацию модема с помощью OFDM и GNU Radio.

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

Для тех, кому интересно как это работает, продолжение под катом.