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

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

     04.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Видео

Использование BDD в разработке на Python

Владимир Шебуняев Владимир показал на примерах, как и зачем использовать BDD в Continuous Integration, какие есть преимущества и проблемы у этого подхода. Также он познакомил слушателей с инструментами Behave, Lettuce, pycukes, specloud, freshen, pyvows, pytest-bdd.

     04.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Видео

Мониторинг производительности приложения на Python с использованием pinba + graphite + tessera

Евгений Климов В своем докладе Евгений рассказал о том, как быстро понять, что приложение «тормозит», настроить детектор аномалий и alert на SMS. Также речь зашла об основных показателях, на которые необходимо обращать внимание при оценке производительности веб-приложений.

     03.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Статьи

Аннотации типов в Python,PEP 0484 и немного почтовых сервисов

Краткий обзор что привнес PEP 484 и что из этого можно приготовить

     02.11.2015       Выпуск 98 (02.11.2015 - 08.11.2015)       Конференции, события, встречи разработчиков

Python Meetup 25.09.2015: мониторинг производительности и использование BDD

Всем привет! С небольшой задержкой публикуем видео с сентябрьского Python Meetup. В этот раз, в рамках докладов мы обсудили: Мониторинг производительности веб-приложения на Python с использованием pinba + graphite + tessera ​Использование BDD в разработке на Python Также участники сообщества обсудили несколько актуальных Python'овских тем в рамках Lightning Talk. Записи всех выступлений вы найдете под катом.

     01.11.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Релизы

django-sitemessage 0.7.0 — Отправляем сообщения Telegram из Django

Вслед за torrt рассылать телеграммы научилось и django-sitemessage.

     30.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Hardcore Python: Оптимизация на грани и за ней

Возможно, вы видели доклад Антона Патрушева про оптимизацию Python — вплоть до отключения Garbage Collector. Это свежий доклад (PyCon RU 2015) и в нём вы найдете развитие идей оптимизации Python

     29.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Hardcore Python: Пишем свой интерпретатор

Говорят, что отличный результат для мужчины — построить дом, вырастить сына и посадить дерево. А если ты программист, то ещё написать свой язык программирования.

Сейчас уже нет чисто интерпретируемых языков, даже Python сначала компилируется в байт-код, а потом интерпретируется — исполняется. Но как это он делает?

Чтобы узнать магию внутренностей интерпретаторов предлагаю цикл статей Let’s Build A Simple Interpreter:

     29.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Пишем web-проекты: Использование gevent для эмуляции высокой нагрузки

Обязательное действие перед выпуском более-менее серьёзного проекта — тестирование производительности. На высоконагруженных проектах нужно точно знать, какую нагрузку они могут выдержать, причём заранее. Следовательно, нужен способ эмуляции высокой конкурентности, желательно чтобы в теории он позволял полностью загрузить канал траффиком. К тому же, неплохо было бы, чтобы для этого не нужно было использовать несколько десятков серверов. В докладе будет рассказано об опыте использования gevent для подобной задачи, что позволило бы обойтись одним t1.micro инстансом, с которого выполняется тестирование.

     29.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Статьи

PyTest

По историческому призванию я SQL-щик. Однако судьба занесла меня на BigData и после этого понесла кривая — я освоил и Java, и Python, и функциональное программирование (изучение Scala стоит в списке). Собственно на одном из кусков проекта встала необходимость тестирования кода на Python. Ребята из QA посоветовали для этих целей PyTest, но даже они затруднились толком ответить чем этот зверь хорош. К сожалению, в русскоязычном сегменте информации по данному вопросу не так уж и много: как это используют в Yandex да и все по-хорошему. При этом описанное в этой статье выглядит достаточно сложно для человека начинающего путешествие по этой стезе. Не говоря уже об официальной документации — она приобрела для меня смысл лишь после того, как я разобрался с самим модулем по другим источникам. Не спорю, там написаны интересные вещи, но, к сожалению, совсем не для старта.

     31.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Релизы

PyPy 4.0.0

В отличие от прошлых выпусков, в версии PyPy 4.0 впервые наблюдается снижение производительности: новый выпуск в среднем на 1.5% медленнее прошлой версии PyPy, но по-прежнему в 7 раз быстрее классического CPython 2.7.

     28.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Пишем web-проекты: Погружение в полнотекстовый поиск, используя Python

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

https://www.youtube.com/watch?v=vXl7EEURfO8

     27.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Учебные материалы: Куда ползёт питон?

Чем Python и его экосистема отличается от других языков программирования? Какая у Python ниша? Какие сильные и слабые стороны у языка и батареек? На все эти вопросы Григорий попробует ответить в своём обзорном докладе, рассказывающем о том, куда ползёт Python в 2015 году

