Vorläufiges Programm für PyConRu-2019: zwei Python Core-Entwickler, Sprecher von Anaconda, Intel, JetBrains, Yandex

Hallo Habr!

Vom 24. bis 25. Juni findet 95 km von Moskau entfernt die siebte russische Konferenz für Python-Programmierer PYCON RUSSIA 2019 statt.

Bereits im Programm: Raymond Hettinger (Python-Kernentwickler, USA), Michael Foord (Python-Kernentwickler, England), Travis Oliphant (Autor von SciPy, NumPy, Anaconda, USA), Antonio Cuni (PyPy-Kernentwickler, Italien), Grigory Bakunov ( Yandex), Andrey Vlasovskikh (JetBrains), Kirill Borisov (Booking.com), Vadim Pushtaev (Mail.Ru Group), Alexander Khayorov (Chainstack), Ivan Tsyganov (Positive Technologies), Alexey Kuzmin (DomKlik), Zlata Obukhovskaya (Evangelist Moskau) Python), Vasily Litvinov (Intel). Und das ist nur ein vorläufiges Programm.

Unter dem Schnitt - Details des Programms.


Wenn Sie nicht wissen, was PyConRu ist, finden Sie hier ein kurzes Video zum Verlauf der Konferenz im letzten Jahr

Lautsprecher PyConRu-2019


Wir sind gespannt, wer dieses Jahr auftreten wird. Einige Redner verhandeln noch über Themen, also hat jemand sie, jemand wird bald erscheinen.

Unser erster Headliner war Raymond Hettinger (Santa Clara, USA), Python-Kernentwickler seit 2001, Autor und Betreuer vieler Teile der Sprache, Berater, Trainer. Für seinen außergewöhnlichen Beitrag zur Entwicklung der Python-Community erhielt er eine Auszeichnung von der Python Software Foundation. Dank dieser Person können Generatorausdrücke, lokale Optimierung, itertools-Sammlungen und -Module, LRU-Caching und einige integrierte Funktionen, die wir jeden Tag verwenden, zum Beispiel alle, alle aufzählen, umkehren, komprimieren und sortieren - so wie sie sind.

Im Jahr 2016 gab uns Raymond einen schicken Bericht „Thinking about Concurrency“ . Lesen Sie diesen Bericht, falls noch nicht geschehen.

Michael Foord (Northampton, UK) - Python-Kernentwickler, Entwickler von unittest2 und der Scheinbibliotheken, Autor von IronPython in Action, Python-Trainer, Coach. Michael ist spezialisiert auf Python-Training und umfassende automatisierte Systemtests. Regelmäßiger Redner bei PyCon, EuroPython und PyCon UK.

Travis Oliphant ist der Autor der Bibliotheken SciPy, NumPy und Numba. Gründer und Direktor von Anaconda, einer kostenlosen Open-Source-Distribution für Python und R, die von mehr als 13 Millionen Benutzern verwendet wird. Gründer von NumFOCUS, der weltberühmten Open-Source-Software-Community, CEO bei Quansight.

Antonio Cuni, Kernentwickler bei PyPy
Wie PyPy beim Hochleistungsrechnen helfen kann
Antonio Cuni (Genua, Italien) - PyPy-Kernentwickler, Ph.D.-Inhaber und Master in Informatik, Autor und Betreuer vieler Open-Source-Projekte, Sprecher von EuroPython, PyCon Italien, PyCon Großbritannien, PyCon Polen und PyCon Südafrika.

Grigory Bakunov, bekannt unter dem Spitznamen Bobuk, ist Yandex 'Technologiedistributionsdirektor. Ein beliebter Programmierer, ein erfolgreicher Unternehmer und ein häufiger Teilnehmer an vielen Konferenzen im Zusammenhang mit Internet-Technologien. Einer der Schöpfer und ständigen Moderator des Radio-T-Podcasts.

