Yury Selivanov - async/await in Python 3.5 and why it is awesome

  Рет қаралды 26,466

EuroPython Conference

EuroPython Conference

Күн бұрын

Yury Selivanov - async/await in Python 3.5 and why it is awesome
[EuroPython 2016]
[21 July 2016]
[Bilbao, Euskadi, Spain]
(ep2016.europython.eu//confere...)
async/await is here, everybody can use it in Python 3.5. It's great
and awesome, yet only a few understand it. As a PEP 492 author, I'd
really like to have a chance to better explain the topic, show why
async/await is important and how it will affect Python. I'll also tell
a story on how I worked on the PEP -- starting from an idea that I
discussed with Guido on PyCon US 2015, and landing to CPython source
code one and a half moths later!
-----
The talk will start with a brief coverage of the story of asynchronous
programming in Python -- Twisted, Tornado, Stackless Python &
greenlets, eventlet, Tornado, asyncio & curio. We've come a really
long road, and it's important to understand how we ended up with
async/await.
Then I'll go over asyncio and curio, showing async/await by example,
explaining that in reality it's a very easy to use language feature.
You don't need to know all the details to be able to successfully use
the new syntax, and even build new frameworks on top of it.
I'll then explain the async/await machinery in CPython, starting with
generators and 'yield' expression, showing what is 'yield from' and
finally, demonstrating how async/await is implemented in CPython.
This will ensure that those who want to invent some new crazy ways of
using async/await will have a starting point!
I'll end the talk with a story of how I came up with the idea. How I
shared it with Guido van Rossum, Victor Stinner, and Andrew Svetlow.
How the first version of the PEP was born, and how we managed to push
it to Python 3.5 in under two months period. The goal is to make
people understand that it's possible to change your programming
language -- in fact, Python, as any other programming language, wants
new features and capabilities to be relevant.

Пікірлер: 10
@pynchia4119
@pynchia4119 6 жыл бұрын
Good talk. And yes, asyncio documentation is still pretty awful in 2018
@user-zo9jd3iz1i
@user-zo9jd3iz1i 3 жыл бұрын
...still pretty awful in 2020
@Darqonik
@Darqonik 7 ай бұрын
…still pretty awful in 2023
@aleksandrkurlov3219
@aleksandrkurlov3219 6 жыл бұрын
One of the best talk for getting started with asyncio
@mckenziejohan4149
@mckenziejohan4149 4 жыл бұрын
very good talks but too short... 😭😭😭😭 Other high-level asyncio APIs, not covered here, include: stream, a set of high-level networking primitives for managing asynchronous TCP events. lock, event, condition, async analogs of the synchronization primitives provided in the threading module. subprocess, a set of tools for running async subprocesses, such as shell commands. queue, an asynchronous analog of the queue module. exception, for handling exceptions in async code.
@ubergarm
@ubergarm 7 жыл бұрын
Great talk! Good signal to noise ratio! Love the jokes! This guy understands my pain! 1) kzbin.info/www/bejne/o2Obl5yEbt6SqJo "5 Obvious ways to do coroutines..." 2)kzbin.info/www/bejne/o2Obl5yEbt6SqJo -"asyncio is simple..." Thanks for developing the uvloop implementation because: github.com/channelcat/sanic/ Now I can reach for python instead of golang or node for backend apps again! Cheers!
@naeemkhoshnevis
@naeemkhoshnevis 4 жыл бұрын
Good talk.
@mihailtemelkov32
@mihailtemelkov32 5 жыл бұрын
asyncio was added in 3.4, not 3.3 (the slide that starts at 3:00)
@DenisG631
@DenisG631 5 жыл бұрын
SelivAnov, not SelivanOv ;)
@De4sher
@De4sher 6 жыл бұрын
"The asyncio documentation is simple. It only takes you 5 days to read it and a couple of months to digest it....and then you can use it" kzbin.info/www/bejne/o2Obl5yEbt6SqJom26s :D Async is not simple. It is hard to understand. It's totally worth it, and it's very awesome, but still, let's not kid ourselves. For me, async workflows were harder to understand than threaded ones.
Yury Selivanov - Asyncio in Python 3 7 and 3 8
43:47
EuroPython Conference
Рет қаралды 13 М.
Sebastian Witowski - Writing faster Python
24:10
EuroPython Conference
Рет қаралды 100 М.
A little girl was shy at her first ballet lesson #shorts
00:35
Fabiosa Animated
Рет қаралды 14 МЛН
Best Toilet Gadgets and #Hacks you must try!!💩💩
00:49
Poly Holy Yow
Рет қаралды 18 МЛН
Mom's Unique Approach to Teaching Kids Hygiene #shorts
00:16
Fabiosa Stories
Рет қаралды 33 МЛН
50 YouTubers Fight For $1,000,000
41:27
MrBeast
Рет қаралды 205 МЛН
Keynote David Beazley -  Topics of Interest (Python Asyncio)
49:46
pythonbrasil
Рет қаралды 42 М.
Coding a Web Server in 25 Lines - Computerphile
17:49
Computerphile
Рет қаралды 330 М.
Demystifying Python's Async and Await Keywords
1:18:53
JetBrains
Рет қаралды 98 М.
Основы Asyncio
53:25
Python Russian
Рет қаралды 16 М.
Modern Python logging
21:32
mCoding
Рет қаралды 166 М.
A Really Gentle Introduction to Asyncio
30:32
PyCon AU
Рет қаралды 14 М.
Stop using print! Understanding and using the "logging" module - Reuven M. Lerner
29:32
Get to grips with asyncio in Python 3 - Robert Smallshire
59:23
NDC Conferences
Рет қаралды 35 М.
The moment we stopped understanding AI [AlexNet]
17:38
Welch Labs
Рет қаралды 809 М.
Looks very comfortable. #leddisplay #ledscreen #ledwall #eagerled
0:19
LED Screen Factory-EagerLED
Рет қаралды 5 МЛН
iPhone socket cleaning #Fixit
0:30
Tamar DB (mt)
Рет қаралды 17 МЛН
Какой ноутбук взять для учёбы? #msi #rtx4090 #laptop #юмор #игровой #apple #shorts
0:18
Самые крутые школьные гаджеты
0:49