PyCon Ukraine 2018

April 28-29, 2018, Britaniya, Kharkiv


About

PyCon Ukraine is an independent, community-run, community-controlled and not-for-profit conference dedicated to the Python programming language, Python applications, toolkits and frameworks and other "related" technologies — databases, GIS, high-load systems. It also features the place for socialization of the Ukrainian Python users. It is organised by the Kyiv Python User Group, Lviv Python User Group, and partners.

Speakers

  • Ulises Reyes

    From beta to a world-class SaaS

    Have you ever taken an application from zero to a Production-grade cloud with paid customers? In this talk I'll share our story of how we moved from a beta web app with no users to a world-class SaaS. I'll talk about our culture, the organizational changes we went through, the tooling we used, the mistakes we made, the bullets we dodged, our zero-bugs culture, postmortem process, bugs that caused outages and some other good stuff. All levels of experience are welcome.

    Ulises Reyes

    VP of Engineering, DataRobot.

  • Ivan Levkivskyi

    mypy: static types in Python

    Large Python code bases can be hard to maintain. Static types is one of remedies that can improve readability, stability, and maintainability in such situations. I will discuss how to use this tool efficiently and without problems.

    Ivan Levkivskyi

    I am a long term Python enthusiast, and (since recently) a Python core developer. Before 2017 I was working as a theoretical physicist, but then switched to computational genetics, and then very recently to software engineering. I love mountains and mountain sports."

  • Itay Weiss

    Talk about the differences between the three implementations — CPython, Grumpy, PyPy

    Talk about the differences between the three implementations — CPython, Grumpy, PyPy. Focusing on use cases in which each of them should be used and a drill-down to how each environment tackles performance (GIL, just-in-time and Goroutines). I will also evaluate performance impact in real life scenario.

    Itay Weiss

    "Senior Software Developer with lots of experience in Python, .Net, C++, Operating Systems and Software Security. Fulfilled positions as hands-on Senior Developer, Technological Supervisor and Development Team Leader in IDF Army Intelligence."

  • Paul Colomiets

    Peer to peer file synchronization for your apps

    "Everybody knows there are three data tiers: source code, database, and cache. In this talk, I’m going to introduce a " fourth data tier in between a database and source code. I.e. it’s cheap to read and always available like source code but can contain dynamic data, like a database.

    Paul Colomiets

    Have coded in python for 10 years. I’m now coding mostly in Rust. I’m obsessive about asynchronous code and microservice-based architecture. For my day job, I’m building containerization and orchestration systems for evo.company.

  • Arkadiusz Adamski

    Automating banner generation using Python and the popular graphic editor

    Operating a big e-commerce platform requires to create and update ads, banners and other marketing materials. Using manual labour can be inefficient in these circumstances. We managed to automate this process and to keep native environment for graphic designers, using Python and its ecosystem.

    Arkadiusz Adamski

    "One of the core developers of Ralph – an open-source DCIM/CMDB tool https://github.com/allegro/ralph. Work as a software engineer at Allegro – the biggest e-commerce platform in Poland. Mostly writes his code in Python."

  • Taras Voinarovskyi

    Binary data in Python with a bit of C spice on top.

    You have that annoying C++ client that refuses to send you JSON data no matter what? Well, not a big problem, as long as we keep the mind calm and use correct data types, modules, and tricks in Python. We can even dive a bit deeper into C world ourselves to get the secret spice of efficiency.."

    Taras Voinarovskyi

    Pythonista for about 8 years, mostly interested in network communications and data structures. Starting from 2016 a part of aio-libs team, mostly working on aiokafka. A collaborator of kafka-python, contributed to a couple of other asyncio based projects.

  • Abhishek Kapatkar

    Nim for Python Programmers

    Ever wondered if there existed a language as expressive as Python and as efficient as C/C++? Look no further then. Nim is a statically typed, compiled language with a focus on efficiency. It is versatile and borrows much of its constructs and standard library design from Python https://nim-lang.org

    Abhishek Kapatkar

    Works at Netflix on Data Platform Architecture team, whose mission is to make using data easy and efficient. He and his team are responsible for envisioning how the data platform allows data scientists to make Netflix’s service even better. He enjoys product development, programming language design, and is passionate about the usage of technology for the social good and currently serves as a San Francisco chapter leader for Datakind.org.

  • Andrii Gakhov

    An Introduction to Time Series Forecasting with Python

    Time series is an important instrument to model, analyze and predict data collected over time. In this talk, we learn the basic theoretical concepts without going deep into mathematical aspects, study different models, and try them in practice using StatsModels, Prophet, scikit-learn, and keras."

    Andrii Gakhov

    Andrii Gakhov is a mathematician and software engineer holding a Ph.D. in mathematical modeling and numerical methods. He has been a teacher for a number of years in the School of Computer Science at V. Karazin Kharkov National University, Ukraine and currently works as a software practitioner for ferret go GmbH, the leading community moderation, automation, and analytics company in Germany."

  • Moisés Guimarães

    Understanding SSL/TLS connections with Python wolfssl

    This talk presents a dissection of the SSL/TLS protocol to understand how it works and uses the wolfssl python module to put in motion the magic tricks of modern cryptography. Come join us and learn how to keep your connections safe from network eavesdroppers."

    Moisés Guimarães

    Moisés is a Brazilian pythonista from João Pessoa, the capital of Paraíba state, and also the easternmost point of Americas. He is the author of both wolfcrypt and wolfssl python modules, CFFI wrappers for the wolfSSL’s crypto engine and SSL/TLS libraries. Enjoys drinking beers, cracking puzzles, playing harmonica and disguising himself as Cthulhu (;,;)

  • Stéphane Wirtel

    Python loves your contributions

    How can I contribute to Python? This is the first question when I discuss with people and for this question, there is several answers. Of course, you can contribute by code, or by documentation or with meetups, but I will show you how you can contribute to Python. This talk is for you if you wants to contribute to this awesome language, ecosystem because the community is fun, we come for the Language and we stay for the Community. So, What Can I Do For Python ?

    Stéphane Wirtel

    Stéphane has started to use Python for the fun in the 2000s. Now he uses it for the profit ;-) Fellow member of the Python Software Foundation since 5 years, he has received a Community Service Award for his contribution to the Python environment. Contributor of CPython, main organizer of PythonFOSDEM and member of several workgroups, he tries to help Python.

  • Andrew Svetlov

    The current state and future of asyncio

    Asyncio has proved its vitality, the library's popularity grows very fast. The talk draws out the result of 5 years of working in the area: the current state of the art of development asyncio-based programs, best practices and found pitfalls. A secret bonus is disclosing our plans for future asyncio features and the main evolvement line.

    Andrew Svetlov

    Andrew started to use Python in the late 90s, became the Python Core Developer in 2012, now is concentrated on asyncio maintaining and development of asyncio-based libraries like aiohttp and family.

  • Yuriy Senko

    Goodbye cron, hello Airflow

    This talk is about our experience with replacing of a legacy ETL system written in bash, python, and cron with a new system built on top of Apache Airflow. I want to concentrate on - Airflow typical use cases - design, implementation, and testing of Airflow pipelines - CI/CD and Kubernetes deployment

    Yuriy Senko

    Tech lead at Lohika who was a speaker and one of the organizers of LvivPy. He will give a talk about experience with replacing of a legacy ETL system written in bash, Python, and cron with a new one built on top of Apache Airflow

  • Marek Bleschke

    Python Type Hints in practice - is it worth it?

    Searching for information about Type Hints can give many different opinions about them. Do they really help catching errors or are they only clobbering one’s code? In this presentation I’m going to share some practical experiences of over a dozen programmers working with them on production code.

    Marek Bleschke

    Programmer with 7 years of experience mostly in web development. Currently – a software engineer in Allegro, the biggest e-commerce platform in Poland. Mostly spends his working time coding in Python and JavaScript.

  • Vitaly Haritonsky

    How To Cook Celery

    "Sometimes you eat the bear and sometimes the bear eats you. Turns out it’s the same with vegetables: Python’s Celery while providing a leverage to any app, can be at the same time an instrument of it’s demise. This talk consists of recipes, cases and anecdotes gained from running Celery for 6+ years."

    Vitaly Haritonsky

    I am Python developer at prom.ua. I spend a lot of time optimizing product features and internal infrastructure. Occasionally I like to experiment with distributed systems for data processing."

  • Roman Prykhodchenko

    Load distribution in heterogeneous microservice environments

    Proper load distribution is one of the keys to ensure smooth, safe and cost-effective operation. However, heterogeneous environments turn this easy at first sight task into a challenge that becomes more complicated in cases of microservice architectures. There is a way to solve it with asyncio.

    Roman Prykhodchenko

    Alumnus of the Computer Engineering faculty of Kharkiv National University of Radio Electronics. For the last 6 years has been working in fields of cloud computing and automation including taking the core reviewer duty in the OpenStack open source project in 2014-2017. Currently work as a software engineer at Allegro – the biggest e-commerce platform in Poland. An advocate of DevOps philosophy and programming polyglot.

  • Max Klymyshyn

    Property-based tests: why I was so wrong about testing

    Unit-tests, TDD, BDD just a subset of property-based testing approach and how property-based testing will make our software more correct and stable.

    Max Klymyshyn

    Full-stack software engineer for Clojure/ClojureScript/Python/JavaScript-based projects with 15+ years experience in technical team leadership and management of distributed teams. Interested in distributed systems, data replication and consistency algorithms, information science, functional languages and modern mobile and front-end development.

  • Nikolay Novik

    Verification of Concurrent and Distributed Systems

    Building correct concurrent or distributed systems is hard and very challenging task. In my talk I will show how model checking tools can help to ensure correctness of algorithms used in such systems.

    Nikolay Novik

    Software engineer at DataRobot in modeling machine team, where I build data processing pipelines for model training and prediction. Active open source contributor in asyncio community, member of https://github.com/aio-libs core team, author of several asyncio libraries: aiomysql, aioodbc, aiomonitor, aiozipkin, aiohttp-debugtoolbar, aiobotocore, aiozipkin, etc. On github known as @jettify.

  • Mikhail Kashkin

    Python Blockchain development

    In this talk, I want to show that Python is a first class citizen in the world of blockchains. What basic concepts you need to know to make your own first smart contract in Etherium blockchain. And maybe, will show how to run your own first ICO in full python.

    Mikhail Kashkin

    Solution architect and Python developer with experience in complex IT projects. Primary focus on startups and custom solutions. Created from scratch several big projects more than 10+ person/year in size. Mostly using open source technologies. Favorite technological stack is Python, Postgres, Linux, Blockchain.

  • Vitaliy Androsenko / Andrey Kobyshev

    The hell and the paradise of microservices in a SaaS system.

    Comparison between the Monolithic and Microservice architecture. REST vs RPC and why REST cannot solve all the issues. Comparison between popular Zato, Pyro, Thrift, gRPC, jsonRPC. Specific problems and its solutions if there are any. The package of extensions developed for building jsonRPC microservices.

    Vitaliy Androsenko / Andrey Kobyshev

    Vitaliy Androsenko - Long period worked as a professor, tired to torture students and decided to make something more useful. Andrey Kobyshev - Works as a team lead in a Seagull Way Inc. for more then 4 years, developing SaaS for apparel industry.

  • Vitaliy Kucheryaviy

    Superfast development with Django Prototyper

    Developing with Django ? Imagine creating your apps 10x ..100x times faster! I will present audience a live demo of the tool (django-prototyper) that automizes Django project bootstrapping and maintaining. Thats a rich UI tool that allows generate complex db schemes, setups, plugable apps and configurations. The goal is to cover common development cases where you spend usually hours and reduce that time to couple of minutes.

    Vitaliy Kucheryaviy

    I have almost 15 years experience in software development, and spent most time developing with Python. My way of work is a bit unusual - I simultaneously work on 3-10 projects, which is possible with some automation that I will share.

  • Vladimir Kirillov

    Ur/web: web development with one language or what to expect from mypy

    Vladimir Kirillov

  • Dmitry Chaplinsky

    Practical cases of using NLP.

    A couple of practical and very Ukranian cases of using modern buzzwords in real life + small postscriptum to inspire (or not).

    Dmitry Chaplinsky

    Senior Software Developer/Architect at ThisisZone