https://www.youtube.com/watch?v=_79KfX-3sQc

     26.10.2015       Выпуск 97 (26.10.2015 - 01.11.2015)       Колонка автора

Синтаксис Python: raw-unicode-escape против u'\xd0\x9a'

ython 2 и проблемы с кодировками — это единое целое. И мало, что сами файлы с исходниками сохраняют в самых разных кодировках, так и текстовые файлы с данными этим грешат. Казалось бы, используйencode/decode и что тут думать. Но бывает, что декодируешь юникод и получаешь строку:

u'\xd0\x9a\xd1\x83\xd1\x80\xd1\x83\xd0\xbc\xd0\xbe\xd1\x87'

     25.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Как подружить AWS Lambda и PostgreSQL

С недавних пор в сервисе AWS Lambda появилась нативная поддержка Python 2.7. Для тех, кто не в курсе, что такое AWS Lambda, отсылаю к статье на хабре. Основное преимущество использования сервиса — создание масштабируемой беcсерверной архитектуры. В данной статье я расскажу о способе подружить AWS Lambda и PostgreSQL.

 

     25.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

Андрей Светлов — MagicPython -- Syntax Highlighter для SublimeText

Мой приятель Юра Селиванов попросил написать рекламный пост о его новом проекте MagicPython.

Это syntax highlighter для Sublime Text и Atom, который поддерживает все новые языковые конструкции Python 3.5 (async def и await например) плюс type annotations, string formatting и регулярные выражения.

Sublime поддерживает Python из коробки, но с Python 3 (а особенно с Python 3.5) у него проблемы. MagicPython понимает всё.
Разметка шаблонов для форматирования строк и регулярок заслуживает отдельного упоминания -- выглядит прекрасно и заметно облегчает жизнь.

     24.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Таинство стандартной библиотеки: zipimport - импортируем код из zip файлов

Еще в далеком Python 2.3 был добавлен модуль zipimport. Этот модуль упростил возможность импорта изzip файлов:

     26.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Таинство стандартной библиотеки: timeit - измерим время работы!

Представим мы придумали алгоритм, на пальцах оценили его быстродействие, закодили и получили медленно работающий софт. Что делать? куда бежать? С чего стоит начать? Да сначала стоит измерить сколько ресурсов (память, время, проц) кушает ваш софт. Уже имея числа на руках можно думать дальше. Для измерения временных затрат для вашего кода можно воспользоваться библиотекой timeit. А другие ресурсы измерим в след. раз. Она позволяет измерить время работы куска кода программы:

     26.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Математика в Python: Матрицы в NumPy

Списки - встроенный тип Python, могут содержать любые элементы: целые, дробные числа, строки, объекты. Это великая сила Python, но в то же время и слабость — в отношении скорости работы. В стандартные дистрибутивы Python входит модуль array, реализующий аналог массивов C/C++, он может пригодиться для простейших расчётов с многомерными массивами, матрицами. NumPy — мощнейшая библиотека для научных вычислений. Написать здесь операции с матрицами так же просто, как и с обычными числами. Матрица в NumPy — это объект numpy.array, массив чисел одного типа, какой угодно размерности: 0 (одно число, скаляр), 1 (вектор), 2 (матрица), 3 (тензор третьего ранга)...

     23.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Колонка автора

Учебные материалы: Что нового в Python 3.5

Когда полезны аннотации типов? Станет ли асинхронное программирование обычной практикой с новыми async-await? Устроим обсуждение этих и других новинок Python 3.5. Все это вы сможете узнаете в докладе Андрея Власовских

https://www.youtube.com/watch?v=2GuTQwBYsgI

     23.10.2015       Выпуск 96 (19.10.2015 - 25.10.2015)       Статьи

10 приложений для изучения Python на Android-устройствах

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

В процессе изучения языка программирования, в частности Python, я считаю, что нужна погружаться в него полностью. Лозунг: «Ни дня без кода!» я дополняю, ну если ни кодить, то хотя бы почитать об этом. Для того чтобы не выходить из ритма в условиях, когда нужно в жизни сделать многое, но некогда, а хотелось бы учить Python, мобильный приложения помогут не тратить зря время в транспорте, во время ожиданий и т.д.Предлагаю список приложений из Google Play для изучения Python на Android-устройствах, которые помогут не только получить знания, но и проверить свой уровень по Python.Три из ниже перечисленных приложений я обязательно советую студентам при изучении Python: Learn Python, Quiz&Learn Python и Python Challenge. Ну теперь подробнее.