At Moscow Python Conf ++, come talk to the language developers

We built-built, and finally built: the Moscow Python Conf ++ schedule has been compiled, verified, double-checked and published . It’s not that the work of the Program Committee ended there (two months before the conference, well, well), but 10 months was clearly spent not in vain, and I look forward to the result, laying down everything possible for the developers to communicate with each other.

Now I’ll tell you what the conference program turned out to be, and we simply won’t have any choice. On the site in the center of Moscow there will be: 3 streams of reports, a stream of workshops and meetings, 4 Core developers (I still don’t know whether Python should be considered a Python developer by Pytest and Hypothesis), 6 foreign speakers with non-trivial experience, reports from Microsoft, Wargaming, JetBrains, Parallels, EPAM, Booking.com, Tinkoff and other equally interesting companies. Not a single pass-through topic, I checked. Each speaker is interesting in his own way, and each topic will definitely find those who have something to discuss with the speaker. In this article I will tell you as briefly as possible about all our guests: the emphasis is on speakers, you will orient yourself on topics.



English speaking reports


We listen to Core developers and a few other cool specialists in English - we won’t have a translation. We tried, it turns out badly. Therefore, we hope that everyone will cope with professional information, but we will help you with questions. The reports will go in three parallel streams - if you do not want English-language reports, then avoid the third room until 17:00.

Developing and deploying Python for secured environments


Kushal Das - Core developer of CPython, an active participant in the Tor Project and a member of the PSF board of directors - at our conference will talk about how to safely develop and deploy Python code. A distinctive feature of Kushal’s speeches is that he regularly publishes “secret” ways to break Python code and, in contrast, shows how to write code so that the NSA cannot crack it. I am sure that this speaker has something to ask.

Sufficiently advanced testing


Zac Hatfield-Dodds is a core developer of the unit test library and Pytest maintainer. During the report, Zack will share his opinion on modern testing and discuss their questions with the guests of the conference.

Introduction to low-level profiling and tracing


Christian Heimes is a Core developer of CPython, a member of the Python security team and the Python Software Foundation, working for Red Hat and specializes in profiling and speeding up Python code. Therefore, in Moscow Python Conf ++ Christian will tell you how to understand why the code slows down and what to do with it.

This report will complement perfectly the workshop of Alexei Romanov from Wargaming, in the framework of which we will see what this huge company does to speed up its code and discuss how it can help in the code that you work with.

Mastering a data pipeline with Python


Robson Luis Monteiro Junior, firstly, an active participant in the global Python community, has long and regularly speaks at various meetings and conferences, and secondly, an expert in the preparation of data for ML from Microsoft. As a result of such a combo, we are waiting for a report on the techniques and pitfalls of building data processing pipelines in Python, distracting the speaker's many years of experience at Microsoft. Robson will compare PySpark, Dask, Pandas, Airflow and Apache Arrow and share his own recipes for solving application problems.

Cerberus or Data Validation for Humans


Nicola Iarocci is the author of a large number of popular libraries and the creator of the Eve REST framework. But you can talk with him about the web on the sidelines, and Nicola's report will devote to another development: the framework for validating Cerberus data. Sooner or later, every project is faced with data validation issues, so pay close attention to this report in the conference schedule.

The platform is dead, long live the platform


Luka Kladaric will tell you how to drag a huge Python project into the cloud. The task is urgent - it will be interesting to hear about the stages and results of its successful solution.



Machine Learning and Data Processing


What a Python conference without machine learning. Of course, we will not bypass this topic at all, and the hottest topics at the beginning of 2020 are the preparation of data for training and interaction with Data Scientists who write strange things.

Functional style data processing with mPyPl


Dmitry Soshnikov has been with Microsoft for 13 years, ten of which in the role of technology evangelist. As a technical specialist in machine learning, Dmitry will talk about Microsoft's achievements in this direction and present the open source library mPyPl. It simplifies data processing using Python through functional data pipelines. In the report, Dmitry will show examples of using this approach for classifying and detecting images, recognizing events on video, rendering videos, drawing cognitive portraits, etc.

