<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Async on Alra</title><link>https://alra.dev/tags/async/</link><description>Recent content in Async on Alra</description><generator>Hugo</generator><language>en</language><lastBuildDate>Mon, 01 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://alra.dev/tags/async/index.xml" rel="self" type="application/rss+xml"/><item><title>Sync vs Async in Python - Understanding what's happening</title><link>https://alra.dev/posts/sync-vs-async-in-python-understanding-whats-happening/</link><pubDate>Mon, 01 Jun 2026 00:00:00 +0000</pubDate><guid>https://alra.dev/posts/sync-vs-async-in-python-understanding-whats-happening/</guid><description>&lt;h1 id="sync-vs-async-in-python---understanding-whats-happening"&gt;Sync vs Async in Python - Understanding What&amp;rsquo;s Happening&lt;/h1&gt;
&lt;p&gt;When we start programming in Python, almost everything we write is &lt;code&gt;synchronous&lt;/code&gt;
(an execution model where operations are performed sequentially, blocking the
main thread until each task is completed before the next one starts).&lt;/p&gt;
&lt;p&gt;And this usually works very well.&lt;/p&gt;
&lt;p&gt;You call a function. It executes. Then the next one executes. And so on.&lt;/p&gt;
&lt;p&gt;The problem starts when the application needs to talk to the &amp;ldquo;outside world&amp;rdquo;:&lt;/p&gt;</description></item></channel></rss>