BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//pretalx//programme.europython.eu//europython-2026//speaker//NXPA9
 Z
BEGIN:VTIMEZONE
TZID:CET
BEGIN:STANDARD
DTSTART:20001029T040000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=10
TZNAME:CET
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:20000326T030000
RRULE:FREQ=YEARLY;BYDAY=-1SU;BYMONTH=3
TZNAME:CEST
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
UID:pretalx-europython-2026-LN7EF3@programme.europython.eu
DTSTART;TZID=CET:20260716T120500
DTEND;TZID=CET:20260716T123500
DESCRIPTION:This talk explores how **Python games can run entirely in the b
 rowser using WebAssembly (WASM)** and how they can also be **written and m
 odified directly in the browser using Python itself**.\n\nRather than trea
 ting the browser as a mere deployment target\, this talk presents it as th
 e **primary learning environment**. Learners interact with a browser-embed
 ded code editor where they write Python code that directly controls and mo
 difies a game\, which is also implemented in Python. This creates a zero-i
 nstall\, highly interactive learning experience where Python concepts are 
 introduced through familiar game mechanics instead of traditional REPLs or
  slide-based instruction.\n\nThe focus of this talk is **not on building a
  game engine**\, but on how **educators and instructors** can leverage **W
 ASM to safely run Python in the browser for teaching purposes**. The talk 
 introduces a tool I built that enables instructors to design browser-based
  Python tutorials using common game concepts such as scenery\, sprites\, a
 nd swatches\, making it easier to create engaging\, game-driven learning c
 ontent.\n\nThe talk covers:\n- How Python can be executed in the browser u
 sing WebAssembly\n- A comparison of **Pyodide vs. pyscript**\, highlightin
 g their benefits and limitations in educational contexts\n- How browser-ba
 sed execution changes assumptions around security\, isolation\, and infras
 tructure\nIn the latter part of the talk\, this approach is packaged as an
  **XBlock**\, the modular unit used to build courses in **Open edX**. This
  demonstrates how WASM-based Python execution can be integrated into large
 -scale learning platforms and how it compares to traditional server-side e
 xecution models such as **CodeJail**\, highlighting improvements in safety
 \, reduced infrastructure complexity\, and an improved learner experience.
 \n\n**WebAssembly enables a new class of interactive\, game-based Python l
 earning experiences** that run securely and entirely in the browser\, with
 out requiring local setup or server-side code execution.
DTSTAMP:20260524T121645Z
LOCATION:Theatre Hall (S2)
SUMMARY:Python Games in the Browser: Teaching with WebAssembly - Farhaan Bu
 khsh
URL:https://programme.europython.eu/europython-2026/talk/LN7EF3/
END:VEVENT
END:VCALENDAR