Dmitry will also conduct a workshop on “ Creating a portrait in the Science Art genre using cognitive services and creativity.”". From the name it is clear that this is clearly the category "broaden horizons." But the charm is that it is a practical workshop, that is, in two hours you yourself (using affine transformations and Microsoft cognitive services) will try to create a work of digital art and at the same time pump it into image processing.

From Scikit-learn To PySpark MLlib


Machine learning is a hot topic, and Andrei Gavrilov from EPAM will make another report in this direction. In this case, we will talk about how to adapt the Data Science solution to work in a distributed environment, in particular, migrate from Scikit-learn to analogues from MLlib (PySpark). Andrey will show what difficulties arise when you transfer an existing pipeline to the PySpark rails, and what can help to cope with them - from the architecture of the solution to the features of tuning hyperparameters.

All JupyterHub features for over 20 students or R&D teams


Peter Ermakov is engaged in machine learning at Lamoda and at the same time teaches Data Sceince at his own school DataGym. Peter faced the non-trivial task of setting up a JupyterHub for a large Data Science team and knows how to organize work on shared servers. He will share recommendations and ready-made recipes with the guests of the conference, and even if your team consists of only one person, you will still take out new tricks from this report .



Refactoring and working with legacy


2020 is the year of winning Python 3. Well, or we really want to believe it. For many, the end of support for Python 2 means the inevitable (approximately, like snow this winter) moving and the accompanying refactoring of legacy code. At Moscow Python Conf ++, we will figure out how to sell reforiting to a business, how to do it technically, and, probably, in principle, we’ll be holistic about the placement of commas in the phrase “Everything cannot be rewritten to be refactored.

How to decide on Python3 in a project that is over 10 years old and persuade the rest


First, Levon Avakyan will help us look at the problem of switching Python 2 to Python 3 from a business perspective. Levon will talk about the discussion that arose in the World Of Tanks project on this subject, which arguments for and against were expressed and what decision they came up with.

The topic "How to sell the business the transition from Python 2 to Python 3" is now more relevant than ever, and Levon's report is one of the few reports that I will definitely attend at the conference, despite the fact that I am a curator and we will have preparatory discussions and runs . Spoiler: there is intrigue.

From two to three in 72 hours


Last year, Kirill Borisov talked about working with legacy code and attempts to implement tests in it. This time, Cyril will talk about the technical side of refactoring code from Python 2 to Python 3. What could be more relevant, and even if it is supported by the experience of such a large company as Booking.com.

How to survive if you got a legacy whose developer merged


Vladimir Filonov, one of the organizers of the MoscowPython community, over the years of work has pumped up superpower to understand someone else's legacy code. That is, in a few days, Vladimir begins to orient himself in a legacy project better than his authors (who left many years ago). At the conference, Vladimir, firstly, will give step-by-step instructions on what to do if you got a legacy whose developer merged. Secondly, during the workshop, in practice, he will show how he does it. And judging by the trailer that Vladimir made, all this will be very high quality prepared and cool presented.

Refactoring Automation


Vladimir Protasov from Parallels is well known to participants in the Russian and not only Python community. At Moscow Python Conf ++, Vladimir will tell you what to do when the IDE does not cope with the task of refactoring, but running across the entire code base and making the same type of changes is impractical from the word “completely”. Especially for lazy programmers who do not like to perform repetitive tasks, it will be possible to see real-life examples of how to automate complex refactoring.



Backend, Celery, Kafka


This time we have only one report directly related to web development (which has the word Django in the title), but there are queues, message processing and, of course, async / await.

Multithreading and async / await: different approach, common problems


A report by Andrei Svetlov - Python Core Developer, asyncio developer and aiohttp author - will traditionally be dedicated to asynchrony. As a person starting with C ++, Andrei knows from his own experience that the problems of modern developers using the asynchronous approach are far from new. After digging a little deeper into the history of development, we will find out how similar problems were solved 10, 20 years ago, and try to understand how it is most convenient to deal with them now.

Static typing in Django


Maxim Kurnikov will talk about types for Django: what types of solutions for type checking exist in Python, what rakes you encountered while writing the django-stubs library, what are the prospects for the proposal to add types to the core language.