Andrey Vlasovskikh, JetBrains
Was wird in Python 3.8 passieren und was nicht?
Was ist neu in Python 3.8? Sie können dies selbst anhand des hervorragenden Dokuments " Was ist neu in Python 3.8" lernen, für das kein Nacherzählen erforderlich ist. Tehlid PyCharm und IdeaVim-Betreuer bei JetBrains Andrei Vlasovskikh werden nur kurz oder gar nicht darüber sprechen, was dort beschrieben wird: Warum werden diese neuen Funktionen erscheinen, was ist die Geschichte ihres Auftretens, die bereits diskutiert und entwickelt wird, aber nicht in Python 3.8 enthalten sein wird? Andrew wird die Informationen, die er auf der PyCon US 2019 aus Berichten und Gesprächen mit Python-Kernentwicklern gelernt hat, weitergeben.

Kirill Borisov, Booking.com
Zu intelligente Wohnung: IoT + Python + alles andere
Cyril beschloss, ein einfaches System zum Sammeln (und Übermitteln) der Messwerte von Zählern / Sensoren zu entwickeln, wobei Python maximal und die modernsten Dinge verwendet wurden: Asynchronität, Cloud Computing, Telegrammbot und MicroPython (aus IoT-Gründen). Was daraus wurde, wird Cyril Ihnen auf PyConRu erzählen.

Alexander Khayorov, Kettenstapel
Auf Wiedersehen virtuelle Umgebungen?
Python bietet dem Entwickler im Gegensatz zu anderen Programmiersprachen enorme Freiheiten beim Abhängigkeitsmanagement. Warum ist das passiert und wie kann dies mit den Prinzipien des Zen in Verbindung gebracht werden? Sollte es nur ein Tool zum Abhängigkeitsmanagement geben? In den letzten Jahren haben Pipenv und Poetry eine bemerkenswerte Popularität erlangt. Und auch PEP 517 (Montageisolierung) veröffentlicht, und was wird uns darin prophezeit? Der Entwicklungsleiter bei Chainstack Alexander Khayorov (Singapur) wird versuchen, all diese Fragen zu beantworten und Ihnen zu sagen, worauf Sie sich angesichts der DevOps-Praktiken und ihrer eigenen Erfahrung vorbereiten müssen.

Sergey Borisov, DomKlik
Meisterklasse "Testen asynchroner Anwendungen"
Jeder weiß, wie wichtig das Testen ist. Sergey Borisov, technischer Direktor des Importteams bei DomKlik, wird in der Meisterklasse zeigen, wie sie asynchrone Anwendungen zusammen mit der Datenbank und anderen Infrastrukturdiensten mit Docker und pytest testen. Während des Meisterkurses packen die Teilnehmer zusammen mit dem Moderator die grundlegende Webanwendung in Docker und decken sie mit Tests von Kopf bis Fuß ab :)

Ivan Tsyganov, Positive Technologien
(Nein) gefährliche Abhängigkeiten
In den letzten sieben Jahren hat die Bedrohung „Verwenden von Komponenten mit bekannten Schwachstellen“ den neunten Platz in der OWASP TOP-10-Bewertung eingenommen. Der führende Programmierer bei Positive Technologies, Ivan Tsyganov, erklärt Ihnen, zu welchen Konsequenzen die Verwendung irrelevanter Versionen von Bibliotheken und des Interpreters führen kann. Ivan wird genau zeigen, wie ein Angreifer die bekannten Sicherheitslücken im Django und Django Rest Framework, in den SQLAlchemy-, lxml-, PyYAML- und aiohttp-Sitzungsbibliotheken sowie in den Python 2- und Python 3-Interpretern selbst ausnutzen kann.

Wassili Litwinow, Intel
Profiling Python und C für Spaß und Profit oder Pandas, gehen Sie schnell!
Vasily gibt einen kurzen Überblick über vorhandene Profiler für Python, wobei der Schwerpunkt auf Tools liegt, die im gemischten Modus arbeiten (die gleichzeitig Python- und native Funktionen anzeigen können). Solche Tools können für Bibliotheksentwickler von besonderem Interesse sein, sind aber auch für diejenigen nützlich, die diese Bibliotheken verwenden. Es werden sowohl Closed- als auch Open Source-Lösungen vorgestellt. Die Verwendung wird durch Untersuchen und Beschleunigen einzelner Teile von Pandas veranschaulicht.

