Конференция завершена. Ждем вас на Russian Python Week в следующий раз!

Заявки на доклады

Поиск по тегам:
Показать только принятые доклады

Управление зависимостями и инфраструктура

Conan — это написанный на Python децентрализованный менеджер пакетов и зависимостей для C++.

В докладе я расскажу, как при помощи Python разрабатывается сам пакетный менеджер, декларативные рецепты пакетов, а также распределённая инфрастуктура сборки и публикации пакетов.

Доклад принят в программу конференции

Доклады

Программист ежедневно работает со множеством готовых консольных утилит. Создавать свой инструмент приходится нечасто. Делать сложные программы класса pip, git, docker или aws-cli требуется ещё реже. В ходе доклада вы узнаете, как построить удобный и информативный Command Line Interface. Им приятно пользоваться самому и не стыдно показать другим :)

Рассказ аккумулирует опыт, полученный при разработке платформы машинного обучения в Облаке Мегафон (технологий Neu.ro).

Раскрытые вопросы:
* click + prompt-toolkit;
* TTY/non-TTY;
* Вывод в терминале (темная/светлая тема, размер экрана, как выбирать стили, цвета и emoji);
* Интерактивность, индикаторы прогресса и пр.;
* Проверка корректности опций и аргументов командной строки;
* Автодополнение;
* Работа с асинхронным кодом;
* Файлы конфигураций.

Доклад принят в программу конференции

Вместе с автором обсудим книгу "Fluent Python".
Что может быть круче?

Он расскажет об основных идеях для тех, кто ее еще не читал.
Ответит на вопросы тех, кто уже прочитал.
И даже расскажет о новой редакции книги, которая еще не вышла в продажу.

Доклад принят в программу конференции

Многие современные Web-приложения используют API-схемы для описания того, как они работают. Но само наличие схемы не значит, что реальное приложение будет вести себя так, как описано в схеме. Причин этому множество — от принципиальной невозможности выразить всё в схеме до обыкновенного недосмотра. Последствий у этого множество, и падение приложения — одна из самых безобидных.

Я расскажу о Schemathesis — инструменте, который помогает решить многие из этих проблем при помощи property-based-тестирования. Мы рассмотрим типовые ситуации, в которых его можно применить, и способы улучшить качество сгенерированных тестов. Также затронем stateful-тестирование — подход, в котором автоматически создаются целые цепочки API-запросов. Если вас интересует практическое применение property-based-тестирования и то, как его внедрить, буду рад вас видеть!

Доклад принят в программу конференции

Нас всех волнует будущее Python.
Кого-то оно пугает, кого-то радует. Но никто не равнодушен.

Мы решили провести сессию вопросов с двумя людьми, от которых непосредственно зависит то самое будущее Python. Будет два участника: Core-developer и Director at Python Software Foundation.

Любой желающий сможет задать любой вопрос:
- Про новые интересные PEP'ы.
- Про планы на 4.0.
- Про сообщество.
- Про новую модель управления.
- Как стать core-dev / членом psf?

Узнаем все тайны!

Доклад принят в программу конференции

У каждого из нас мелькают идеи "о, а вот это можно автоматизировать!", давайте их обсудим?

Передача показаний счётчиков, сбор информации в интернете, телеграм-боты, и т.д. и т.п. На Рython можно написать всё это и многое-многое другое. Нам есть чем поделиться и не только в плане кода.

Доклад принят в программу конференции

This has been mitigated with tooling and education, but for the most part it requires human action and decision. While most codebases have somewhere between tens and thousands of Python modules, some companies may maintain a codebase with millions of modules. This presentation covers techniques and tooling that Google created to enable the developers to scope their migration needs, plan the work required, execute effectively at scale and collaborate across teams/dependencies.

https://ep2020.europython.eu/talks/migrating-codebases-millions-modules-python-2-python-3/

Доклад принят в программу конференции

Вместе с автором обсудим книгу "Test-Driven-Development in Python".
Что может быть круче?

Он расскажет об основных идеях для тех, кто ее еще не читал.
Ответит на вопросы тех, кто уже прочитал.

Доклад принят в программу конференции

