frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Open in hackernews

How async/await works in Python (2021)

https://tenthousandmeters.com/blog/python-behind-the-scenes-12-how-asyncawait-works-in-python/
61•sebg•1y ago

Comments

quentinp•1y ago
While it stays at the Python level, https://github.com/AndreLouisCaron/a-tale-of-event-loops really helped me to understand how asyncio and Trio are implemented. I had no idea how sleeps worked before reading that post.
incomingpain•1y ago
Page didnt load for me.

https://realpython.com/async-io-python/

Multiprocessing all the way!

emmelaich•1y ago
(2021)

Good article!

punnerud•1y ago
A more simplified version:

Synchronous code is like a single-lane road where cars (tasks) must travel one after another in perfect sequence. If one car stops for gas (waiting for I/O), every car behind it must stop too. While orderly and predictable, this creates massive traffic jams as tasks wait unnecessarily for others to complete before they can proceed.

Pure asynchronous code (with callbacks) is like dispatching multiple cars onto independent routes with no coordination. Cars move freely without waiting for each other, but they arrive at unpredictable times and following their progress becomes chaotic. It's efficient but creates a complex tangle of paths that becomes hard to maintain.

Async/await combines the best of both approaches with a multi-lane highway system. Cars follow clear, synchronous-looking routes (making code readable), but only wait at strategic "await" exit ramps when truly necessary. When a car needs data, it signals with "await", pulls off the highway temporarily, and other cars continue flowing past. Once its operation completes, it merges back into traffic and continues. This gives you the logical simplicity of synchronous code with the performance benefits of asynchronous execution - cars only wait at crossroads when they must, maximizing throughput while maintaining order.

The genius of async/await is that it lets developers write code that looks sequential while the runtime handles all the complex traffic management under the hood.

explodes•1y ago
Excellent write up. I appreciate the level of details here showing the history from the days of old, before async/await were even keywords.
bilsbie•1y ago
How does the GIL come into play here?
punnerud•1y ago
GIL is like a "red-cap" on the head for the CPU-core running the task, so you would not be able to run true Async without GIL. Have to hand the "red-cap" back, for the next task.

Instead of using a global lock ("red-cap"), Python objects have introduced a specialized reference counting system that distinguishes between "local" references (owned by a single thread) and "shared" references (accessed by multiple threads).

In that way enabling to remove GIL in the long run, now starting with making it optional.

Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28

https://www.jvm-weekly.com/p/project-valhalla-explained-how-a
70•philonoist•2h ago•36 comments

DuckDB Internals: Why Is DuckDB Fast? (Part 1)

https://www.greybeam.ai/blog/duckdb-internals-part-1
150•marklit•2d ago•54 comments

So You Want to Define a Well-Known URI

https://mnot.net/blog/2026/well_known_uris
45•ingve•2h ago•21 comments

To study how chips work, MIT researchers built their own operating system

https://news.mit.edu/2026/to-study-how-chips-really-work-mit-researchers-built-their-own-operatin...
170•speckx•3d ago•24 comments

Zen and the Art of Machine Learning Research

https://blog.jxmo.io/p/zen-and-the-art-of-machine-learning
42•jxmorris12•3d ago•12 comments

Gribouille 0.3.0: A Grammar of Graphics for Typst

https://mickael.canouil.fr/posts/2026-06-15-gribouille-0-3/
71•mcanouil•3d ago•19 comments

I found 10k GitHub repositories distributing Trojan malware

https://orchidfiles.com/github-repositories-distributing-malware/
780•theorchid•21h ago•203 comments

Zero-Touch OAuth for MCP

https://blog.modelcontextprotocol.io/posts/enterprise-managed-auth/
190•niyikiza•11h ago•65 comments

Fable Converted Pylint to Rust

https://pypi.org/project/prylint/
19•adamraudonis•4h ago•7 comments

How Japan's railways stayed one while splitting apart

https://arun.is/blog/jr-logo/
87•ddrmaxgt37•1d ago•73 comments

Datasette Apps: Host custom HTML applications inside Datasette

https://simonwillison.net/2026/Jun/18/datasette-apps/
72•lumpa•7h ago•25 comments

The AirPods Effect

https://www.theescapenewsletter.com/p/the-airpods-effect
83•herbertl•9h ago•137 comments

Building a robotics research setup that lives next to my desk

https://dfdxlabs.com/research/2026/robotics-setup/
75•mplappert•18h ago•24 comments

Ubiquiti: Enterprise NAS, Built on ZFS

https://blog.ui.com/article/introducing-enterprise-nas
330•ksec•18h ago•282 comments

Ice water drowning survival of young patient (2025)

https://www.jacc.org/doi/10.1016/j.jaccas.2025.104885
138•js2•5h ago•88 comments

CS 6120: Advanced Compilers: The Self-Guided Online Course (2020)

https://www.cs.cornell.edu/courses/cs6120/2025fa/self-guided/
364•ibobev•21h ago•51 comments

Show HN: Talos – Open-source WASM interpreter for Lean

https://github.com/cajal-technologies/talos
51•mfornet•19h ago•5 comments

.gitignore Isn't the only way to ignore files in Git

https://nelson.cloud/.gitignore-isnt-the-only-way-to-ignore-files-in-git/
409•FergusArgyll•22h ago•129 comments

Cell-based architecture for resilient payment systems

https://americanexpress.io/cell-based-architecture-for-resilient-payment-systems/
120•birdculture•3d ago•48 comments

Hospitals and universities repurposing drugs at lower cost

https://www.kcl.ac.uk/news/hospitals-and-universities-repurposing-drugs-at-90-lower-cost
304•giuliomagnifico•22h ago•136 comments

I told them forced consent was unlawful. 5 years later it cost Elkjop €1.8M

https://www.thatprivacyguy.com/blog/elkjop-forced-consent-fine/
374•speckx•14h ago•212 comments

Flexport (YC W14) Is Hiring in Indonesia, India, and Thailand

https://www.flexport.com/company/careers/
1•thedogeye•7h ago

The Raku Foundation is born

https://raku.foundation
14•librasteve•3d ago•4 comments

Many Let's Encrypt renewals had errors today

https://letsencrypt.status.io/#2026
139•widdakay•4h ago•87 comments

The Korean telecom giant at the center of Anthropic's Mythos controversy

https://www.wired.com/story/sk-telecom-anthropic-mythos-export-controls/
112•dstala•20h ago•91 comments

Show HN: Are You in the Weights?

https://www.intheweights.com/
336•turtlesoup•12h ago•188 comments

If your product is Great, it doesn't need to be Good (2010)

http://paulbuchheit.blogspot.com/2010/02/if-your-product-is-great-it-doesnt-need.html
74•skogstokig•3d ago•50 comments

W Social, public institutions and the theater of European digital sovereignty

https://blog.elenarossini.com/w-social-public-institutions-and-the-theater-of-european-digital-so...
207•nemoniac•20h ago•137 comments

Launch HN: TesterArmy (YC P26) – Agents that test web and mobile apps

https://tester.army
118•okwasniewski•18h ago•55 comments

Modos Color Monitor Pushes E-Paper Displays Further

https://spectrum.ieee.org/modos-e-paper-monitor
277•Vinnl•21h ago•67 comments