Митапы

Хахатоны и бухкэмпы

#12

13 августа 2016, 14:30 @ Конгресс-холл отеля Ока, зал «Ока-стандарт 1»

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

Как пройти

Место это известное, но на всякий случай — как туда добраться и пройти

Есть 2 способа:

  1. Если вы знаете, где находится офис NetCracker, то все элементарно: просто обойдите здание Оки, заверните за угол. Там будет стоянка, а в здании — дверь в конгресс-холл с табличкой. Если не знаете, где этот офис, то проходите между Окой и Ситилинком, там будет белый забор, который ведет к бизнес-центру. Идите туда, обходите здание бизнес-центра. Как только попадете в этот вход, то поднимайтесь на второй этаж. Вы пришли в конгресс-холл.

  2. Нагло прите через главный вход в гостиницу. Там доходите до регистратуры, поворачивайте направо и подходите к окну. Как только подойдете, то сразу поймете, что налево ведет белый коридор. Идите по нему, пока не попадете в конгресс-холл.

Как только вы окажетесь в конгресс-холе, ищите зал «Ока-стандарт 1». Мы будем там.

Доклады

14:40

Вещественные доказательства

Сергей Архипов (MERA)

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

Шагнем немножко дальше хранения вывода тестового тула в Jenkins'е.

15:25

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

Евгений Слезко (Marilyn System Russia)

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

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

Основано на горьком опыте.

16:10

Практические битвы за автоматизацию

Кирилл Розин (MERA)

Все слышали и многие активно используют автоматическое тестирование. Тем не менее проблемы остаются и чаше связаны с тем как на больших проектах сделать унифицированную систему тестирования, начиная от выбора тестового фреймворка и привязки выполнения тестов к CI (Continues Integration) до автоматической публикации результатов и их автоматического анализа.

Кирилл расскажет о боевом опыте применения разных python тестовых фреймворков и интеграции с различными системами как-то Jenkins, TestRail, Launchpad, а также различных подходов для автоматического разбора упавших тестов и их анализа.

Как выглядят и что умеют современные системы, какие у них возможности к интеграции и что все еще остается за бортом? Как подобная практика может помочь проектному менеджеру и снизит расходы на bug scrub процесс?

16:55

Большой кравлинг на фронтирах

Денис Тимофеев (ScrapingHub)

Если стоит задача написать интернет-поисковик, очередной Гугл, или получить все данные с ЛинкедИна или ВК, то проблемой становится построение инфраструктуры. Поговорим о ней и о подходах к решениям. А так же разберем что такое фронтиры на примере Фронтеры, придуманной в Скрапингхапе.

17:50

Документация и автотестирование схемы API c помощью OpenAPI

Николай Кугаевский (dudes.io)
  • OpenAPI — консорциум стандартизации API.
  • Документирование API с помощью Swagger.
  • Инструменты для работы с документацией API.
  • Пишем автотесты для тестирования схемы ответа API.

#11

25 июня 2016, 15:00 @ Premio (Нижне-волжская набережная, 1в)

Всем привет! Нижегородское Python-сообщество собирается на 11й митап!

Попробуем провести его в довольно неожиданном месте — на летней террасе клуба Premio. Даже если темы докладов покажутся не очень интересными, приходите пообщаться с коллегами и выпить ледяного сидра.

В этот раз поговорим про распределённые очереди задач, PostgreSQL и Fabric.

Доклады

15:10

Вступительное слово

Николай Кугаевский (dudes.io)

Нижегородское IT-сообщество.

Анонсы всех событий в Телеграме: канал @it52info.

Запросить информацию о событиях: бот @it52_bot.

Подписывайтесь!

15:20

Печём пирожки с Celery

Александр Мокров (Positive Technologies)

Не переживайте, сами пирожки будут с мясом, а вот Celery поможет организовать процесс приготовления. Единственная проблема в том, что они будут виртуальными… Но зато это поможет нам разобраться в том, что такое Celery, как и для чего его можно использовать на вполне конкретных примерах, а так же рассмотреть различные плюсы и минусы.

16:00

Очереди задач без купюр

Артем Малышев (Positive Technologies)

Так или иначе в любом сложном web приложении используются очереди задач. И так уж сложилось, что им положено быть распределёнными. В данный момент рынок решений для python разработчиков представляют 2 главных продукта — Celery и RQ.

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

На все эти вопросы я дам ответ в своём докладе.

16:40

Древовидная структура в PostgreSQL. SQL Common Table Expression

Алексей Кутепов (Revel Systems)

История одной практической задачи. Прекрасный PostgreSQL — рекурсивные выборки средствами SQL. Как поле depth в таблице с деревом упрощает жизнь.

17:20

Fabric: Python Library for Devops Tasks

Петр Нужнов (Five9)

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

18:50

Заключительное слово

Николай Кугаевский (dudes.io)

Нижегородское IT-сообщество.

Анонсы всех событий в Телеграме: канал @it52info.

Запросить информацию о событиях: бот @it52_bot.

Подписывайтесь!

Lightning talks

18:00

Dependency Injection in Python

Артем Малышев (Positive Technologies)

Рассказ о методах и подходах к DI в Python.

18:20

Type Hints in Python

Дмитрий Висков (EPIC)

Рассказ о том, как использовать информацию о типах в динамическом Python.

#10

