~/talk

Re-Architecting Applications (Without a Rewrite!)

Talkat DevFestMN 2018 · on Saturday, 2018-02-10· [frontend-architecture]
slides:none on file

Argues a concrete process — Explore, Experiment, Expand, Embrace — for evolving a legacy app without a rewrite, shows Trello’s Kotlin migration reaching 35% Kotlin, and describes a year‑and‑a‑half offline project that ships continuously using feature flags, shims and a offline card service mediator to switch methods per API call. Calls out failures: a month‑and‑a‑half wasted on a bad identifier scheme, misused RxJava patterns, and long‑running dual codepaths that eventually needed consolidation.

AI-written summary · about

  1. 0:00Introduction
  2. 0:35What is Architecture
  3. 1:17Smaller Architectures
  4. 1:44Lego
  5. 2:13Jenga
  6. 2:33House of Cards
  7. 2:59ModelViewController
  8. 3:38New Architecture
  9. 3:52Rewrites
  10. 5:26Goals
  11. 5:59Remodeling a house
  12. 6:19We are connecting
  13. 6:36Prevent overly ambitious rewrites
  14. 7:51Explore
  15. 9:54Experiment
  16. 13:01Expand
  17. 14:43Embrace
  18. 15:51Disclaimer
  19. 16:59The Second Goal
  20. 17:18One Key Observation
  21. 17:44Parallel Development
  22. 17:54Three Strategies
  23. 18:08Decouple Code
  24. 19:14Feature Flags
  25. 21:03shims
  26. 22:07Trello
  27. 22:58The old architecture
  28. 25:46CardService Mediator
  29. 27:00WebSockets
  30. 28:48Offline Mode
  31. 30:29Failures
  32. 30:46Research and Development
  33. 33:23Experimentation failures
  34. 37:30Expansion failures
  35. 41:26Embrace failure
  36. 42:16Discovering a cool architecture
  37. 43:32Domainspecific models
  38. 44:49Models
  39. 46:00Unidirectional Architecture
  40. 47:54Conclusion
~/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.