~/talk

Rewriting Legacy Code

Talkat phpday 2021 · 2021-06-08..06-09· [developer-experience]
slides:none on file

Five concrete migration strategies are explained: version upgrade, progressive rewrite, framework swap, refactoring and full rewrite, with when to pick each and why. The process uses automation tools like rector and phpstorm, converts thousands of classes (500 models, 67k lines) and handles huge bases (4 million lines took six months). Tests are practical: write characterization tests that survive migration, then add unit tests for new code. Includes dockerized baseline/migration environments, anonymized production DB dumps, and common gotchas.

AI-written summary · about

  1. 0:00Start
  2. 0:48Ana Filina
  3. 1:55Legacy Code
  4. 4:57Zen Framework
  5. 6:49How To Deal with Legacy Code
  6. 10:59Dynamic Types
  7. 13:35How To Not Do a Rewrite
  8. 17:29Which Approach Are You Going To Be Using for Rewriting Your Code
  9. 19:01Progressive Rewrite
  10. 19:44Version Upgrade
  11. 20:24Version Upgrades
  12. 25:49Phpstorm Plugins
  13. 29:14Swap Out the Framework
  14. 30:45Adapters
  15. 36:45A Progressive Rewrite
  16. 38:22Use Design Extraction
  17. 39:19Refactoring
  18. 49:12Characterization Tests
  19. 51:02Progressive Rewrites
  20. 52:44Gotchas
  21. 56:18Can You Suggest any Technique on How To Estimate the Work Needed To Write a Legacy Project
  22. 1:02:57When Is the Correct Step Planning First Phases To Understand if It's Better To Do a Project from Scratch
~/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.