Schedule

Track A Track B

April 28th, Saturday

8:30 Registration / Welcome coffee
09:45 Opening
10:00 Stéphane Wirtel Python loves your contributions
Stéphane Wirtel
10:45 Itay Weiss Talk about the differences between the three implementations — CPython, Grumpy, PyPy
Itay Weiss
11:30 Changing tracks break
11:45 Moisés Guimarães Understanding SSL/TLS connections with Python wolfssl
Moisés Guimarães
11:45 Vitaliy Androsenko / Andrey Kobyshev The hell and the paradise of microservices in a SaaS system.
Vitaliy Androsenko / Andrey Kobyshev
12:30 Vitaly Haritonsky How To Cook Celery
Vitaly Haritonsky
12:45 Lunch
13:15 Lunch
13:45 Arkadiusz Adamski Automating banner generation using Python and the popular graphic editor"
Arkadiusz Adamski
14:30 Changing tracks break
14:45 Nikolay Novik Verification of Concurrent and Distributed Systems
Nikolay Novik
14:45 Roman Prykhodchenko Load distribution in heterogeneous microservice environments
Roman Prykhodchenko
15:30 Changing tracks break
15:45 Mikhail Kashkin Python Blockchain developmen
Mikhail Kashkin
15:45 How to separate frontend from a highload python project with no problems.
Oleksandr Tarasenko
16:30 Coffee break
16:45 Taras Voinarovskyi Binary data in Python with a bit of C spice on top.
Taras Voinarovskyi
16:45 Yuriy Senko Goodbye cron, hello Airflow
Yuriy Senko
17:30 Changing tracks break
17:45 Paul Colomiets Peer to peer file synchronization for your apps
Paul Colomiets
18:30 Ligthning talks