Alexey Kuzmin, DomKlik
Suchen und optimieren Sie Engpässe in Python
Alex wird seine Lebens-Hacks und Tools teilen, die Ihnen beim Debuggen Zeit und Nervenzellen sparen. Daher sollten Sie wissen, welche Stellen im Programm normalerweise langsamer werden, mit welchen Tools es bestätigt oder widerlegt werden kann und wie diese Stellen behoben werden können, damit keine Probleme mehr auftreten.

Anton Bragin, JetBrains
Jupyter-Notizbücher - Es gibt einen besseren Weg
Anton wird die akutesten Probleme analysieren, die bei der Arbeit mit Jupyter auftreten, und Ansätze und Tools in Betracht ziehen, um diese Probleme zu beseitigen oder ihre Schwere zu verringern. Der Bericht wird sowohl für Jupyter-Liebhaber interessant sein, die bereit sind, das Konzept von Notizbüchern für das wissenschaftliche Rechnen kritisch zu betrachten, für seine Hasser, denen es nichts ausmacht, Jupyter eine zweite Chance zu geben, als auch für alle, die sich für Fragen der Datenanalyse und -präsentation mit Python interessieren.

Zlata Obukhovskaya, Nvidia
Strukturierte Parallelität. Was ist falsch an Asynchronität in Python?
Auf der PyCon 2018 sprach Nathaniel Smith über den von ihm implementierten Asynchronitätsansatz in der Trio-Bibliothek. Dieser als strukturierte Parallelität bezeichnete Ansatz umfasst die Erstellung eines Kontexts für die Ausführung wettbewerbsfähiger Threads. In diesem Zusammenhang ist es einfacher, die Probleme zu lösen, Ressourcen freizugeben, Fehler abzufangen und verwandte Coroutinen abzubrechen.

Die Idee wurde von Entwicklern aus anderen Sprachen (Kotlin, C, Swift) aufgegriffen und warf viele Fragen auf:
- Und wenn wir anstelle der Liste der äquivalenten Wettbewerbsströme jetzt eine Grafik haben?
- Wie kann man Daten sicher zwischen Kontexten übertragen?
- Wer überwacht den Lebenszyklus solcher Diagramme?
- Wie kann ein Diagramm wettbewerbsfähiger Threads effektiv auf einem einzelnen Kern ausgeführt werden? Und auf ein paar?
- Wie erreicht man einen Determinismus der Erfüllung?

In der Zwischenzeit wurden diese Probleme in anderen Sprachen und Technologien gelöst.

Die Evangelistin der Moskauer Python-Gemeinde Zlata Obukhovskaya wird Ihnen erklären, wie Ansätze aus anderen Sprachen auf die moderne Python anwendbar sind.

Anton Patrushev, Sphärisch
Python & Rust: Mehr Spaß zusammen
Rost ist ein heißes Thema in der modernen Entwicklungswelt. Anton wird kurz über diese relativ neue Sprache sprechen, über die Vorteile, die er dem Entwickler bietet. Der Bericht basiert auf einem Beispiel für die Integration von Rust in eine vorhandene Python-Anwendung, das die Einfachheit und Bequemlichkeit der Verwendung von in Rust geschriebenen Erweiterungen und die Bereitschaft des Python-Rust-Bundles zur Verwendung in Ihren Python-Projekten demonstriert.

Alexander Artyomenko, Yandex
Makros für den Pythonisten
In diesem Vortrag wird erläutert, welche Tools zur Ergänzung der Python-Syntax durch Hinzufügen der erforderlichen Funktionen verwendet werden können. Alexander wird überlegen, wie Bibliotheken wie Pytest, Makropie, Muster angeordnet sind und was sie tun, um so interessante Ergebnisse zu erzielen. Er wird auch ein Beispiel für die Codegenerierung mit Makros in HyLang zeigen, einer lisp-ähnlichen Sprache, die auf Python ausgeführt wird.

