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

Собрали в одном месте самые важные ссылки
и сделали Тренажер IT-инцидентов для DevOps/SRE

     31.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Конференции, события, встречи разработчиков

Piter Py #3 - Python-конференция на Неве conference pycon

Piter Py – это аккумуляция опыта мирового Python-сообщества. Со своими докладами выступят эксперты из США, Италии, Англии, Германии, Ирландии, Франции, Украины и Беларуси. Будет много интересных докладов и от наших соотечественников из разных уголков страны. 
Подробная программа конференции уже опубликована.

     30.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Статьи

Автоматизация оформления документации uml erp documentation

Работая над проектами связанными с авионикой мне потребовалось оформить несколько комплектов документации с полным описанием проекта. Также следовало учитывать требования многих ГОСТов на оформление и на содержание документации, таких как ЕСПД, КТ-178B и других.

     30.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Учебные материалы

Курс ИМКН УрФУ. Языки сценариев (Python)

Курс ИМКН УрФУ. Языки сценариев (Python) В курсе лектор очень подробно и ясно рассказывает про части CPython. Для примера лекция про GIL - как одна из самых спорных тем Ссылка на плейлист с видео:

Рекомендуем просмотр на скорости x2.

     29.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Учебные материалы

Видео-туториалсы запуска вычислительных задач на Python, R, С++, Octave и Blender во FlyElelephant

Сегодня мы хотим поделиться видео-туториалсами запуска задач во FlyElelephant. Под катом вы найдете видео, как запускать вычислительные задачи, написанные с помощью С++, R, Python, Octave и рендерить изображения с помощью Blender, а также промо-код для получения бесплатных дополнительных часов работы ваших задач.

     29.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Учебные материалы

Программирование на Python — курс для желающих узнать о нём больше или изучить ещё один язык программирования

Мы предлагаем тринадцать лекций осеннего курса CS центра, чтобы посмотреть вглубь языка и попробовать понять, как пользоваться всеми его возможностями. Лекции читаетСергей Лебедев, разработчик в компании JetBrains и преподаватель в Computer Science Center. 
 

     29.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Колонка автора
     28.03.2016       Выпуск 119 (28.03.2016 - 03.04.2016)       Конференции, события, встречи разработчиков

Отчёт с Moscow Python Meetup 18 марта

18 марта в московском офисе Mail.Ru Group прошла очередная встреча «питонистов» — Moscow Python Meetup. В рамках традиционного однодневного формата было три выступления, с видеозаписями и презентациями которых вы теперь можете ознакомиться. 

     27.03.2016       Выпуск 118 (21.03.2016 - 27.03.2016)       Статьи

Web Scrapping с помощью python beautiful soup scrapy scraping lxml xpath parsing

Недавно заглянув на КиноПоиск, я обнаружила, что за долгие годы успела оставить более 1000 оценок и подумала, что было бы интересно поисследовать эти данные подробнее: менялись ли мои вкусы в кино с течением времени? есть ли годовая/недельная сезонность в активности? коррелируют ли мои оценки с рейтингом КиноПоиска, IMDb или кинокритиков? 
Но прежде чем анализировать и строить красивые графики, нужно получить данные. К сожалению, многие сервисы (и КиноПоиск не исключение) не имеют публичного API, так что, приходится засучить рукава и парсить html-страницы. Именно о том, как скачать и распарсить web-cайт, я и хочу рассказать в этой статье.
В первую очередь статья предназначена для тех, кто всегда хотел разобраться с Web Scrapping, но не доходили руки или не знал с чего начать. 

Off-topic: к слову, Новый Кинопоиск под капотом использует запросы, которые возвращают данные об оценках в виде JSON, так что, задача могла быть решена и другим путем.

     24.03.2016       Выпуск 118 (21.03.2016 - 27.03.2016)       Колонка автора

Пишем web-проекты: система "лайков" для Django на примере PythonDigest.ru

Python дайджест - это крупный русскоязычный агрегатор Python новостей с кучей ссылок. Больше 10 тысяч ссылок уже собрали. Но в таком море контента тяжело ориентироваться и постоянно в голове вопрос "Как показать пользователю только релевантную информацию?".

     23.03.2016       Выпуск 118 (21.03.2016 - 27.03.2016)       Статьи

Разработка сервиса по загрузке альбомов

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

И вот в преддверии дня рождения, появилось время и отличное настроение для написания сервиса.

     21.03.2016       Выпуск 118 (21.03.2016 - 27.03.2016)       Статьи

Отбираем валидные мобильные номера друзей VK на Python

В процессе изучения Python стало интересно попробовать его в связке с API VK. В ВК есть телефонная книга, она показывает телефоны ваших друзей в более-менее удобном формате. Так как далеко не всегда люди охотно оставляют там полые(валидные) номера своих телефонов, мне показалась интересной идея написать скрипт, который отбирал бы только валидные номера моб.телефонов и выдавал бы их отдельной таблицей. Наша телефонная книга будет генерировать csv-файл, который затем можно будет открыть, например, в excel.

     21.03.2016       Выпуск 118 (21.03.2016 - 27.03.2016)       Статьи