April 29th, Sunday

9:00 Welcome coffee
10:00 Abhishek Kapatkar Nim for Python developers
Abhishek Kapatkar
10:45 Ulises Reyes From beta to a world-class SaaS
Ulises Reyes
11:30 Changing tracks break
11:45 Andrii Gakhov An Introduction to Time Series Forecasting with Python
Andrii Gakhov
11:45 Max Klymyshyn Property-based tests: why I was so wrong about testing.
Max Klymyshyn
12:30 Dmitry Chaplinsky Practical cases of using NLP.
Dmitry Chaplinsky
12:45 Lunch
13:15 Lunch
14:15 Andrew Svetlov The current state and future of asyncio
Andrew Svetlov
14:15 Vitaliy Kucheryaviy Superfast development with Django Prototyper
Vitaliy Kucheryaviy
15:00 Changing tracks break
15:15 Vladimir Kirillov Ur/web: web development with one language or what to expect from mypy
Vladimir Kirillov
16:00 Coffee break
16:15 Marek Bleschke Python Type Hints in practice - is it worth it?
Marek Bleschke
17:00 Ivan Levkivskyi mypy: static types in Python
Ivan Levkivskyi
17:45 Ligthning talks
18:30 Closing

Location

Britaniya hotel, Shevchenko 270 street. Kharkiv, Ukraine