Карантин и вынужденная удаленная работа навсегда разделили общество: одни полюбили удаленку, другие возненавидели ее.

Мы собрали очень разных людей с очень разными мнениями по поводу прошедших событий.
Попросим их поделиться своими историями и мыслями.

А слушателей попросим рассказать свои, задать вопросы и поделиться болью!

Доклад принят в программу конференции

Есть много аспектов, которые делают разработку ПО непростой задачей. Сложность самой предметной области — один из них.

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

В этом букворкинге мы обсуждаем популярную книгу Эрика Эванса "Предметно-ориентированное проектирование" ("Domain-driven design by Eric Evans").

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

https://wiki.slavabezborodov.com/books/domain-driven-design

Доклад принят в программу конференции

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

Наш Круглый стол — это не типичные "истории успеха", а возможность задать провокационные вопросы в прямом эфире и возможность услышать разные, возможно, противоречивые ответы от джунов с разным бэкграундом и разными взглядами на разработку.

Доклад принят в программу конференции

Достаточно часто длительные операции, которые нужно выполнить после действий пользователя, а также периодические задачи выполняются отложено с использованием очередей задач. Одна из самых популярных очередей задач для Python – Celery.

В докладе расскажу, почему мы изначально долгое время использовали MongoDB в качестве брокера Celery, какие недостатки вынудили нас искать альтернативу, какие альтернативы мы рассматривали и что выбрали в итоге (спойлер – YMQ https://cloud.yandex.ru/services/message-queue).

Также освещу процесс перехода, с какими трудностями столкнулись, что пришлось изменить в коде проектов и какой эффект в результате получили.

Доклад принят в программу конференции

Мы нередко говорим, что айтишник может работать везде.
Мы часто говорим про переезд куда-либо.

Но как часто мы говорим про Нижний Новгород в данном ключе?
Узнаем, как живут питонисты в Нижнем!
Из самых первых уст.

Доклад принят в программу конференции

Вы узнаете всё о PyLadies Kazan: как возникло и развивалось первое женское казанское IT-сообщество.

В формате дискуссии обсудим, для чего же нужны сообщества женщин в IT-сфере, как их развивать и какое будущее нас ждёт?

Доклад принят в программу конференции

Какую репутацию имеет Python вне нашего информационного пузыря?
Так ли прост Python, как утверждают Python-программисты?

Мы пригласили трех замечательных людей, чтобы узнать их мнение со стороны. Хоть представлять их лишний раз и не нужно, но все же:
- Андрей Ситник (Frontend), ведущий фронтендер в Злых марсианах, автор Автопрефиксера и PostCSS.
- Барух Садогурский (Java / DevOps), Head of DevOps Advocacy и Developer Advocate в компании JFrog.
- Евгений Кателла, руководит мобильной разработкой в Яндекс.Еде.

Спросим их мнение про Python, его сферу применимости, основные плюсы и минусы.
А еще попросим порешать их дурацкие задачки с Рython-junior-собеседований, не зная языка, чтобы узнать: действительно ли так легко читать и понимать код на Питоне?

Будет познавательно и весело!

Доклад принят в программу конференции

Когда ты приходишь после многих лет разработки на джаве в мир пайтона, у тебя возникает странный диссонанс. Богатейший язык! Шикарное комьюнити! Батарейки не просто включены, их ещё и мешок в нагрузку дают! Но при этом: эммм, а про разделение ответственности тут слышали вообще? А что с экосистемой? Почему никто не думает о безопасности? Почему столько действий надо делать руками?

Поговорим о том, что и где пошло не так, как комьюнити с этим борется и что ещё предстоит делать.

Доклад принят в программу конференции

Пора наконец выяснить, какой язык лучше: Python или Go! Да начнется священная битва!

Мы позвали все российское Go-сообщество, чтобы они поддержали свой язык. А мы должны поддержать наш любимый Питон в схватке.

В качестве дуэлянтов предстанут:
- Филлип Кулин (usher2.club) будет отстаивать честь Go,
- Александр Боргардт будет защищать Python.

Формат предполагает, что спор будет не только академический, но и довольно жесткий: с объективной критикой и яркими чувствами.

Слушатели могут задавать свои неудобные вопросы и поддерживать своих. В реальном времени мы показываем распределение голосов: кто выбрал Go, а кто Python. Итоговую статистику сможете смело предъявлять оппонентам в вечных спорах о языках.

Доклад принят в программу конференции

Многие знакомы с методологией Test-Driven Development и, в частности, Behavior-Driven Development. Нетрудно объяснить, почему данный подход к разработке и обеспечению качества ПО все больше набирает популярность: это своего рода прозрачное соответствие между бизнес-требованиями и технической реализацией продукта.

В данном докладе на примере проекта по разработке чат-бота будет наглядно продемонстрировано, что такое BDD и Gherkin, откуда возникает потребность в поведенческом тестировании на проекте и как выглядит имплементация предметно-ориентированного языка для тестирования базирующейся на диалогах системы.

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

По завершению основной части доклада, стартует викторина со специально подготовленным телеграм-ботом. В ходе викторины участникам конференции необходимо будет показать свои знания о Python, BDD и связанных с тестированием вещах, освещенных в докладе. А одним из испытаний будет являться написание тестового сценария для спецификации поведения чат-бота.

Доклад принят в программу конференции

На встрече нашего клуба мы сформируем собственный рейтинг книг о Python на основе личного опыта и обсуждения с коллегами. Топ с подборкой можно будет унести с собой после встречи.

Доклад принят в программу конференции

Как часто вы начинали свой длинный монолог со слов "Да как же я устал от ..."?
Наверняка часто.

В нашей профессии есть много интересного и увлекательного, веселого и познавательного.
Но есть и куча всего, что дико БЕСИТ.

Предлагаем излить друг другу наши проблемы, обсудить и найти решение (или просто поныть).

Соберемся в специальном месте, разобьемся на группки (что бесит именно вас: менеджеры? медленный gc? кубернейтс? javascript?) и под присмотром и при участии членов ПК и Амбассадора Выгорания Владислава Козули поноем вдоволь!

Доклад принят в программу конференции

Поиск самого лучшего "первого" языка программирования идет уже много десятилетий.
Ответа нет и не будет.

Но ценность в самом обсуждении: оно позволяет выявить сильные и слабые стороны каждого языка. Что полезно и для студентов, и для преподавателей.

Доклад принят в программу конференции

Всё чаще перед инженерами, работающими с Big Data, стоит задача масштабирования ML-моделей, что зачастую заключается в адаптации некоторого Data Science-решения к работе в распределённой среде.

В докладе представлены подходы к решению задачи замены реализаций алгоритмов машинного обучения на распределённые аналоги. В частности, миграция со Scikit-learn на аналоги из библиотеки распределённого машинного обучения MLlib (PySpark). Рассматриваются модели для анализа семантики естественных языков TF-IDF и классические классификаторы (Наивный Байесовский и SVM).

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

Key Words: Data Science, Big Data, Python, Spark, PySpark, MLlib, TF-IDF, Scikit-learn, SVC, NaiveBayes

Доклад принят в программу конференции

I thought in this presentation flow, the slides are following it:

* Show the presentation idea: Divide the code, Conquer maintainability
* Flask code examples: Flaks minimal application, Flask + DB, Flask + DB + Marshmallow.
Highlighting code pieces to show what that piece represents (Business Logic, DB interaction, Request validation)
* A thought: "If you do not choose the application architecture other people will choose to you"
Showing a known example, Django
* Little talk about what is "Clean Architecture" proposed by Uncle Bob.
A quotation from his blog, "to incentive" more pragmatism, basically he tells to us not to get attached by his Clean Architecture schema
* Shows the Frameworks/Libraries we'll use: Flask, punq, SQLAlchemy, Pydantic, pytest, mypy, Poetry
* Show the folder structure
* CODE TIME: Here comes the practical example, I can make a repository with the step-by-step (steps separated by branch)
Maybe won't is necessary the branch separation. I don't have any business idea to make the example, ideas are welcome!
* References

I want to introduce returns using the Result container, but maybe will be too information or I can just explain the basic idea of it

Доклад принят в программу конференции

Пора наконец выяснить, какой язык лучше: Python или PHP! Да начнется священная битва!

Мы позвали все российское PHP-сообщество, чтобы они поддержали свой язык. А мы должны поддержать наш любимый Питон в схватке.

В качестве дуэлянтов предстанут:
- Александр Макаров (Yii) будет отстаивать честь PHP,
- Алексей Фирсов (aiopg) будет защищать Python.

Формат предполагает, что спор будет не только академический, но и довольно жесткий: с объективной критикой и яркими чувствами.

Слушатели могут задавать свои неудобные вопросы и поддерживать своих. В реальном времени мы показываем распределение голосов: кто выбрал PHP, а кто Python. Итоговую статистику сможете смело предъявлять оппонентам в вечных спорах о языках.

Доклад принят в программу конференции

Мастер-классы

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

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

Доклад принят в программу конференции

Питонисты люди с чувством юмора и хорошей долей самоиронии.
Но шутить мы будем не над собой, а над языком Python.
Доставайте из загашников самые веселые и острые шуточки!

Сыграем в игру Смехлыст на тему питона и программирования.
Вы сможете как пошутить сами, так и оценить других.

Доклад принят в программу конференции

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

План выступления:
1. MoscowPython — с чего началось и к чему пришли на данный момент.
2. Первые участники сообщества — где их взять?
3. Инструменты сообщества:
- соц. сети и мессенджеры;
- рассылки;
- ивент-платформы;
- платформы для материалов.
4. Работа с партнёрами.
5. Форматы мероприятий.
6. Пошаговый план организации события на примере митапа MoscowPython.
7. Жизнь сообщества между мероприятиями.
8. Как не выгорать организатору сообщества?

Доклад принят в программу конференции

Python Breakfast Moscow — это встречи с коллегами-питоняшками за чашкой утреннего кофе и разговоры про насущные проблемы — особенности торговли роботами на биржах, путешествия по горам Кавказа, статистическую значимость эволюции, блеск и нищету хакатонов и почему всё усредняется. Круглые столы, горячие дискуссии и никаких выступлений — просто поговорить перед работой и настроиться на новый день.

Судя по meetup.com — нас 576 человек. В реальности в 9 утра нас обычно собирается 12-20 — вполне уютная компания для обсуждения самых разных вещей.

Идея провести первый завтрак появилась в час ночи 5 апреля 2019 года, когда Вова Протасов с Димой Богером накануне одной из конференций Онтико в чатике деврелов обсуждали, почему в Питере есть Python-завтраки, а в Москве нет. И уже 23 апреля 2019 года мы собрались на первый Python-завтрак. Так и понеслось.

Лидеры — Владимир Протасов, Екатерина Фирсова, Александр Шорин; также активно в организации принимали участие Николай Марков, Антон Брызгалов, Алексей Пирогов, Юлия Реушенова, Александр Зеленяк и многие члены московского Python-коммьюнити.

Доклад принят в программу конференции

Сообщество Scalability Camp проведет серию Круглых столов, где мы рассмотрим архитектуры некоторых сервисов и часто принимаемые при их строительстве решения, плохие и хорошие.

В программе нашего разбора архитектур:
1. Какую базу данных использовать для построения event-based сиcтемы?
2. Стоит ли использовать p2p в системах доставки контента?
3. Возможна ли потоковая обработка изображений с применением Deep Learning?

И кое-что еще!

Доклад принят в программу конференции

Создаётся сессия общения с HR-специалистом, в рамках которой он/она общается с участником голосом, выслушивает проблемы и даёт советы.

Доклад принят в программу конференции
Доклад принят в программу конференции

Фановый турнир для тех, кто программирует на Python, от активистов комьюнити Хекслета. Турнир будет представлен в виде двух игр:
▪ individual — игра на выбывание,
▪ team — стенка на стенку.

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

Все игры можно увидеть в режиме лайвкодинга на сайте платформы. Ссылки на игры будут представлены в slack-комьюнити Хекслета https://slack-ru.hexlet.io/ в момент старта турнира. Параллельно пройдёт twitch-трансляция игры с комментариями Хекслета.

https://codebattle.hexlet.io/ — open source-проект, созданный участниками комьюнити Хекслета. Решайте задачи по программированию, прокачивайте навыки и рейтинг.

Доклад принят в программу конференции

Программисты часто задаются вопросом: "Как продать менеджменту новый фреймворк / технологию / практику?". Обычно программисты спрашивают других программистов. А уж те насоветуют!

Для менеджеров наши потуги "переписать все на Rust" выглядят как какая-то "техническая фигня", которая будет стоить кучу времени, денег и нервов. И, конечно, часто в результате будет отказ.

Поэтому мы решили пригласить технических менеджеров, чтобы они поделились своим опытом: как продавать менеджменту технологии, чтобы понимать и слышать друг друга.

Формат будет такой:
- Один из 4 гостей по очереди получает один из вопросов, присланных нашими зрителями.
- Гость высказывает свой вариант решения проблемы.
- Другие могут возразить или согласиться (троллинг горячо приветствуется!).
- Зрители получают ценный опыт ведения технических переговоров и голосуют, кто был наиболее убедителен.

Будет полезно! И весело, конечно.

Доклад принят в программу конференции

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

Доклад принят в программу конференции

Несколько профессиональных HR-специалистов обсуждают обезличенные резюме, делясь впечатлениями, мыслями и советами.

Доклад принят в программу конференции

В ходе этого мастер-класса мы немного отвлечемся от бизнес-задач и погрузимся в мир технологического искусства. От вас потребуется 10-20 ваших фотографий, из которых мы создадим так называемый "когнитивный портрет". Для этого мы используем Microsoft Cognitive Services Face API — предобученную модель компьютерного зрения, доступную в виде веб-сервиса в облаке Microsoft Azure.

Помимо практической части, я коротко расскажу о разных способах запуска Python-кода в облаке (от Jupyter Notebooks и Visual Studio Codespaces до Azure Functions) и об архитектуре одного виртуального музейного экспоната...

В ходе доклада мы также познакомимся с библиотекой mPyPl (http://http://soshnikov.com/mPyPl/), которая позволяет использовать функциональный подход и синтаксис пайплайнов для создания ленивых конвейеров обработки данных.

Доклад принят в программу конференции

Рассмотрим, какие паттерны используются в Domain-Driven Design. Выясним, какие у них плюсы в сравнении с обычным подходом, попробуем реализовать в Django.

Мы будем использовать Агрегат, Outbox Pattern и другие фундаментальные паттерны для построения современных распределенных бизнес-приложений. Коснемся таких подходов как EventSourcing и CQRS.

Доклад принят в программу конференции

Участники проходят собеседования с профессионалами индустрии в области HR и техническими руководителями департаментов.

Доклад принят в программу конференции

Традиционно разработку на питоне принято хаять за GIL, плохую многопоточность и неудобную асинхронность. Как можно без боли добавить себе в проект очереди задач, выполнение в несколько потоков и что вообще есть для параллельного/"многопоточного" выполнения, если вас мутит от 'async def' и вам лень разбираться, в чём отличия между ProcessPoolExecutor и ThreadPoolExecutor.

Я рассмотрю пример обработки долгих пользовательских запросов (или, скорее, долгих серверных ответов) на примере библиотеки rq и сервиса отправки писем. Разберём необходимую "матчасть" и немного посмотрим в тему "а как там это всё делать в стандартной библиотеке без этих внешних пакетов".

Доклад принят в программу конференции

Рефакторинг — очень сложная штука.
Сколько людей — столько и мнений относительно красивости кода.

Так почему же не сделать битву рефакторинга обучения для и на потеху публике?

Формат будет такой:
- Один из трех гостей по очереди получает один из примеров плохого кода, присланных нашими зрителями.
- Гость высказывает свой вариант решения проблемы, показывает исправленный код.
- Другие могут возразить или согласиться (троллинг горячо приветствуется!).
- Зрители получают ценный опыт рефакторинга, кто был наиболее убедителен и изящен.

Доклад принят в программу конференции

FailPy

Я расскажу историю своего профессионального пути. Вместе мы пройдем путь от "кровавого энтерпрайза", тимлида галерной разработки, удаленщика и последующей неудачной попытки фриланса.

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

Доклад принят в программу конференции