23 апреля 2016, 15:00 @ Positive Technologies (ул. Тимирязева, 15к2)

Когда митапы Python-сообщества только затевались, целью номер 1 было продержаться 10 мероприятий. Это мероприятие — 10, юбилейное. Выжили!

В этот раз попробуем немножко по хардкору: функциональщина и эмбедед.

Как пройти

В общем, это то самое здание на Тимирязева, где Юлмарт. Попасть в бизнес-центр несложно: нужно всего лишь пройти в центральный вход, который справа от входа в Юлмарт. Над входом висят следующие буквы: K, M, C, I, T, Y. Другие буквы над входом не висят. На охране скажите, что вы «на мероприятие в Positive Technologies». Если что, звоните +7 920 018-94-04.

Доклады

15:10

Вводное слово

Артем Малышев (Positive Technologies)

Рассказ о Positive Technologies. Самоминутка любования и гордости; ложь, правда, провокация.

15:20

Pattern Matching в Python

Артем Малышев (Positive Technologies)

Доклад об очень мощной технике из функциональных языков программирования. Рассказ о том, откуда она пришла, в каком виде сейчас существует и как реализовать её в Python.

16:00

ESP8266: Делаем IoT устройства просто, быстро и дёшево

Алексей Кудаков (MERA)

Рассказ о том что такое ESP8266, о её аппаратной и программной частях, несколько use-case'ов для ESP8266 и живая демонстрация.

17:00

Колхозные монады

Сергей Архипов (MERA)

Дуглас Крокфорд говорил, что монады прокляты: любой, кто их понял, теряет способность их объяснить. Автор довольно самонадеяно полагает, что понял достаточно, чтобы объяснить их простым, рабочекрестянским языком.

Lightning talks

17:50

Разрушители мифов. Автоматическое решение Google Recaptcha

Кирилл Шипулин (Positive Technologies)

Статья: Автоматическое решение Google Recaptcha.

Об одном подходе к автоматическому взлому Google Recaptcha 2.

18:20

В защиту Twisted

Павел Шалаев

На прошлом митапе разгорелась дискуссия по поводу того, насколько плох Twisted. Паша попытался оправдать его.

К сожалению, по техническим причинам запись оборвалась на половине.

#9

19 марта 2016, 15:00 @ Revel Systems (ул. Ванеева, 25/88)

Всем привет! 9 митап Python-сообщества, тематический, асинхронный. На этот раз попробуем собраться на выходных, что не исключает возможность afterparty, поэтому лучше приезжайте пешеходами.

В этот раз — без регистрации! Однако проверяйте событие либо здесь, либо в группе: возможно будут какие-то изменения.

Как попасть в место проведения

  1. Доходим до Ванеева 25/88. Это большой 17-этажный дом. Нам нужно добраться до помещений, что под самой крышей, с козырьком.
  2. Огибаем дом, идя вдоль по Ванеева. На двери подъезда будет висеть табличка с названием митапа, ориентируйтесь на нее. Вообще, это первый подъезд. Код на домофоне — 200. Возможно ответят не сразу, поскольку он находится не прямо в офисе. Если вдруг почувствуете идиотизм происходящего, и не сможете пройти внутрь, то звоните прямо организатору: +7 920 018-94-04.
  3. Проходим к лифтам, поднимаемся на 16 этаж. Если вы вдруг забыли число 16, то на дверях лифта будет напоминание.
  4. Выходим на лестничную клетку, выходим на балкон. Там страшно, поэтому не задерживайтесь, и идите дальше, поднимайтесь на 17 этаж.
  5. На 17 этаже ориентируйтесь по навигации на дверях и стенах

Доклады

15:10

Вводное слово

Александр Коробков (Revel Systems)

Вводное слово о компании Revel Systems.

15:30

Концепция сопрограмм

Александр Мокров (Positive Technologies)

Речь пойдет о сопрограммах и генераторах. О самой концепции, как связаны между собой, в каком виде появились в Python и как в дальнейшем эволюционировали, от простых генераторов до сопрограмм c async и await синтаксисом.

16:00

Asyncio Under the Hood

Артем Малышев (Positive Technologies)

Доклад о том, что же такое асинхронное программирование и неблокирующий ввод/вывод, зачем всё это нужно в Python, какие задачи решает и как устроено внутри.

Lightning talks

17:00

Concierge

Сергей Архипов (MERA)

Рассказ о небольшой утилите для менеджмента SSH-конфигов, concierge.

#8

25 января 2016, 18:30 @ Intel (ул. Тургенева, 30)

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

Никаких номеров паспорта вводить не надо: просто имя/фамилия. Паспорт захватите обязательно, требуется охраной здания. Можно взять права как подтверждение — тоже ок.

Доклады

18:40

Python и закон Мура. Кто виноват и что делать?

Денис Нагорный (Intel)

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

19:20

Профилировка приложений на Python: как делать и что даёт

Василий Литвинов (Intel)

Коротенько о том, что такое профилирование и зачем оно. Обзор существующих решений для профилирования Python кода + обзор возможностей Intel® Vtune™ Amplifier для профилирования чистого Python и Python + C. Демонстрация «вживую» на простых, но жизненных примерах.

Lightning talks

20:10

Тестирование асинхронных приложений

Артем Малышев (Positive Technologies)

Некоторые подходы к тестированию асинхронных приложений