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

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

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

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

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

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

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

Доклады

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Язык Python, его эволюция и использование

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

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

- Андрей Ситник (Frontend), ведущий фронтендер в Злых марсианах, автор Автопрефиксера и PostCSS.
- Барух Садогурский (Java / DevOps), Head of DevOps Advocacy и Developer Advocate в компании JFrog
- Екатерина Петрова (Mobile), JetBrains, подкаст Podlodka, конференция AppsConf

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

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

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