Python жив! С такого громкого заявления хочется начать статью.
На этой неделе вышел 100-тый Python Digest. По такому случаю мы решили подвести итоги работы над дайджестом и рассказать о тенденциях, выявленных в процессе сбора новостей по языку, которому собственно и посвящен дайджест.
В конце 2014 года мы подводили итоги за год. В этот раз мы рассмотрим тенденции за неполные 11 месяцев 2015-года.
Но перед тем как перейдем к тенденциям — расскажем что сделали за (почти) год.
Интересующихся подробностями милости просим под кат.
Этот год был трудным для нас — летом Дайджест мог прекратить свое существование, ведь основатель проекта погрузился в пучину работы и физически уже не мог модерировать новости.
Однако, новая волна сил в лице Александра Сапронова (@WarmongeR) заставила проект жить и развиваться дальше.
Подхватив инициативу, я начал активно автоматизировать модерацию новостей. Добавил много новых возможностей, перетащил дайжест на Python 3, поправил совсем явные ошибки проекта. Расширил контент, добавив не малое количество новых источников. Дайджест стал агрегировать видео, релизы библиотек.
Теперь у нас стабильная посещаемость, да даже в twitter больше 550 подписчиков, мы стали общаться с читателями в gitter, а бездушный бот публикует новости в Telegram канал. Однако, конец года также опечалил дайджест — после 96 выпусков, по причине загруженности в собственных проектах, перестало получаться рисовать нам картинки к выпускам у Андрея (@owlman75). Готов кто-нибудь подхватить этот почетный флаг? Если да — пишите в личку или в комментариях.
На этой ноте, давайте перейдем к новостям. А расскажем мы вам о…
Сентябрьский релиз Python 3.5 — это главная новость во вселенной Python. Однако были и другие интересные события — Гвидо рассказал о первых годах Python, Django исполнилось 10 лет, Django Girls исполнился год, pip обновился до версии 7.0 и научился кешировать модули. Да что скрывать - вышел PyCharm 5.0.
В дайджесте промелькнули и другие интересные ссылки:
За прошедший год случилось несколько крупных обновлений — IPython был разделен и обновлен до версии 3.0, релиз python-oauth2 после 4 лет отсутствия активности (добавили Python 3). Поддержку Python 3 добавили и в gevent.
Были и еще интересные релизы и проекты:
За целый год Python-разработчики посетили и организовали множество различных конференций и встреч — минские питонисты все также радуют нас прекрасными встречами, новый сезон встреч MoscowPython, организация второго сообщества Python-нистов в Питере (SPbPy и SPb Python) и первого в Новосибирске (PyNSK) — все это и многое другое радовало нас:
Значительный вклад в русско-язычный Python-контент делает Хабр.
С начала года мы проследили за интересными статьями и даже циклами статей — Событийно-ориентированный бэктестинг на Python шаг за шагом, Анализ логов с помощью Hadoop/Python, Django 1.9 получит новый дизайн админки, Стоимость жилья как функция координат, Погружение в пучину интерпретатора Python. Ч1.
Хочется отметить и другие интересные статьи с хабра:
Анализ и визуализация данных является самой большой тенденцией Python за последний год. Все лето авторы сравнивали Python и R — какая производительность, какой синтаксис, какие есть библиотеки, да даже сравнивали количество строк для реализации одного и того же анализа.
Самыми важными событиями за этот год этом разделе стали — разделение IPython на Jupyter и сами notebook и Pandas научился опускать GIL — что позволит проще работать с многопоточностью.
Но были и другие новости — анализировали самые разные данные:
И составляли множество учебных материалов:
Люди — ленивые существа, а разработчики еще ленивее. Заставляют бездушную машину делать все за них. В том числе и с помощью машинного обучения:
Волей судьбы разработчики на Python полюбили функциональный подход и время от времени пытаются сдвинуть развитие языка в эту сторону.
Но не только функциональщина посещала голову питонистов. Как и всегда, они занимались профилированием, микро-оптизациями, изучали структуры данных:
А вот что нас повеселило — это изменение черт лица на лету:
Этот год был слаб на железо в Python — Raspberry Pi и другие однопалатные компьютеры уже с ног до головы изучены, а Intel Edison слишком дорог для домашних поделок. Однако и среди безрыбья нашлось интересное применение поделок:
В этом году разработчикам полюбилось компьютерное зрение на OpenCV:
Хочется поразмышлять о будущем проекта Python Дайджест.
Во-первых, проект будет жить дальше. Несмотря на недостаток времени у членов команды, мы развиваем проект и по прежнему популяризируем Python в русскоязычном сегменте Интернет.
Во-вторых, мы ищем новые силы среди читателей. Открыты к предложениям и изменениям. Радостно ожидаем нового иллюстратора, разработчиков, модераторов новостей, авторов.
В-третьих, ищем финансовую поддержку у сообщества и компаний, по этой причине на сайте появилась кнопка «Пожертвовать».
На этой неделе вышел 100-тый Python Digest. По такому случаю мы решили подвести итоги работы над дайджестом и рассказать о тенденциях, выявленных в процессе сбора новостей по языку, которому собственно и посвящен дайджест.
В конце 2014 года мы подводили итоги за год. В этот раз мы рассмотрим тенденции за неполные 11 месяцев 2015-года.
Но перед тем как перейдем к тенденциям — расскажем что сделали за (почти) год.
Интересующихся подробностями милости просим под кат.
Этот год был трудным для нас — летом Дайджест мог прекратить свое существование, ведь основатель проекта погрузился в пучину работы и физически уже не мог модерировать новости.
Однако, новая волна сил в лице Александра Сапронова (@WarmongeR) заставила проект жить и развиваться дальше.
Подхватив инициативу, я начал активно автоматизировать модерацию новостей. Добавил много новых возможностей, перетащил дайжест на Python 3, поправил совсем явные ошибки проекта. Расширил контент, добавив не малое количество новых источников. Дайджест стал агрегировать видео, релизы библиотек.
Теперь у нас стабильная посещаемость, да даже в twitter больше 550 подписчиков, мы стали общаться с читателями в gitter, а бездушный бот публикует новости в Telegram канал. Однако, конец года также опечалил дайджест — после 96 выпусков, по причине загруженности в собственных проектах, перестало получаться рисовать нам картинки к выпускам у Андрея (@owlman75). Готов кто-нибудь подхватить этот почетный флаг? Если да — пишите в личку или в комментариях.
На этой ноте, давайте перейдем к новостям. А расскажем мы вам о…
Python и его PEP-ы
Сентябрьский релиз Python 3.5 — это главная новость во вселенной Python. Однако были и другие интересные события — Гвидо рассказал о первых годах Python, Django исполнилось 10 лет, Django Girls исполнился год, pip обновился до версии 7.0 и научился кешировать модули. Да что скрывать - вышел PyCharm 5.0.
В дайджесте промелькнули и другие интересные ссылки:
- Учебные материалы: Что нового в Python 3.5 — Когда полезны аннотации типов? Станет ли асинхронное программирование обычной практикой с новыми async-await? Устроим обсуждение этих и других новинок Python 3.5. Все это вы сможете узнаете в докладе Андрея Власовских
- PEP 0506 — Добавление модуля secrets в стандартную библиотеку — Модуль secrets содержит несколько генераторов псевдослучайных чисел. В 3.6 этот модуль будет добавлен в стандартную библиотеку.
- PEP-498 — удобный способ форматирования строк — Этот PEP значительно расширяет возможности к формирования строк. Изучите этот стандарт, он сломает вам мозг.
- Python 3.5 и многозадачность — В Python 3.5 asyncio стал более нативным. В статье вы найдете сравнения скорости работы при различных конфигурациях железа.
- Подсчет элементов в списке: как это было реализовано раньше, а как сейчас — экскурс в историю Python
Релизы и проекты
За прошедший год случилось несколько крупных обновлений — IPython был разделен и обновлен до версии 3.0, релиз python-oauth2 после 4 лет отсутствия активности (добавили Python 3). Поддержку Python 3 добавили и в gevent.
Были и еще интересные релизы и проекты:
- Прошлое, настоящее и будущее Jupyter и IPython — Недавно IPython разделился на две части — Jupyter и IPython (для повышения модульности). В этом видео вы найдете самые свежие соображения на эту тему.
- Pandas, начиная с версии 0.17, отпускает GIL — Как и Numpy, Pandas теперь умеет отпускать/поднимать GIL. Это позволяет добиться увеличения производительности.
- SQLAlchemy 1.0.0 — Результат десятилетней, активной разработки модуля для абстрагирования от баз данных и ORM. Не обошлось, впрочем, и без немедленного выпуска 1.0.1
- Поиск картинок-дубликатов Python — Статья описывает алгоритм поиска дубликатов среди картинок. Там же вы сможете найти рабочий код.
- hask — Haskell в Python'е — Если нравится функциональное программирование, то стоит обратить внимание на эту библиотеку. Она реализует множество возможностей языка Haskell
- MesoPy — получение погодных данных с более-чем 40000 станций — MesoPy — это обертка над MesoWest API, который предоставляет возможность собирать погодные данные с множество метеостанций.
Встречи и конференции
За целый год Python-разработчики посетили и организовали множество различных конференций и встреч — минские питонисты все также радуют нас прекрасными встречами, новый сезон встреч MoscowPython, организация второго сообщества Python-нистов в Питере (SPbPy и SPb Python) и первого в Новосибирске (PyNSK) — все это и многое другое радовало нас:
- Лучшие доклады PyCon 2015 — ссылка ведет на набор набор видео, которые стоит посмотреть
- Отчет о конференции PiterPy#2 — 20 марта 2015 прошла 2-я ежегодная конференция PiterPy. Автор поста предлагает свой обзор этого мероприятия со всеми необходимыми ссылками
- Отчет о конференции europython 2015
- Обзор мастерклассов и руководств с PyCon Montreal 2015 — Программы таких больших конференций как PyCon бывают слишком обширными, чтобы в них быстро ориентироваться. Статьи, похожие на данную, весьма в этом помогают.
- Видео конференции Dnepr Py #4 — отчет с конференции DneprPy
Хабрапитон
Значительный вклад в русско-язычный Python-контент делает Хабр.
С начала года мы проследили за интересными статьями и даже циклами статей — Событийно-ориентированный бэктестинг на Python шаг за шагом, Анализ логов с помощью Hadoop/Python, Django 1.9 получит новый дизайн админки, Стоимость жилья как функция координат, Погружение в пучину интерпретатора Python. Ч1.
Хочется отметить и другие интересные статьи с хабра:
- Celery: лучшие практики
- Удалённое исполнение системных команд по запросу через сокеты на Python 3. Протокол передачи данных
- Перенаправление данных из COM-порта в Web — Недавно на хабре была статья «Отображаем данные из Serial в Chrome Application» о том, как красиво представить данные, отправляемые Arduin-кой в Serial. В комментариях к статье было высказано сожаление о том, что такое решение не заработает под Firefox-ом и высказана идея, что «можно еще написать простенький веб-сервер с выдачей html на основе этой штуки».
- Автоматические миграции в Peewee
- Реализация словаря в Python 2.7
- Реализация поискового движка с ранжированием на Python (Часть 2) — В предыдущей части мы построили индекс, но мы всё ещё не можем выполнять запросы по нему. Про это я и расскажу в этой статье.
Анализируй это!
Анализ и визуализация данных является самой большой тенденцией Python за последний год. Все лето авторы сравнивали Python и R — какая производительность, какой синтаксис, какие есть библиотеки, да даже сравнивали количество строк для реализации одного и того же анализа.
Самыми важными событиями за этот год этом разделе стали — разделение IPython на Jupyter и сами notebook и Pandas научился опускать GIL — что позволит проще работать с многопоточностью.
Но были и другие новости — анализировали самые разные данные:
- Анализируем 1.7 миллиард комментариев с Reddit с помощью Blaze и Impala — Захватывающая статья про анализ данных. Особенность этой статьи — объем данных. Далеко не на всякой машине такой объем войдет в память.
- Визуализация движений игроков NBA на Python — Интересная статья, которая показывает как визуализировать движение игроков NBA, а также как посчитать различную статистику по этим данным
- Анализ данных: криминал в Балтиморе — Статья показывает применение анализа данных на примере уровня преступности в городе Балтимор. Инструменты стандартные — pandas, matplotlib, ipython, но данные не стандартные.
- Рисуем карту пабов Британии
И составляли множество учебных материалов:
- Введение в статистику — Довольно большая книга о построении статистических отчетов с помощью Python добралась на этой неделе аж до версии 7.1. Автор постоянно поддерживает текст и код книги в актуальном состоянии.
- Сборник туториалов по обработке данных — В статье приведен список 30-ти лучший Data Scientists, а также отличный список руководств по разным аспектам обработки данных.
- intro2stats — введение в статистику на Python
Машинное обучение
Люди — ленивые существа, а разработчики еще ленивее. Заставляют бездушную машину делать все за них. В том числе и с помощью машинного обучения:
- Введение в машинное обучение на Python — В этом руководстве вы найдете базовые основы машинного обучения, небольшие примеры, термины.
- Простой генетический алгоритм в 15 строках
- Нейронная сеть в 13 строк. Часть 2
- neupy — библиотека для Нейронных Сетей
- word2vec & doc2vec: Анализ тональности на Python
- Подбор рекомендаций на основе анализа ссылкок в Twitter с помощью Neo4j — Довольно интересная, подробная статья с иллюстрациями и примерами реального кода
- Имитируем стиль письма с помощью цепей Маркова — В статье описывается как можно использовать цепи Маркова для написания текста в особом стиле
- Polyglot NLP — модуль для обработки текстов на множестве языков — Данный модуль поддерживает основные алгоритмы обработки текстов. Фишка модуля в поддержке огромного количества языков.
- Анализ движений в реальном времени с помощью машинного обучения
Просто интересно
Волей судьбы разработчики на Python полюбили функциональный подход и время от времени пытаются сдвинуть развитие языка в эту сторону.
- Функциональное программирование на Python — вводная статья про функциональное программирование на Python
- effect — функциональная библиотека, добавляет изоляцию побочных эффектов
- hask — библиотека функционального программирования на Python, которая пытается повторить Haskell
Но не только функциональщина посещала голову питонистов. Как и всегда, они занимались профилированием, микро-оптизациями, изучали структуры данных:
- Мой Python код медленный? Советы профилирования. — В статье отображен минимальный набор действий, который необходим чтобы найти медленные места в Python-коде.
- Лучшие из лучших практик для Python
- Микро-оптимизация кода — ускоряем поиск переменных в областях видимости
А вот что нас повеселило — это изменение черт лица на лету:
- Изменение черт лица с помощью Python — В статье представлен скрипт, который в автоматическом режиме позволяет взять черты лица одного человека и установить их другому человеку. Для этого используется dlib и OpenCV
- Автоматическая смена лиц… теперь на видео
Железный Python
Этот год был слаб на железо в Python — Raspberry Pi и другие однопалатные компьютеры уже с ног до головы изучены, а Intel Edison слишком дорог для домашних поделок. Однако и среди безрыбья нашлось интересное применение поделок:
- Применение Python с Arduino — 17 уроков с текстом и видео с достаточно глубоким погружением в тему разработки ПО для популярной платы-конструктора
- Управляем TV с помощью голоса и Raspberry Pi — Давно мечтали реализовать автоматическое переключение канала при начале рекламы? Тогда эта статья поможет вам.
- Как я хакнул WiFi кнопку за 5$ для слежения за ребенком — Автор статьи рассказывает как он использует 5$ WiFi кнопку от Amazon для слежения за ребенком — он собирает статистику сколько ребенок спал
В этом году разработчикам полюбилось компьютерное зрение на OpenCV:
- Я выключил духовку? — Лечим сглаз по фотографии, Определяем по фотографии статус духовки — включена/выключена.
- Отслеживаем мяч на OpenCV — Распознать объект на видео задача не простая. В этой статье показано как можно осуществить поиск мяча на видео.
- Играем в Pacman c помощью жестов: Python+OpenCV. В статье вы найдете инструкции как реализовать обработку жестов на Python. В качестве примера была выбрана игра Pacman, в которую автор и поиграл с помощью жестов.
Что дальше
Хочется поразмышлять о будущем проекта Python Дайджест.
Во-первых, проект будет жить дальше. Несмотря на недостаток времени у членов команды, мы развиваем проект и по прежнему популяризируем Python в русскоязычном сегменте Интернет.
Во-вторых, мы ищем новые силы среди читателей. Открыты к предложениям и изменениям. Радостно ожидаем нового иллюстратора, разработчиков, модераторов новостей, авторов.
В-третьих, ищем финансовую поддержку у сообщества и компаний, по этой причине на сайте появилась кнопка «Пожертвовать».
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
Комментарии (4)
MrFrizzy
26.11.2015 11:18+2Отчет о конференции europython 2015 — можно сразу идти смотреть вот этот awesome list и этим сэкономить себе время ;)
За подборку большое спасибо — с удовольствием читаю!
MikeLP
Ребята! Прежде всего большое спасибо. Ваша работа прежде всего потраченное время, которое, в свою очередь вы могли потратить занимаясь чем то другим или личными делами. Я более чем уверен что сообщество ценит ваш труд. Данный дайджест позволяет сэкономить время и сфокусироваться на интересных вещах. Давным давно в одной книге была записана важная мудрость — «Большее счастье давать, чем получать».
Спасибо за подборку.