Митапы

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

#13

17 сентября 2016, 15:00 @ НИИТ (ул. Родионова, д. 192/1, 5й этаж, аудитория 509)

13 митап, почти юбилейный, и первый осенний. В этот раз немного (много!) сбавим темп, который взяли летом, и проведем в старом формате: 2 доклада.

Впрочем, если все получится, то будет один сюрприз.

Доклады

15:10

Чёрная магия для белых фей

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

Python, будучи языком с очень низким порогом вхождения, превращается в смертоносное оружие в руках мастера. Популярные фреймворки и библиотеки, написанные матёрыми программистами, очень сильно меняют семантику привычного нам языка. Порой мы даже не замечаем колоссальность этих изменений просто потому, что смотрятся они так естественно. В докладе я расскажу какими механизмами пользовались достопочтенные доны, чтобы используя их технологии, вы говорили: «It's magic!»

16:00

ComputerVision — алхимия матмоделей

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

Computer Vision что это? Очередное пособие по алхимии или набор готовых и проверенных мат моделей?

Ответа в моем докладе нет. И мой опыт подсказывает что это смесь. Я расскажу о опыте знакомства с технологиями Computer Vision и самые простые модели применяемые на практике.

Самые обычные вещи глазами CV — как выглядит Foreground/Background, Intrusion area, Tracking, Blob merge и тд… также раскажу немного об библиотеках и пакетах применяемых в области CV для всеми нам любимого Python.

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

17:10

Стоит ли вводить библиотеку в проект

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

Открытая дискуссия о том, стоит ли добавлять библиотеку в свой проект. Когда стоит, когда нет; какие есть за и какие против.

За: Сергей Архипов (MERA) Против: Артем Малышев (Positive Technologies)

#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.