Weekend.Dev Goes to PyCon US 2023
Learn about all the new, exciting Python projects and new support for web and mobile development!
This past week, we traveled to PyCon US 2023 in Salt Lake City, Utah! We met many new friends, and had fun during many deeply technical talks. The highlights include four emerging themes across the community:
⚡ Python is fast now! 3.11 and 3.12 include huge performance boosts. The core team is focused on speed, so expect more in the future.
🌐 Python is coming to the web browser! Traditionally, it just ran on your computer or a server.
📱 Python is coming to mobile! There was discussion of adding iOS and Android support in the future.
❤️ Python Loves Rust! There are new projects using Rust under the hood to make things fast.
⚡ Python is Fast?
That's right! Python 3.11 runs programs on average 25% quicker.
Specializing Adaptive Interpreter: the core team has built support for Python bytecode instructions that specialize based on data types they are processing (like integer and float).
Working Around the GIL with asyncio: concurrency is limited by a Global Interpreter Lock (GIL) in Python. In this talk, Łukasz Langa discussed using asyncio and shared memory to easily work around this.
3.12+ Roadmap: the core team made it clear they would continue the work with speeding up Python and projects like the Specializing Adaptive Interpreter. This also includes optimizing usage of memory.
📱 Python: Coming to the Web and Mobile!
Web and mobile are new emerging themes for Python. And, well, as the most popular programming langauge in the world, it is odd that Python isn't on the most popular user platforms! That is all changing rapidly:
PyScript: first announced in 2022, it is becoming a platform pushed by Anaconda and now its own community. You can use PyScript to build front end applications in Python, or for teaching easily with just a web browser.
WASM Target: as of Python 3.11, Python released initial support for WASM—a way of running code natively in the browser. At PyCon, there was even a WASM working group!
Beeware's Briefcase: has support for packaging Python for iOS and Android. The community discussed supporting this more widely, similar to WASM.
❤️ Python Loves Rust
The Python and Rust community are deepening collaborations with new tooling and frameworks combining both languages.
Robyn: need a fast API framework? Robyn is for you. Flask-like Python syntax, with super fast Rust underneath. It's currently one of the quickest web frameworks in the world.
Ruff: is a static analyzer for Python written in Rust. It's so quick, and has so much functionality, Al Swiegart wondered if we even needed any other tools!