~/talk

Code Archeology

Talkat #Pragma Conference 2019 · 2019-10-09..10-11· [legacy-modernisation]
slides:none on file

Legacy Objective-C/Objective-C++/Swift code includes an 8,000‑line view controller, ~100 imports in AppDelegate, and pervasive shared singletons; the team uses unit tests, TDD, and 17 months of daily pair programming to extract inputs, assert NSAttributedString outputs, move UI logic into a view model, replace class methods with instance methods via decorated singletons, shift start‑time measurement to the top of launch, and measurably speed cold start while keeping behavior safe with injected dependencies.

AI-written summary · about

  1. 0:00Introduction
  2. 0:41What is Allegro
  3. 2:52What is Code Archeology
  4. 8:14Pyramid of Doom
  5. 9:14Obstacles
  6. 10:24What can you do
  7. 12:09Unit tests
  8. 14:04Archeology
  9. 15:36Code snippet
  10. 17:15Dependency injection
  11. 20:37Other code fragrances
  12. 22:44Dispatch
  13. 24:59Code Fragrance
  14. 30:43Traps
  15. 34:46Legacy code
~/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.