Description
As with many people, I was looking for an ORM for asyncio Python.
Whilst asyncio is a great framework for I/O bound applications,
there isn't any mature, recommendable ORMs for it.
Many attempts to wrap an existing sync Python ORM (such as peewee or
sqlAlchemy) by having them run in a separate thread, and then dealing
with synchronising between the event loop and threads got abandoned,
due to a myriad of problems, including performance, correctness and
blocking.
Other ORMs were abandoned before they worked, or had so many layers of
abstraction that I feared to touch it.
Then I came across Tortoise
ORM
It had a simple design. (Inspired by the Django ORM syntax)
It actually worked when I tried it out.
So I decided to jump in, and help with development.
In this talk I'll talk about my experience of being on a development
team on an ORM.
There is a reason there are so few successful ORM projects out there.
Developing good ORMs are HARD