Vadim Pushtaev, Mail.Ru
Entwicklung asynchroner Dämonen
Timlid in Mail.Ru-Gruppensuche Vadim Pushtaev wird darüber sprechen, wie sie Multiprozessdienste mit Asyncio im Inneren entwickeln. Erwähnen Sie die Komplexität der Interprozesskommunikation, die Verwendung des gemeinsam genutzten Speichers, die Interaktion mit Warteschlangen und Speichern und vieles mehr.

Rishat Ibragimov, Yandex
Quantum Python Programming: Aus Beispielen lernen
Viele haben von Quantencomputern und den fantastischen Möglichkeiten gehört, die sie bieten. Aber nicht viele Menschen wissen, dass die Technologie ein derartiges Niveau erreicht hat, dass heute jeder ein einfaches Python-Programm schreiben und auf einem echten Quantencomputer ausführen kann. Rishat wird die Grundlagen des Quantencomputers anhand von Beispielen mit Code analysieren und ihm beibringen, wie man Programme auf einem lokalen Simulator und einem entfernten Quantencomputer ausführt.

Nikita Grishko, Flo Health Inc.
Entwicklung des Abhängigkeitsmanagements
Wenn Sie in Python schreiben, verwenden Sie virtuelle Umgebungen und Pip, um Pakete darin zu installieren. Wahrscheinlich haben Sie in Ihrem Projekt die Datei "resources.txt" mit all Ihren Abhängigkeiten oder sogar zwei, z. B. "resources-dev.txt". Aber was ist, wenn dieser gute alte Ansatz Probleme hat und es mehr als ein Werkzeug gibt, das versucht, sie zu lösen? Nikita wird über die bestehenden Probleme des Abhängigkeitsmanagements sprechen und sehen, wie die Entwickler versucht haben und versuchen, sie zu lösen, Tools wie Pip-Tools, Pipenv, Flit, Poesie durchgehen und herausfinden, ob sie Ihre Aufmerksamkeit wert sind, und sie ansprechen ihre Projekte, oder ist es nur ein weiterer Zug des Wahnsinns, der es wert ist, passiert zu werden?

Artem Korolev, Timur Kadyrov, Dentsu Aegis Russland
Erstellung industrieller Datensätze für Deep-Learning-Aufgaben
Die Jungs werden über ein Thema sprechen, das Sie normalerweise nicht in Coursera sehen und auf Medium lesen: Woher kommen die Bilder zum Markieren des Datensatzes? ob es sich lohnt, sie mit eigenen Händen zu markieren oder sie sofort an Auftragnehmer und die Börse weiterzugeben; Wie viele Tage werden benötigt, um einen Datensatz zu erfassen, der den Anforderungen des Kunden entspricht? wie man TK auf Markup usw. usw. setzt
Der Bericht richtet sich an Personen, die der Meinung sind, dass Deep Learning das Los großer Unternehmen mit Big Data und großen Abteilungen für Datenwissenschaft ist. Die Jungs werden Ihnen erklären, wie Sie die Bilderkennung von Grund auf neu angehen und in ein paar Wochen zum Client zurückkehren können, ohne die Vision-API zu verwenden - Google, AWS oder Azure.

Dmitry Orlov, Edadil
Asynchroner Treiber für RabbitMQ vom Autor
Als Dmitry anfing, eine Open Source-Bibliothek für die Arbeit mit rabbitmq mit Asyncio zu schreiben, wollte er eine einfache und intuitive Benutzeroberfläche für alle erstellen. Es scheint geklappt zu haben, aber nicht sofort. In dieser Geschichte geht es darum, wie er in den Treiber (pika) eindringen, dort Fehler bearbeiten und seinen eigenen Treiber schreiben musste und wie er die aktuelle öffentliche API nicht beschädigen und Benutzern keinen Schaden zufügen konnte. Was in asyncio fehlt, um Netzwerkbibliotheken ohne Schmerzen zu schreiben. Die Nachteile von Netzwerkprotokollen, insbesondere AMQP 0.9.