Apache Kafka Event Streaming Platform for Python developers


Victor Gamow is a co-author of the book “Enterprise Web Development” by O'Reilly, a well-known speaker and author of articles, and developer advocate at Confluent, a company that makes an event-based streaming platform based on Apache Kafka. We’ll talk about Kafka in Victor’s report : he will show how much more possibilities Apache Kafka can do than just messaging, analyze the main points of internal architecture and explain how Python developers can use Kafka to work with streaming data.

Choosing a broker for Celery


Celery is one of the most popular task queues, but Vladimir Kolyasinsky will not talk about working with the queues themselves, but about choosing a broker. In Yandex, MongoDB was used as a broker for a long time, but they encountered shortcomings and began to look for alternatives. What options were considered and why in the end came to YMQ (spoiler: no, not only because it was made in Yandex), the speaker will tell on the report .

Queues in Python: How to Make Celery Salad, Radishes, and Their Friends


And Celery will become one of the main characters of the metap Igor Mosyagin. At the meeting, Igor will consider processing long user queries using the rq, huey, and celery libraries as an example. He will introduce you to the current state of dask and tell you “how to do it all in the standard library”. Because sometimes it’s simply impossible to give the Scientists something complicated: paws and all that.

Python API Integration with Windows API


Vasily Pankov will share the horror story in the presentation of many modern developers and tell how Python lives in a bloody enterprise on Windows. Developing Python applications for companies that do not use Docker or WSL, but prefer MS Windows in its purest form has many, indeed many features. And Vasily will tell you how to interact with most of them. And do not think that you will never come across this. Sometimes such companies have a lot, well, just a lot of money for development. And Windows.



Python itself, evolution and use


Python has a large and vibrant community. As a result, new ideas penetrate the language all the time (sometimes - the walrus operator), new concepts appear, there is a struggle between packages and libraries. It is not necessary for a simple developer to keep track of all this, but for those who want to see further and know more, it will come in handy.

Dependency hell


The author of the DepHell library, Nikita Voronov, as you might guess, is well versed in the painful issue of dependency management for Python. We recently published a conversation with Nikita about what the matter is there, and from his report you will learn who wins the competition between Pipenv and Poetry and how to solve current problems when pip is not enough.

Types? Types ... Types!


Vitaly Bragilevsky is a member of the Haskell Standardization Committee, author of the book Haskell in Depth. His performance at Moscow Python Conf ++ will not do without comparing Python with Haskell: Vitaly will talk about working with types and how strong typing can be useful to us. It will be difficult, but interesting, especially for those Python developers who want new features for the targeted solution of specific tasks.

What Java robots dream about when looking at Python


Pasha Finkelstein will compare Python and Java to write business logic. Pasha had 10 years of Java development behind him, and during that time he had never met anything like the Djangian "thick models". In March, we will learn how such things are done in the world of business development, like in Python, why it seems strange and what solutions there are.

Metaprogramming in Python: the dream of generating unit tests from code


We invited Julia Volkova from GridDynamics to discuss the unusual in the testing world. Julia, having met with the next project with absolutely no tests, thought about what if it would be possible to automate the creation of a set of tests. What results on generating unit tests from the code turned out to be achieved, what lessons were learned as a result, and most importantly, what it gave, Julia will tell at the conference.

How we introduced Julia to where Python has always lived


Last year, the presentation of Gleb Ivashkevich about the possibilities of the Julia language received very high marks from the conference participants. The text version of the report that we recently published also aroused considerable interest. And in March, Gleb will continue the story and tell how flexible and quick in theory the language proved to be in practice.



Total 24 reports and 6 workshops / meetings. This is the core of the conference. But since our conference is “about talking,” the speeches of the speakers will provide food for thought and guide discussions. The rest will be done by networking, for which we do our best: discussion and expert zones, partner stands , meetings of local communities, an endless coffee break, afterparty and the overall atmosphere of a professional event.

We will write about the event-chips of the conference in a telegram , facebook , twitter , vkontakte , when we overcome the stage of proof of concept. And you can already go to the Moscow Python Conf ++ website and book a ticket until the price has finally risen.

All Articles