Supported by

Become a sponsor!

PyCon Ukraine is not-for-profit event, which runs by enthusiasts, but it requires some expenses. This is great chance for your company to help. In exchange for help we offer benefits for our partners (see below). Partnership with the conference is a good way to show up your company to the potential customers, employees, and partners.

Here is some facts to convince you:

500 praticipants

videos from PyCon Ukraine have more than 20 000 views on the official channel at Youtube

Benefits for partners:

The company benefits from special partner position of the conference before, during and after the event.

Before the conference: Company’s status will be mentioned in all informational and advertising materials related to the conference: online media, leaflets, conference's site, social networks, e-mails. Company's logo will be placed to the conference's site with corresponding badge.

During the conference: Advertising materials placement (banner, brochures, souvenirs), invitations to the conference for the company’s representatives.

After the conference: Photo and video materials

Company can take part in sponsorship of PyCon 2018 as one of the general partners or exclusive after parties partner.

More details: here

Code of Conduct

PyCon UA is a community conference intended for networking and collaboration in the developer community.
We value the participation of each member of the Python community and want all attendees to have an enjoyable and fulfilling experience. Accordingly, all attendees are expected to show respect and courtesy to other attendees throughout the conference and at all conference events, whether officially sponsored by PyCon or not.
To make clear what is expected, all delegates/attendees, speakers, exhibitors, organizers and volunteers at any PyCon event are required to conform to the following Code of Conduct. Organizers will enforce this code throughout the event.

The Short Version

PyCon is dedicated to providing a harassment-free conference experience for everyone, regardless of gender, sexual orientation, disability, physical appearance, body size, race, or religion. We do not tolerate harassment of conference participants in any form.

All communication should be appropriate for a professional audience including people of many different backgrounds. Sexual language and imagery is not appropriate for any conference venue, including talks.

Be kind to others. Do not insult or put down other attendees. Behave professionally. Remember that harassment and sexist, racist, or exclusionary jokes are not appropriate for PyCon.

Attendees violating these rules may be asked to leave the conference without a refund at the sole discretion of the conference organizers.

Thank you for helping make this a welcoming, friendly event for all.

The Longer Version

Harassment includes offensive communication related to gender, sexual orientation, disability, physical appearance, body size, race, religion, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.

Participants asked to stop any harassing behavior are expected to comply immediately.

Exhibitors in the expo hall, sponsor or vendor booths, or similar activities are also subject to the anti-harassment policy. In particular, exhibitors should not use sexualized images, activities, or other material. Booth staff (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment.

Be careful in the words that you choose. Remember that sexist, racist, and other exclusionary jokes can be offensive to those around you. Excessive swearing and offensive jokes are not appropriate for PyCon.

If a participant engages in behavior that violates this code of conduct, the conference organizers may take any action they deem appropriate, including warning the offender or expulsion from the conference with no refund.

Contact Information

If you are being harassed, notice that someone else is being harassed, or have any other concerns, please contact a member of conference staff.

If the matter is especially urgent, please call/contact any of these individuals:
- Ksenya Balyuk — kseniia@uapycon.org - +38 (097) 906-44-59
- Yehor Nazarkin — yehor@uapycon.org - +38 (097) 969 62 52

Conference staff will be happy to help participants contact hotel/venue security or local law enforcement, provide escorts, or otherwise assist those experiencing harassment to feel safe for the duration of the conference. We value your attendance.

License: This Code of Conduct was forked from PyCon US Code of Conduct which is based on the example policy from the Geek Feminism wiki, created by the Ada Initiative and other volunteers, which is under a Creative Commons Zero license.

Creative Commons License: Creative Commons License Conference Code of Conduct is licensed under a Creative Commons Attribution 3.0 Unported License