~/talk

Technical Lessons Learned from Pythonic Refactoring

Talkat PyCon.DE 2017 · 2017-10-25..10-27· [developer-experience, python]
slides:none on file

Advocates measurable refactoring: write integration tests before refactor, change design without changing behavior, then add unit tests. Replaces dict params with namedtuple instead of dict, flattens nested conditionals into guard clauses, renames for clarity, and avoids the common trailing-comma tuple bug. Cites scale at Yelp — 300 microservices and 500+ engineers — and claims small refactoring investments (one week) regularly save more time later and keep APIs stable while improving readability.

AI-written summary · about

  1. 0:00Intro
  2. 0:41About Yelp
  3. 1:47Agenda
  4. 2:09What is refactoring
  5. 2:42Why is refactoring important
  6. 3:24Productivity
  7. 4:40Refactoring
  8. 5:45Categories
  9. 7:20Useless Code
  10. 8:19Message Chains
  11. 9:12Inappropriate Naming
  12. 10:45Example
  13. 17:33Sun of Python
  14. 18:04Python Style Guide
  15. 18:36NamedTuple
  16. 19:30Consistent indentation levels
  17. 20:39Pepe package
  18. 21:29Nested dictionary
  19. 22:01Named tuple
  20. 22:40Role of testing
  21. 23:55Integration test and unit test
  22. 24:45Recap
  23. 25:04We are hiring
  24. 25:18Contact us
~/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.