Python 3.15: features that didn't make the headlines

Python’s role in a “post‑AI codebot” world

  • Several commenters report rewriting large Python codebases (100k+ LOC) in Go or Rust, citing:
    • Much faster and more reliable services.
    • Better fit with static typing and compilation, which help verify AI‑generated code.
  • Others argue Python is still excellent for:
    • ML/AI, research, scripting, and rapid prototyping.
    • “High-value tokens” (concise, readable code) where raw speed is less critical.
  • Disagreement over whether Python truly gives faster development than TypeScript/Go/Rust.

Language design, ergonomics, and ecosystems

  • Criticisms of Python:
    • Indentation-as-syntax, weak lambdas, slow and evolving type checkers, GIL, FFI story.
    • Dynamic typing making large codebases hard to reason about.
  • Defenses:
    • Indentation is natural, reduces syntactic noise.
    • Python is readable, high-level, and has long been effective for business and prototyping.
  • Some see Rust, TypeScript, Kotlin, C#, or Go as better “sweet spots” for new work.
  • Web dev split:
    • Python/Django praised for server‑rendered CRUD and simplicity.
    • Others prefer TS/JS stacks (e.g., TSX templates) and claim far superior DX.

Python 3.15 features and semantics

  • Lazy imports:
    • New lazy imports and lazy evaluation of type annotations (PEP 649/749) discussed.
    • Some see this as overdue, long‑requested, and helpful for huge codebases/startup time.
    • Others view it as complexity driven by big companies, with added security/testing risk.
  • Improved error messages:
    • AttributeError hints now map common names from other languages to Python equivalents; widely liked.
  • ContextDecorator changes:
    • Now covers full lifetime of coroutines/iterators; seen as a good but potentially subtle behavior change.
  • New iterator synchronization primitives and except*/ExceptionGroup improvements are welcomed but considered niche.
  • Some feel new features erode “Pythonic zen”; others say modern Python is better than ever.

Security and supply chain concerns

  • Anxiety about pip installing unvetted code with full $HOME access.
  • Replies stress:
    • Unix has no isolation between processes of the same user; Python alone can’t fix that.
    • Recommended mitigations: containers, devcontainers, VMs, separate users.
  • Concern that growing supply‑chain attacks may eventually hurt the ecosystem.

LLMs and language evolution

  • Mixed reports on LLM performance:
    • Python code quality varies; static typing scarcity may hinder reasoning.
    • TypeScript often works very well; Rust support is improving but less idiomatic.
  • Worry that LLMs will lag behind new Python features until retraining catches up.