Description
This talk covers the basics of the Twisted and Asyncio libraries for asynchronous I/O and then delves into an experience porting the Kademlia distributed hash table (DHT) library from Twisted to Asyncio. The talk will start with a high level discussion of asynchronous I/O and describe some example cases where it might be useful. Concrete examples in both Twisted and Asyncio will be provided to demonstrate two different approaches to asynchronous libraries. Then, in the primary focus of the talk, the process, challenges, and lessons from converting a complex library from Twisted to Asyncio will be covered. This will include covering cases when a conversion should and shouldn't be undertaken, along with advice for anyone who wants to convert an existing library.