~/talk

Large-Scale Refactoring @ Google

Talkat CppCon 2014 · on Wednesday, 2014-09-10· at 16:45· Pascal· [engineering-leadership]
links:none on file
slides:none on file

Google builds a compiler-driven refactoring pipeline (indexer + ClangMR (clang + map reduce)) that generates, shards, formats and tests edits across a mono repo of ~100 million lines with ~4,000 C++ engineers and ~30,000 daily changes. Migrations target concrete problems not vague examples: converting 50,000 callers of old APIs, surfacing API-difference bugs, and replacing internal pointer types — the std::shared_ptr migration succeeded after making the old API a strict subset and flipping the typedef; unique_ptr work requires deeper cross-package and toolchain fixes.

AI-written summary · about

  1. 0:00Introduction
  2. 1:03What is refactoring and why it matters
  3. 6:22Refactoring at increasing scale
  4. 8:51Google's massive codebase
  5. 13:52Tooling for large-scale refactoring
  6. 17:00ClangR and refactoring pipeline
  7. 23:47Formatting, sharding, testing changes
  8. 27:37Fast-moving codebase challenges
  9. 30:46Case studies: shared and unique pointers
  10. 41:21Refactoring at scale necessity
  11. 42:02Q&A: Tool development
  12. 44:29Q&A: Static analysis and reviews
  13. 45:54Q&A: Prioritizing refactorings
  14. 47:17Q&A: Large change reviews
  15. 48:21Q&A: Sharding strategies
  16. 50:27Q&A: Tool accessibility
  17. 51:56Q&A: Name collisions and ODR
  18. 53:24Q&A: Binary compatibility
  19. 54:27Q&A: Legacy code refactoring
  20. 56:17Q&A: Year 2037 problem
~/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.