~/talk

A Tale of Two Codepaths: Notes on a Refactor

Talkat RubyConf Colombia 2017 · 2017-09-08..09-09· [frontend-architecture]
links:none on file
slides:none on file

A yearlong rewrite replaces an inheritance-heavy payment plan system with a configuration-driven, composable design that uses the verbalize gem for single-purpose action classes, isolates routing with seams so one subtype migrates first, and preserves the public interface by overwriting associations to read new tables. Release uses feature flags via environment variables to ship dark, integration tests exercise idempotent actions and transactions, and the plan insists on documentation, staged migration, and scheduled deletion of deprecated code.

AI-written summary · about

  1. 0:00Intro
  2. 0:42Where I work
  3. 2:37Why refactoring
  4. 4:07Planning and design
  5. 4:23What is refactoring
  6. 4:51Refactor at work
  7. 5:22Refactor
  8. 5:49Key Indicators
  9. 6:21Payment Plan Architecture
  10. 7:07Needs
  11. 7:29First Things First
  12. 8:00Document
  13. 8:17Design
  14. 9:20Guiding Principles
  15. 10:58Plan
  16. 11:51Verbalized Jim
  17. 12:19verbalize
  18. 13:11Getting there
  19. 13:21Planning
  20. 14:26Seams
  21. 14:59Case Study
  22. 16:16New Public Interface
  23. 17:47New Data Structures Example
  24. 19:36Why Release Change
  25. 21:35Inflight Population
  26. 22:25Example
  27. 24:00Integration Tests
  28. 24:17Idempotency
  29. 25:31In hindsight
  30. 26:02Things to remember
  31. 26:36Clean up after yourself
  32. 27:09Delete in hindsight
  33. 27:21Take care of yourself
  34. 27:35Avoid burnout
  35. 28:02Remember the basics
  36. 28:26Have fun
  37. 28:49Takeaways
~/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.