Nikita Levonovich, Quest-Händler
Micropython für Arcade-Spiele und Quests in der Realität
Ein moderner Questraum besteht aus etwa 10 elektronischen Computergeräten, die über ein Netzwerk (MQTT) kommunizieren. Die meisten dieser EVUs sind Mikrocontroller (ESP32), die Peripheriegeräte steuern: MP3-Player, Relais und verschiedene Sensoren und E / A-Geräte verwenden: Displays, Dioden, Tasten, Tastaturen und viele andere. Dies war jedoch nicht immer der Fall. Vor ein paar Jahren gab es viel weniger Geräte in Quests, das Hauptcomputermodul war Arduino, und die Kommunikation zwischen verschiedenen Gerätepaaren konnte unter Verwendung verschiedener Protokolle erfolgen. Der Bericht widmet sich der Bildung der Architektur, die das Questodela-Team zur Lösung ähnlicher Probleme bei Micropython verwendet, wie sie bei den beliebten Mikrocontrollern von Espressif Systems angewendet werden.

Nikolay Markov, Ausgerichtete Forschung
Workshop „Ein Python-Projekt von A bis Z packen“
Viele Entwickler kümmern sich nicht wirklich um das Design des Codes und das Verpacken in Pakete, insbesondere mit dem Aufkommen von Containern. Und im Allgemeinen ist in diesen Paketen wenig klar - es gibt einige Eier und whl und pipfile ... Während des Workshops diskutieren die Teilnehmer das korrekte Design des Projekts in Python (von den Befehlszeilenargumenten bis zur Dokumentation), gehen den klassischen Prozess des Erstellens des Pakets mit ihren Händen durch und werfen einen Blick darauf , was ist was und finden Sie heraus, wie das Ökosystem der Python-Pakete in der modernen Welt aussieht.

Artem Malyshev, drylabs.io
Domänengesteuerte Designtools
Komplexität ist inhärent und eingeführt. Aus dem Bericht erfahren Sie, wie Sie den ersten organisieren und den zweiten minimieren. Artem wird darüber sprechen, wie Sie Ihr Produkt auf das zu lösende Problem und nicht auf das verwendete Framework aufbauen können. Sie werden herausfinden, an welcher Stelle es besser ist, Typisierung und Datenklassen einzuführen, wo Vertragsprogrammierung und Pydantic für Sie nützlich sind. Siehe die Bibliotheken aus dem Dry-Python-Projekt. Und natürlich nicht ohne Tests. Nur üben. Keine UML-Schemata oder abstrakten Fassadenfabriken.

Das Konferenzprogramm wird aufgefüllt, das relevanteste ist immer vor Ort . Das endgültige Programm wird bis zum 1. Juni fertig sein.


Alle Videos aus den Berichten des letzten Jahres können auf unserem YouTube-Kanal angesehen werden.

Registrierung


Jetzt kostet ein Ticket für die Doppelbelegung 20.000 Rubel, für eine Einzelbelegung - 28.000 Rubel. Seit dem 20. Mai - teurer.

Denken Sie daran, dass der Ticketpreis beinhaltet:

  • Teilnahme an der Konferenz (2 Tage);
  • Unterkunft im Vier-Sterne-Hotel Cronwell Yakhonts Tarusa;
  • Mittag- und Abendessen am 24. Juni, Frühstück und Mittagessen am 25. Juni;
  • alle Kaffeepausen;
  • Unterhaltungsprogramm;
  • Busse von der U-Bahnstation Annino zum Konferenzort und zurück am 24. und 25. Juni.

Anmeldung und Details auf der Konferenzwebsite .



Wir freuen uns sehr, Sie bei PyConRu begrüßen zu dürfen!

Source: https://habr.com/ru/post/de452302/


All Articles