Skip to content

Instantly share code, notes, and snippets.

View kataev's full-sized avatar

Denis Kataev kataev

  • The Netherlands, Rotterdam
View GitHub Profile
@kataev
kataev / docs.txt
Created March 18, 2021 17:02
Ссылки к докладу "Почему вам не нужен асинхронный ORM" Денис Катаев PyCon Weekend 2021
1. Юрий Селиванов, EdgeDB, Asyncio «Asyncio сегодня и завтра» - https://www.youtube.com/watch?v=3rSAtD2gKQE
2. CancellError - https://youtu.be/ehMcXF1GGyA?list=PL_blwmWQZXPL0YRH5xDPrOtYJ4qiU2ASb&t=1617
3. CancellError 3.8 - https://bugs.python.org/issue32528
4. What Color is Your Function? - https://journal.stuffwithstuff.com/2015/02/01/what-color-is-your-function/
5. Перевод статьи выше - https://habr.com/ru/post/466337/
6. Отказ httpx от двух интерфейсов - github.com/encode/httpx/issues/572 и github.com/encode/httpx/issues/587
7. Закон Литтла - https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BA%D0%BE%D0%BD_%D0%9B%D0%B8%D1%82%D1%82%D0%BB%D0%B0
8. Async Python is not faster - http://calpaterson.com/async-python-is-not-faster.html
9. I'm not feeling the async pressure - https://lucumr.pocoo.org/2020/1/1/async-pressure/
10. Денис Катаев, Tinkoff.ru «SQLAlchemy: Python vs Raw SQL» - https://youtu.be/jUGK-CtM-Mk
import sqlalchemy as sa
from sqlalchemy.ext.declarative import as_declarative, declared_attr
@as_declarative()
class Base1:
@declared_attr
def __tablename__(cls) -> str:
return cls.__name__ # type: ignore
import sqlalchemy as sa
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Test(Base):
__tablename__ = 'test'
id = sa.Column('test_id', sa.Integer, primary_key=True)
import sqlalchemy as sa
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Test(Base):
__tablename__ = 'test'
id = sa.Column('test_id', sa.Integer, primary_key=True)