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!

concurrent programmingconcurrent programming in Pythonpython tutorialasynchronous programmingpython programminglearn pythonpython awaitlearn python programmingpython tutorial for beginners in englishpython tutorial for beginnerssynchronous programmingpython tutorialspython asynciopython programming tutorialasynchronous programming pythonpython tutorial advancedpython tutorial 2022asynchronous programming with async and await