If your software interacts with external APIs, you need to know concurrent programming. I show you how it works in Python and then take it to the next level by showing advanced concurrent features such as using async with generators and comprehensions, show a simple way to turn blocking code into concurrent code, and then I cover how concurrency affects software design and architecture. The code I worked on in this episode is available here: https://github.com/ArjanCodes/2022-asyncio. 💡 Get my FREE 7-step guide to help you consistently design great software: https://arjancodes.com/designguide. 💻 ArjanCodes Blog: https://www.arjancodes.com/blog 🎓 Courses: The Software Designer Mindset: https://www.arjancodes.com/mindset The Software Designer Mindset Team Packages: https://www.arjancodes.com/sas The Software Architect Mindset: Pre-register now! https://www.arjancodes.com/architect Next Level Python: Become a Python Expert: https://www.arjancodes.com/next-level-python The 30-Day Design Challenge: https://www.arjancodes.com/30ddc 🛒 GEAR & RECOMMENDED BOOKS: https://kit.co/arjancodes. 👍 If you enjoyed this content, give this video a like. If you want to watch more of my upcoming videos, consider subscribing to my channel! 💬 Discord: https://discord.arjan.codes 🐦Twitter: https://twitter.com/arjancodes 🌍LinkedIn: https://www.linkedin.com/company/arjancodes 🕵Facebook: https://www.facebook.com/arjancodes 👀 Code reviewers: - Yoriz - Ryan Laursen - James Dooley - Dale Hagglund 🎥 Video edited by Mark Bacskai: https://www.instagram.com/bacskaimark 🔖 Chapters: 0:00 Intro 1:10 Concurrency vs parallelism 2:33 The Global Interpreter Lock 3:06 The benefits of concurrency 4:36 Recap of asyncio in Python 7:13 Using gather to send out multiple requests 9:44 How async and await are integrated into Python's syntax 11:54 Turn blocking code into concurrent code 16:04 Async http requests 16:53 Aiohttp 17:50 Concurrency, design patterns, and architecture #arjancodes #softwaredesign #python DISCLAIMER - The links in this description might be affiliate links. If you purchase a product or service through one of those links, I may receive a small commission. There is no additional charge to you. Thanks for supporting my channel so I can continue to provide you with free content each week!