June 24-25, the seventh Russian conference for python-programmers PYCON RUSSIA 2019 will take place 95 km from Moscow.
Already in the program: Raymond hettinger (Python core developer, USA), Michael Foord (Python core developer, England), Travis oliphant (author SciPy, Numpy, Anaconda, USA), Antonio Cuni (PyPy core developer, Italy), Grigory Bakunov (Yandex) Andrey Vlasovskikh (JetBrains), Kirill Borisov (Booking.com), Vadim Pushtaev (Mail.Ru Group), Alexander Hayorov (Chainstack), Ivan Tsyganov (Positive Technologies), Alexey Kuzmin (DomKlik), Zlata Obukhovskaya (evangelist Moscow Python), Vasily Litvinov (Intel). And this is only a preliminary program.
Under the cut – the details of the program.
If you don’t know what PyConRu is, here’s a little video about last year’s conference
We can not wait to tell who will speak this year. Negotiations are still under way with some speakers about topics, so someone has them, someone will appear soon.
Our first headliner – Raymond hettinger (Santa Clara, USA), Python core developer since 2001, author and maintainer of many parts of the language, consultant, trainer. For his exceptional contribution to the development of the Python community, he received an award from the Python Software Foundation. Thanks to this person, generator expressions, local optimization, collections and the itertools module, LRU caching and some of the built-in functions that we use every day, for example, any, all, enumerate, reversed, zip and sorted are as they are.
In 2016, Raymond gave us a chic talk "Thinking about Concurrency". Be sure to check out this report if not already.
Michael Foord (Northampton, UK) – Python core developer, creator of the unittest2 libraries and the mock, author of the book IronPython in Action, Python-trainer, coach. Michael's specializations are python training and comprehensive automated system testing. Permanent speaker at PyCon, EuroPython and PyCon UK.
Travis oliphant – the author of the SciPy, NumPy and Numba libraries. The founder and director of Anaconda is a free open source Python and R distribution, which is used by more than 13 million users. The founder of NumFOCUS is the world-famous open source software community, the CEO at Quansight.
Antonio Cuni, core developer in PyPy
How PyPy can help for high-performance computing
Antonio Cuni (Genoa, Italy) – PyPy core developer, Ph.D. and Master in Computer Science, author and maintainer of many open source projects, EuroPython speaker, PyCon Italy, PyCon UK, PyCon Poland and PyCon South Africa.
Gregory Bakunov, known by the nickname Bobuk – director of technology distribution for Yandex. Programmer, successful entrepreneur and frequent participant of many conferences related to Internet technologies. One of the creators and permanent presenter of the podcast Radio-T.
Andrey Vlasov, JetBrains
What will happen in Python 3.8 and what will not
What will be new in Python 3.8? You can learn about this yourself from the excellent document What's New in Python 3.8, which does not require retelling. The TechChild PyCharm and Maintainer IdeaVim in JetBrains Andrei Vlasovskiy will talk about what is described there only briefly or not at all: why do these new features appear, what is the history of their appearance, what is already being discussed and developed, but not included in Python 3.8? Andrey will share the information he learned on PyCon US 2019 from reports and communication with Python core developers.
Kirill Borisov, Booking.com
Too smart apartment: IoT + Python + everything else
Kirill decided to make a simple system for collecting (and submitting) meter / sensor readings, using Python and all the most fashionable things to the maximum: asynchrony, cloud computing, a telegram bot and MicroPython (IoT sake). What came out of this, Cyril will tell on PyConRu.
Alexander Hayorov, Chainstack
Goodbye Virtual Environments?
Python provides the developer with a great deal of freedom in dependency management, unlike other programming languages. Why did this happen and how can this be tied to the principles of Zen? Should there be only one tool for managing dependencies? In recent years, Pipenv and Poetry have gained considerable popularity. Also published PEP 517 (assembly isolation), and what is prophesied in it? Development Lead in Chainstack Alexander Hayorov (Singapore) will try to answer all these questions and tell you what to prepare for, given DevOps practices and their own experience.
Sergey Borisov, DomKlik
Master class "Testing asynchronous applications"
Everyone knows about the importance of testing. Sergey Borisov, the technical manager of the Import team at DomKlik, will show at the master class how they test asynchronous applications along with the base and other infrastructure services using Docker and pytest. During the master class, the participants together with the leader will pack a basic web application in Docker and cover it with tests from head to toe 🙂
Ivan Tsyganov, Positive Technologies
(Without) dangerous dependencies
For the past seven years, the threat of “Using components with known vulnerabilities” has been ranked ninth in the OWASP TOP-10 rating. Lead programmer at Positive Technologies Ivan Tsyganov will tell you what the consequences may be with the use of irrelevant versions of libraries and the interpreter. Ivan will show exactly how an attacker can take advantage of known vulnerabilities in the Django and Django Rest Framework, the SQLAlchemy, lxml, PyYAML and aiohttp-session libraries and in the Python 2 and Python 3 interpreters.
Vasily Litvinov, Intel
Profiling Python and Pandas, go fast!
Basil will provide a brief overview of existing Python profilers with a focus on mixed-mode tools (capable of showing both Python and native functions at the same time). Such tools may be of particular interest to library developers, but will also be useful to those who use these libraries. Both closed and open source solutions will be presented. The use will be illustrated by the example of research and acceleration of individual parts of Pandas.
Alexey Kuzmin, DomKlik
Search and optimize bottlenecks in Python
Alexey will share his life hacks and tools that will save you time and nerve cells when debugging. As a result, you should have an understanding – which places in the program usually slow down, what tools can this be confirmed or refuted, and how to fix these places so that there are no more problems.
Anton Bragin, JetBrains
Jupyter Notebooks – There is a Better Way
Anton will analyze the most acute problems that arise when working with Jupyter, and consider the approaches and tools to eliminate these problems or reduce their severity. The report will be interesting both to fans of Jupyter, who are ready to look at the concept of laptops for scientific computing from a critical angle, as well as to his haters who don’t mind giving Jupyter a second chance, as well as to anyone who is interested in analyzing and presenting data using Python.
Zlata Obukhovskaya, Nvidia
Structured Concurrency. What is wrong with asynchrony in python?
At PyCon 2018, Nathaniel Smith spoke about the approach to asynchrony, which he implemented in the Trio library. This approach, called structured concurrency, involves building the execution context of competitive threads. In this context, it is easier to solve the problems of freeing up resources, catching mistakes and canceling associated coruntine.
The idea was picked up by developers from other languages (Kotlin, C, Swift) and gave rise to a lot of questions:
– And if instead of a list of equivalent competitive flows, we now have a graph?
– How to safely transfer data between contexts?
– Who will monitor the life cycle of such graphs?
– How to effectively perform a graph of competitive flows on a single core? And on a few?
– How to achieve determinism of execution?
Meanwhile, these issues were somehow solved in other languages and technologies.
Evangelist of the Moscow Python community Zlata Obukhovskaya will tell you how much the approaches from other languages are applicable to the modern python.
Anton Patrushev, Spherical
Python & Rust: fun together
Rust is a hot topic in today's development world. Anton will briefly talk about this relatively new language, about the advantages it offers to the developer. The report is built around the example of integrating Rust into an existing Python application, which demonstrates the ease and convenience of using extensions written in Rust and the readiness of the Python-Rust bundle to use in your Python projects.
Alexander Artemenko, Yandex
Macros for Python
This is a report on what tools can be used to complement the syntax of Python, adding the necessary features. Alexander will look at how such libraries as pytest, macropy, patterns are arranged and what they do in order to achieve such interesting results. It will also show an example of code generation using macros in HyLang, a lisp-like language running on top of Python.
Vadim Pushtaev, Mail.Ru
Development of asynchronous daemons
Timlid in Mail.Ru Group Search Vadim Pushtaev will tell about how they develop multiprocess services with asyncio inside. Mention the complexity of interprocess communication, the use of shared memory, interaction with queues and storage, and much more interesting.
Rishat Ibragimov, Yandex
Quantum programming in Python: learning from examples
Many have heard of quantum computers and the fantastic possibilities they open up. But not many people know that technologies have reached such a level that today anyone can write a simple Python program and run it on a real quantum computer. Rishat will analyze examples with the code for the basis of quantum computing, teach you how to run programs on a local simulator and a remote quantum computer.
Nikita Grishko, Flo Health Inc
Evolution of dependency management
If you are writing in Python, then you use virtual environments and pip to install packages into them. Probably you have requirements.txt in the project with all your dependencies, or even two, for example requirements-dev.txt. But what if this good old approach has problems and that there is more than one tool trying to solve them? Nikita will talk about the existing problems of dependency management and see how the developers tried and are trying to solve them, go through tools like pip-tools, pipenv, flit, poetry and try to find out if they are worth it for you to pay attention to and bring to their projects, or is it just another train of madness that is worth going through.
Artem Korolev, Timur Kadyrov, Dentsu Aegis Russia
Creation of industrial datasets for deep learning tasks
The guys will talk about the topic, which you usually don’t look at Coursera and you don’t read about Medium: where do the pictures come from for marking dataset; whether it is worthwhile to mark them up with your own hands or immediately give them to contractors and to the exchange; how many days it takes to collect customer-specific data; how to put TK on the markup, etc., etc.
The report is designed for those people who think that deep learning is the lot of big companies with big data and huge departments of data science. The guys will tell you how to approach the recognition of images from scratch and return to the client with the result in a couple of weeks, without using the vision API – Google, AWS or Azure.
Dmitry Orlov, Fooddil
Asynchronous RabbitMQ driver from author
When Dmitry started writing the Open Source library for working with rabbitmq, using asyncio, he wanted to make a simple and intuitive interface for everyone. It seems to work, but not immediately. This story is about how he had to get into the driver (pika), edit the bugs there and write his driver, and how not to break the current public API and “harm” the users. What is missing in asyncio to write network libraries without pain. Disadvantages of network protocols, in particular, AMQP 0.9.
Nikita Levonovich, Quest
Micropython for arcade games and quests in reality
A modern questroom is about 10 electronic computing devices communicating over a network (MQTT). Most of these ECUs are microcontrollers (ESP32) that control peripheral devices: mp3 players, relays, and various sensors and use input / output devices: displays, diodes, buttons, keyboards, and many others. However, this was not always the case, a couple of years ago there were much fewer devices in quests, the Arduino was the main computing module, and communication between different pairs of devices could occur using different protocols. The report will be devoted to the formation of the architecture used by the Quest team, to solve similar problems in Micropython, in relation to popular microcontrollers from Espressif Systems.
Nikolay Markov, Aligned Research
Workshop "We pack a pit project from A to Z"
Many developers are not particularly soared with the design of the code and wrapping it in packages, especially with the advent of containers. And in general, little is clear in these packages – there are some egg, and whl, and pipfile … At the workshop, participants will talk about the correct design of the Python project (from command line arguments to documentation), go through the classic package building process with their hands, look what's what, and figure out what the ecosystem of python packages looks like in the modern world.
Artem Malyshev, drylabs.io
Domain driven design tools
Difficulty is inherent and inherent. From the report you will learn how to organize the first and minimize the second. Artem will talk about how to build your product around the problem to be solved, and not the framework used. You will learn in which place it is better to enter typing and dataclasses, where contractual programming and pydantic are useful to you. See the libraries from the dry-python project. And, of course, is not without tests. Only practice. No UML layouts and abstract facade factories.
The conference program is updated, the most relevant – always on the site. The final program will be ready by June 1st.
All videos of last year's reports can be viewed on our YouTube channel.
Now a ticket for double occupancy is 20 000 rubles, with a single – 28 000 rubles. Since May 20 – more expensive.
Recall that the ticket price includes:
• participation in the conference (2 days);
• accommodation in a four-star hotel "Cronwell Yahonty Tarusa";
• lunch and dinner on June 24, breakfast and lunch on June 25;
• all coffee breaks;
• buses from Annino metro station to the conference venue and back on 24 and 25 June.
Registration and details on the conference website.
We will be very happy to see you at PyConRu!