Как я делал фотобудку

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


Под катом будет рассказ о железе, raspberry pi и программировании всего этого под linuх и конечно же мой любимый python. Забегая вперед, скажу, что мне хотелось именно качественных фотографий, поэтому съемка ведется не на веб камеру, а на DSLR, поэтому статья должна получиться еще больше и интересней.

     20.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Парадокс Симпсона и немного Pandas

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

     19.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Колонка автора
     18.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Настройка LaTeX-шаблонов для Jupyter notebook

Есть отличный инструмент для обучения/отчётов/написания умных книг про код — Jupyter Notebook. Если отчёт или книга, например, пишутся на кириллице, а нужно быстро сделать из этого PDF с красивыми формулами и тире правильной длины, то сразу обнаруживается проблема: в стандартном шаблоне, который Jupyter использует для конвертации блокнотов в PDF через LaTeX, нет подключения нужных пакетов с нужными параметрами, поэтому LaTeX просто не компилируется и PDF не получить.

     17.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Модули расширения Python на Rust

“Absolute statements are the root of all evil.
The key is balance. There are no answers, only questions.”
????


Когда говорят про оптимизацию в контектсте программного обеспечения, то при этом часто подразумевают оптимизацию производительности программиста и/или оптимизацию самого программного обеспечения.

Исходя из YAGNI принципа, Python позволяет программисту сосредоточиться на реализации ПО, избавив его от необходимости заботиться о низкоуровневых вещах таких как регионых памяти, в которых выделяются объекты, об её освобождении или о соглашениях о вызовах. 

На обратную проблему в одной из его лекций о Haskell указал Саймон Джонс. У него был слайд, на котором была нарисована стрелка, закрашенная градиентом: в начале было написано “no types”, посередине — “Haskell”, в конце — “Coq”. При этом, когда он указал на Coq, он сказал такую фразу: “This stresses power over usability. Right?! You need a PhD here!”[1]. Несмотря на то, что это была шутка, мантара Python – одна из любимых программистами особенностей этого языка. И из моего опыта, это то, что позволяет выпускать готовый продукт несколько быстрее.

     17.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Что есть в Visual Studio 2015 для разработчика на Python

С версией Visual Studio 2015 Community компания Microsoft впервые предложила разработчикам совершенно бесплатно пользоваться полнофункциональной версией своего мощного инструмента для разработки. Напомню, что функционал Visual Studio 2015 Community почти полностью предоставляет функционал версии Professional, но имеет некоторые лицензионные ограничения по использованию в коммерческой разработке.

Visual Studio 2015 Community так же, как и остальные версии инструмента, расширяема, благодаря Visual Studio Marketplace и всем официальным обновлениям инструмента. То есть огромное, постоянно увеличивающееся количество функционала доступно разработчикам совершенно бесплатно. Это касается и инструментов для разработки на языке Python.

Поддержка Python станет доступна, если отметить соответствующий пункт при установке среды. Это касается и CPython, PyPy, IronPython, поддержки IntelliSense, интерактивной отладки, интеграции и других возможностей Visual Studio для Python

     17.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Линейные модели: простая регрессия

В прошлый раз мы подробно рассмотрели многообразие линейных моделей. Теперь перейдем от теории к практике и построим самую простую, но все же полезную модель, которую вы легко сможете адаптировать к своим задачам. Модель будет проиллюстрирована кодом на R и Python, причем сразу в трех ароматах: scikit-learn, statsmodels и Patsy.

     15.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Конференции, события, встречи разработчиков

Прошел Moscow Python Meetup, 18 марта

18 марта, в пятницу, прошел на Moscow Python Meetup 33 в офисе Mail.Ru Group. 

     14.03.2016       Выпуск 117 (14.03.2016 - 20.03.2016)       Статьи

Pandasql vs Pandas для решения задач анализа данных

В этой статье я бы хотела рассказать о применении python-библиотеки Pandasql. 

Многие люди, сталкивающиеся с задачами анализа данных, уже, скорее всего, знакомы с библиотекой Pandas. Pandas позволяет быстро и удобно работать с табличными данными: фильтровать, группировать, делать join над данными; строить сводные таблицы и даже рисовать графики (для простых визуализации достаточно функции plot(), а если хочется чего-то позаковыристее, то поможет библиотека matplotlib). На Хабре не раз рассказывали о применении этой библиотеки для работы с данными: раз, два, три.

Но по моему опыту далеко не все знают о библиотеке Pandasql, которая позволяет работать с Pandas DataFrames как с таблицами и обращаться к ним, используя язык SQL. В некоторых задачах проще выразить желаемое с помощью декларативного языка SQL, поэтому я считаю, что людям, работающим с данными, полезно знать о наличии такой функциональности. Если говорить о реальных задачах, то я использовала эту библиотеку для решения задачи join'a таблиц по нечетким условиям (необходимо было объединить записи о событиях из разных систем по примерно совпадающему времени, разрыв порядка 5 секунд).

Рассмотрим использование этой библиотеки на конкретных примерах.