~/talk

It Works on My Machine: Writing Python Code for Any Environment

Talkat EuroPython 2015 · 2015-07-20..07-26· [python, developer-experience]
github:kyleknap
slides:none on file

Case studies from the AWS CLI show concrete fixes: use six and a project-level compat module to import renamed APIs, vendor or conditionally depend on backports for Python 2.6, normalize path separators for Windows vs POSIX, and convert incoming bytes to Unicode early. Tests run under tox and CI (Travis/Jenkins) across Python 2.6–3.x and OSes. A surprising bug is corrupted uploads on Windows solved by funneling writes through a single IO thread instead of concurrent seeks.

AI-written summary · about

  1. 0:00Intro
  2. 0:23Familiar?
  3. 0:56Why does compatibility matter?
  4. 1:59What will be covered?
  5. 2:26The Example Application AWS Command Line Interface
  6. 3:41Renaming: Intro
  7. 4:34No six compatibility
  8. 6:09String Types: Intro
  9. 6:55Python String Types
  10. 7:33Python 2
  11. 10:17Limitations: Intro
  12. 10:31Backports
  13. 12:50File Handling: Intro
  14. 14:05Problem - Issues when concurrently writing to the same file on Windows
  15. 14:57Lessons Learned
  16. 15:50File Paths: Intro aws s3 cp --recursive
  17. 16:30Example: Linux
  18. 16:53Example: Windows
  19. 18:22Functionality: Intro
  20. 20:28Solution (cont.)
  21. 22:29Writing: Intro
  22. 23:17Dependencies
  23. 23:57Best Practices: Inputs
  24. 25:05Best Practices: File Handling
  25. 26:23Best Practices: Env. Specific
  26. 27:26Best Practices: Main Points
  27. 28:00Running: Intro
  28. 28:38Running: Example
  29. 29:20Running: Systems
  30. 30:06Major Points
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.