Митапу в ноябре исполнилось 2 года, и мы решили знатно собраться последний раз в 2016 году.
В этот раз будет 6 докладов, наклейки-стикеры, пицца и знатное (как обычно) афтепати. В этот раз у нас выступит Андрей Светлов, который является core developer'ом Python'она; человек, ответственный за Asyncio, aiohttp и прочую асинхронщину, которую мы все так любим обсуждать и взрывать продакшны. Сможете прийти, и из первых рук получить ответы на вопросы «доколе», «какого черта» и «почему». В записи вы их тоже получите, впрочем, только без интерактива.
Кроме того, хочу напомнить, что у нас все еще есть чат. Туда тоже приходите, там тоже весело.
В этот раз тоже будет регистрация, только теперь она нужна не на абстрактные цели, а для того, чтобы никто не ушел голодным или без свэга.
Василий Рябов - GUI тесты на чистом питоне: Win32, MS UI Automation и щепотка чёрной магии
Сначала увидим, какие open source инструменты есть в этой области, какие из них поддеживают Python и какие на нём полностью написаны. Более детально разберём тестирование Windows приложений с помощью разных accessibility технологий и библиотеку pywinauto, написанную на чистом питоне.
Pywinauto объединяет в себе подход на основе Win32 API (как AutoIt) и технологию MS UI Automation (как TestStack.White или Winium.Desktop на C#). Высокоуровневый и внешне простой интерфейс pywinauto использует многослойную концепцию, позволяющую буквально парой строк выразить нетривиальные вещи. А новая расширяемая архитектура позволяет также писать accessibility плагины (бэкенды) для разных оконных систем и платформ.Артем Малышев - Django Channels — ответ современному вебу
В докладе я расскажу о назначении и устройстве Django Channels.
Давно прошли времена, когда все сайты работали в режиме «запрос-ответ». Пользователи хотят интерактивности и отзывчивости, программисты хотят websocket'ы, HTTP/2 стремительно набирает популярность. Классические WSGI фреймворки перестают соответствовать реалиям жизни. Вы узнаете каким образом в Django реализована поддержка асинхронных протоколов, решение каких задач можно отдать этой технологии, а где лучше использовать tornado или aiohttp.Андрей Светлов - Асинхронный веб сервер: зачем он нужен
Удобная работа с веб-сокетами — очевидное, но далеко не единственное преимущество асинхронных веб серверов. Куда важнее память, производительность и поведение под нагрузкой при обслуживании обычных HTTP запросов. Вот про это и поговорим, сравнивая синхронный и асинхронный подходы.
Примеры будут на aiohttp, но в целом то же самое справедливо для twisted, tornado и наверное вообще любого асинхронного веб-сервера, даже не обязательно написанного на Python.Сергей Архипов - Вещи, которые работают
Когда‑то давно я ходил в школу, и учился там хорошо. А потом я ходил в университет, и тоже учился там хорошо. А потом я пошел на работу, и до сих пор учусь там хорошо. Но в целом, жалею, что не знал некоторых вещей раньше. И жалею, что никто не пытался объяснить, насколько жизнь отличалась от того, к чему меня готовили.
Этот доклад — результат моего опыта в промышленной разработке ПО, а также попытка объяснить, как же в конце концов делать проекты, а не следовать процессам. Попробую рассказать про вещи, которые на самом деле работают, а не про вещи, которые должны были бы.Денис Тимофеев - Офис не нужен? (доклад-проповедь)
Докладчик расскажет о собственном опыте работы в компании без офиса и о том как руководить такими командами.
По всем вопросам (в том числе и в день мероприятия) обращаться сюда: http://rannts.ru/info/#contact
Форма для регистрации: https://goo.gl/forms/DI5VspxArCo9WuSt2
К сожалению, опять регистрация. Пожалуйста, не пишите смешных имен: нам тоже не хочется ее делать.
13 митап, почти юбилейный, и первый осенний. В этот раз немного (много!) сбавим темп, который взяли летом, и проведем в старом формате: 2 доклада.
Впрочем, если все получится, то будет один сюрприз.
Доклады
- 15:00—15:10 → традиционное ожидание опаздывающих. Чай, смешные шутки.
- 15:10—16:00 → Артем Малышев (Positive Technologies) — Чёрная магия для белых фей Python, будучи языком с очень низким порогом вхождения, превращается в смертоносное оружие в руках мастера. Популярные фреймворки и библиотеки, написанные матёрыми программистами, очень сильно меняют семантику привычного нам языка. Порой мы даже не замечаем колоссальность этих изменений просто потому, что смотрятся они так естественно. В докладе я расскажу какими механизмами пользовались достопочтенные доны, чтобы используя их технологии, вы говорили: «It's magic!»
16:10—17:00 → Кирилл Розин (MERA) — ComputerVision — алхимия матмоделей
Computer Vision что это? Очередное пособие по алхимии или набор готовых и проверенных мат моделей?Ответа в моем докладе нет. И мой опыт подсказывает что это смесь. Я расскажу о опыте знакомства с технологиями Computer Vision и самые простые модели применяемые на практике.
Самые обычные вещи глазами CV — как выглядит Foreground/Background, Intrusion area, Tracking, Blob merge и тд… также раскажу немного об библиотеках и пакетах применяемых в области CV для всеми нам любимого Python.
Добавим что это только первый доклад, и будут другие которые, вызывают интерес, как и аппетит во время еды.
http://rannts.ru/meetups/13
Пора собраться на новый митап. В этот раз будет 2 направления: тестирование и разработка систем, агрегирующих данные из разных источников. Кроме того, некоторые докладчики будут из других городов: попробуем, как это получится в этот раз. В прошлый было очень хорошо.
Доклады (видео)
- 14:30—14:40 → традиционное ожидание опаздывающих. Чай, смешные шутки.
- 14:40—15:20 → Сергей Архипов (MERA) — Вещественные доказательства
Доклад будет посвящен унификации тестирования, подходам к обработке тестовых результатов и их хранению. Докладчик исходит из предположения, что тесты все писать научились, но о хранении и обработке тестовых результатов задумываться еще не начинали. Что такое плохой коммит, как пометить его плохим, какие доказательства нужно предоставить, и как получить к ним доступ.
Шагнем немножко дальше хранения вывода тестового тула в Jenkins'е.
В современном мире сложно представить систему, которая бы не использовала в своей работе внешние данные. Эти данные, как правило, предоставляются различными сервисами, которые тоже написаны людьми. Поэтому далеко не всегда можно всецело полагаться на стабильность этих источников и на корректность данных, которые они отдают. С увеличением количества сервисов, с которыми интегрируется система, подобных проблем становится всё больше.
В докладе рассказывается о сложностях, с которыми можно столкнуться в ходе разработки такой системы, и о том, как их можно избежать.
Основано на горьком опыте.
Все слышали и многие активно используют автоматическое тестирование. Тем не менее проблемы остаются и чаше связаны с тем как на больших проектах сделать унифицированную систему тестирования, начиная от выбора тестового фреймворка и привязки выполнения тестов к CI (Continues Integration) до автоматической публикации результатов и их автоматического анализа.
Кирилл расскажет о боевом опыте применения разных python тестовых фреймворков и интеграции с различными системами как‑то Jenkins, TestRail, Launchpad а также различных подходов для автоматического разбора упавших тестов и их анализа.
Как выглядят и что умеют современные системы, какие у них возможности к интеграции и что все еще остается за бортом? Как подобная практика может помочь проектному менеджеру и снизит расходы на bug scrub процесс?
Если стоит задача написать интернет-поисковик, очередной Гугл, или получить все данные с ЛинкедИна или ВК, то проблемой становится построение инфраструктуры. Поговорим о ней и о подходах к решениям. А так же разберем что такое фронтиры на примере Фронтеры, придуманной в Скрапингхапе.
17:50—18:30 → Николай Кугаевский (dudes.io) — Документация и автотестирование схемы API c помощью OpenAPI
18:30—∞ → Афтэпати. Прекрасные люди пьют напитки.
Как пройти
Место это известное, но на всякий случай — как туда добраться и пройти
Есть 2 способа:
- Если вы знаете, где находится офис NetCracker, то все элементарно: просто обойдите здание Оки, заверните за угол. Там будет стоянка, а в здании — дверь в конгресс-холл с табличкой. Если не знаете, где этот офис, то проходите между Окой и Ситилинком, там будет белый забор, который ведет к бизнес-центру. Идите туда, обходите здание бизнес-центра. Как только попадете в этот вход, то поднимайтесь на второй этаж. Вы пришли в конгресс-холл.
- Нагло прите через главный вход в гостиницу. Там доходите до регистратуры, поворачивайте направо и подходите к окну. Как только подойдете, то сразу поймете, что налево ведет белый коридор. Идите по нему, пока не попадете в конгресс-холл.
Как только вы окажетесь в конгресс-холе, ищите зал «Ока-стандарт 1». Мы будем там.
Всем привет! Нижегородское Python-сообщество собирается на 11й митап!
Попробуем провести его в довольно неожиданном месте — на летней террасе клуба Premio. Даже если темы докладов покажутся не очень интересными, приходите пообщаться с коллегами и выпить ледяного сидра.
В этот раз поговорим про распределённые очереди задач, PostgreSQL и Fabric.
15:00 — 15:10 → традиционное ожидание опаздывающих. Чай, смешные шутки.
15:10 — 15:50 → Печём пирожки с Celery (Александр Мокров, Positive Technologies)
Не переживайте, сами пирожки будут с мясом, а вот Celery поможет организовать процесс приготовления. Единственная проблема в том, что они будут виртуальными… Но зато это поможет нам разобраться в том, что такое Celery, как и для чего его можно использовать на вполне конкретных примерах, а так же рассмотреть различные плюсы и минусы.16:00 – 16:30 → Очереди задач без купюр (Артем Малышев, Positive Technologies)
Так или иначе в любом сложном web приложении используются очереди задач. И так уж сложилось, что им положено быть распределёнными. В данный момент рынок решений для python разработчиков представляют 2 главных продукта - Celery и RQ. В докладе я расскажу о внутреннем устройстве обеих систем. Поговорим о том, с какими проблемами столкнулись их создатели, как их решили и чем эти решения грозят конечному пользователю. Как устроены группы, хорды и eta? Как добиться отказоустойчивости на транспортном уровне? Почему это тяжело масштабировать? На все эти вопросы я дам ответ в своём докладе.16:40 – 17:10 → Древовидная структура в PostgreSQL. SQL Common Table Expression (Алексей Кутепов, Revel Systems iPad POS)
История одной практической задачи. Прекрасный PostgreSQL - рекурсивные выборки средствами SQL. Как поле depth в таблице с деревом упрощает жизнь.17:20 – 17:50 → Fabric: python library for devops tasks (Петр Нужнов, Five9)
Fabric - библиотека для удаленной установки приложений и выполнения задач по администрированию системы. Расскажу о том, как можно заменить самопальные костыли управления конфигурацией на единый стандарт и избавиться от хаоса ручных телодвижений.18:10 — ... → афтэпати. Прекрасные люди пьют напитки.
Lightning talks
- Dependency injection in Python (Артем Малышев, Positive Technologies) —Видео
- Type Hints in Python (Дмитрий Висков, Epic) —Видео
- Заключительное слово (Николай Кугаевский, dudes.io) — Видео
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 016 41 97
- [email protected]
- @proofit404 (github/twitter/facebook/vk)
- @proofit404 (telegram)
https://vk.com/rannts
Когда митапы Python-сообщества только затевались, целью номер 1 было продержаться 10 мероприятий. Это мероприятие - 10, юбилейное. Выжили!
В этот раз попробуем немножко по хардкору: функциональщина и эмбедед.
15:00 — 15:10 → традиционное ожидание опаздывающих. Чай, смешные шутки.
15:10 — 15:20 → Рассказ о Positive Technologies. Самоминутка любования и гордости; ложь, правда, провокация.
15:20 — 16:00 → Pattern Matching в Python (Артем Малышев, Positive Technologies)
Доклад об очень мощной технике из функциональных языков программирования. Рассказ о том, откуда она пришла, в каком виде сейчас существует и как реализовать её в Python.16:10 — 16:50 → ESP8266: Делаем IoT устройства просто, быстро и дёшево (Алексей Кудаков, MERA)
Рассказ о том что такое ESP8266, о её аппаратной и программной частях, несколько use-case'ов для ESP8266 и живая демонстрация.17:00 — 17:40 → Колхозные монады (Сергей Архипов, MERA)
Дуглас Крокфорд говорил, что монады прокляты: любой, кто их понял, теряет способность их объяснить. Автор довольно самонадеяно полагает, что понял достаточно, чтобы объяснить их простым, рабочекрестянским языком.17:50 — 18:10 → Lightning Talks
Если у вас есть о чем рассказать на 5 минут, то пожалуйста!18:10 — ... → афтэпати. Прекрасные люди пьют напитки.
Как пройти
В общем, это то самое здание на Тимирязева, где Юлмарт. Попасть в бизнес-центр несложно: нужно всего лишь пройти в центральный вход, который справа от входа в Юлмарт. Над входом висят следующие буквы: K
, M
, C
, I
, T
, Y
. Другие буквы над входом не висят. На охране скажите, что вы "на мероприятие в Positive Technologies". Если что, звоните +7 (920) 018-94-04.
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook/vk)
- @nineseconds (telegram)
Всем привет! 9 митап Python-сообщества, тематический, асинхронный. На этот раз попробуем собраться на выходных, что не исключает возможность afterparty, поэтому лучше приезжайте пешеходами.
В этот раз — без регистрации! Однако проверяйте событие либо здесь, либо в группе: возможно будут какие-то изменения.
15:00 – 15:10 → традиционное ожидание опаздывающих. Чай, смешные шутки.
15:10 – 15:50 → Концепция сопрограмм (Александр Мокров, Positive Technologies)
Речь пойдет о сопрограммах и генераторах. О самой концепции, как связаны между собой, в каком виде появились в Python и как в дальнейшем эволюционировали, от простых генераторов до сопрограмм casync
иawait
синтаксисом.16:00 – 16:40 → Asyncio Under the Hood (Артем Малышев, Positive Technologies)
Доклад о том, что же такое асинхронное программирование и неблокирующий ввод/вывод, зачем всё это нужно в Python, какие задачи решает и как устроено внутри.16:50 – 17:20 → Lightning Talks
Если вы хотите выступить с маленьким пятиминутным докладом, напишите на [email protected]. Будет как минимум 1 выступление.
Как попасть в место проведения
- Доходим до Ванеева 25/88. Это большой 17-этажный дом. Нам нужно добраться до помещений, что под самой крышей, с козырьком.
- Огибаем дом, идя вдоль по Ванеева. На двери подъезда будет висеть табличка с названием митапа, ориентируйтесь на нее. Вообще, это первый подъезд. Код на домофоне -
200
. Возможно ответят не сразу, поскольку он находится не прямо в офисе. Если вдруг почувствуете идиотизм происходящего, и не сможете пройти внутрь, то звоните прямо организатору: +7 920 018 94 04. - Проходим к лифтам, поднимаемся на 16 этаж. Если вы вдруг забыли число 16, то на дверях лифта будет напоминание.
- Выходим на лестничную клетку, выходим на балкон. Там страшно, поэтому не задерживайтесь, и идите дальше, поднимайтесь на 17 этаж.
- На 17 этаже ориентируйтесь по навигации на дверях и стенах
Вообще, постараемся сделать все как в аэропорту: доберитесь до здания, главное + найдите подъезд. Потом просто ходите по стрелочкам.
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook/vk)
- @nineseconds (telegram)
В этот раз митап Python-сообщества пройдет в Интеле, где, собственно, парни из Интела будут рассказывать о том, зачем им нужен Python, и как им иногда с ним тяжеловато.
- 18:30 - 19:20 Python и закон Мура. Кто виноват и что делать? - Денис Нагорный (Intel) Поговорим о том c чем связан интерес Intel’а к питону, почему питон не успевает за развитием железа, каких результатов мы добились и как видим будущее питона с точки зрения утилизации возможностей железа.
- 19:20 - 20:00 Профилировка приложений на Python: как делать и что даёт - Василий Литвинов (Intel) Коротенько о том, что такое профилирование и зачем оно. Обзор существующих решений для профилирования Python кода + обзор возможностей Intel® Vtune™ Amplifier для профилирования чистого Python и Python + C. Демонстрация «вживую» на простых, но жизненных примерах.
Форма регистрации: http://goo.gl/forms/UpX2AC0kik
Никаких номеров паспорта вводить не надо: просто имя/фамилия. Паспорт захватите обязательно, требуется охраной здания. Можно взять права как подтверждение - тоже ок.
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook)
После большого перерыва, связанного со всяким, митапы возвращаются.
За прошедшее время несколько человек успели выступить с докладами на различных других мероприятиях, которые проходили вне Нижнего Новгорода. Настало время рассказать их и у нас.
- 18:30-19:10: Умом Россию не понять (Архипов Сергей, MERA) Доклад для тимлидеров/PM об особенностях российского nearsource (заказчик/подрядчик - все местные), почему спокойствия на таких проектах не бывает. Как вообще жить с тем, что заказчик - русский. Доклад был впервые представлен на DevDay в Казани 16 ноября 2015 г.
- 19:25-20:10: Гексагональная архитектура в приложениях Django (Артем Малышев, Positive Technologies) Как не превратить свой проект в груду урлов? Как не потерять расширяемость с ростом кодовой базы? Как писать поддерживаемый код? Об этих проблемах и их возможных решениях на примере Django расскажет и покажет Малышев Артем Доклад был впервые представлен на Moscow Django Meetup 19 ноября 2015 г.
Форма регистрации: http://goo.gl/forms/ygnPiWvLO9
Да, ребят, к сожалению, регистрация. Номер/серию паспорта вводить необязательно, но паспорт с собой обязательно возьмите. Даже если вы параноик, и не хотите куда-то что-то вводить, то захватите с собой паспорт, сделаем регистрацию на месте.
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook)
Возвращаемся из небольшого застоя.
Этот rannts - особенный. В этот раз митап - коллаборация нижегородского митапа rannts и казанского devday. И место новое, раз старое место пока еще не готово к приему гостей.
Приглашаем не только питонистов, но и всех желающих. В этот раз про Python будет совсем-совсем немного, зато много про базы данных, шифрование и о том, что все на самом деле очень плохо.
18:00-19:00 - Understanding EXPLAIN in PostgreSQL (Николай Телепенин, DevDay)
Попробуем разобраться как читать планы запросов, как они работают внутри, почему иногда какие-то индексы работают, а какие-то нет и какие параметры на это влияют19:15-20:00 - PGP: Что, почему, когда и как (Ринат Сабитов, DevDay)
Рассмотрим, вкратце, шифрование и цифровые подписи, что такое PGP, для чего он может нам понадобится и как его использовать.
Для желающих можно провести key signing party.20:15-21:15 - Все очень плохо (Сергей Архипов, rannts)
Мы привыкли к тому, IT-индустрия растет, и мы выбрали верную профессию. Мы называемся инженерами и думаем, что умеем писать программное обеспечение. На самом деле все гораздо сложнее
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook)
Немного сумбурно, и с большим перерывом, но 5 митап!
Артем (создатель Anaconda-Mode) расскажет о том, как работает автодополнение и происходит интеграция языка с текстовым редактором. Я расскажу о том, почему мы никогда не можем правильно ответить на вопрос "Когда эта задача будет сделана", что делать, и как со всем этим жить.
Lightning talks приветствуются!
- 18:45-19:15 - Intelligent или сделай мне красиво (Артем Малышев, F-Technology)
- 19:30-20:00 - Estimations (Сергей Архипов, ASD Technologies)
Если у вас есть какие-то вопросы или предложения, то, надеюсь, эти буквы и цифры чем-то помогут:
- +7 (920) 018-94-04
- [email protected]
- @9seconds (github/twitter/facebook)
https://vk.com/rannts