CppCon 2018:H. Wright “Large-Scale Changes at Google: Lessons Learned From 5 Yrs of Mass Migrations”
CppCon2 HN recommenders · recommended in 2 months, 2019–2024
talk · advanced · evergreen · 2019–2024 on HN
Hyrum Wright shares lessons from five years of mass code migrations in Google's huge C++ codebase. He covers why to migrate, how hard it really is, and how Google updates core libraries and their users continually.
HN points to it in monorepo and refactoring discussions as a great account of large-scale changes at Google.
Up next
5 mo on HNStanford Lecture: Don Knuth—"A Conjecture That Had To Be True" (2017)
Stanford Online
1 HN recommend · 2017–2023
11 mo on HN🚀 TDD, Where Did It All Go Wrong (Ian Cooper)
DevTernity Conference
11 HN recommender · 2018–2024
11 mo on HNBret Victor The Future of Programming
Joey Reid
12 HN recommender · 2017–2026
10 mo on HN"Uncle" Bob Martin - "The Future of Programming"
Paul Stringer's Mobile Tech
10 HN recommender · 2016–2022
10 mo on HNTim Ewald - Clojure: Programming with Hand Tools
ClojureTV
9 HN recommender · 2014–2024
9 mo on HNUsing Python to Code by Voice
Next Day Video
12 HN recommender · 2013–2025
9 mo on HNTransforming Code into Beautiful, Idiomatic Python
Next Day Video
9 HN recommender · 2014–2022
9 mo on HNAgile is Dead • Pragmatic Dave Thomas • GOTO 2015
GOTO Conferences
11 HN recommender · 2016–2026
8 mo on HNPlover: Thought to Text at 240 WPM
Next Day Video
8 HN recommender · 2014–2023
8 mo on HN"The Economics of Programming Languages" by Evan Czaplicki (Strange Loop 2023)
Strange Loop Conference
10 HN recommender · 2023–2026
8 mo on HN"The Mess We're In" by Joe Armstrong
Strange Loop Conference
10 HN recommender · 2014–2025
7 mo on HNPrinciples of Technology Leadership | Bryan Cantrill | Monktoberfest 2017
RedMonk Tech Events
9 HN recommender · 2018–2025
3 comments from Hacker News
Coupling happens due to other reasons than poor contracts. The discussions from Hyrum Wright from Google about large-scale refactoring are great in this respect. ▶ this video
See Hyrum Wright's talks on Large-Scale Changes at Google: link (CppCon2014), ▶ this video (CppCon 2018), and paper by Googlers on ClangMR ( link ). It's great! And if you'd like to learn more about how monorepos work in practice there's a couple of papers: link and link (Also worth reading: link )
> Refactors are rarely as simple as moving a few file names or symbols around, at least where I work. While we do have some automation to help (and not break existing consumers), it’s significantly more involved in an SOA architecture for tier1 services. These sorts of big refactors also generally come with data model changes, performance profiling etc. This tool seems fantastic for parts of that, but not all of it. Yes, I'd refer to that as a migration, which absolutely is a lot of effort, but a tool like this isn't going to be particularly helpful with a migration precisely because the majority of the effort with such a migration will be like...doing all the data stuff and traffic stuff. Changing the code is a minimal part. A refactor is often not a thing that even registers at a smaller company, because its on the scale of a few files. But "Large Scale Changes" are a thing when you end up having millions of lines of code ( ▶ this video ), and tools like this one are useful for those kinds of changes. But a single LSC won't get you promoted. And rf is neat, but in a very go way, it's not particularly exciting if you're familiar with link or link or clangmr or link , or outside of google Semgrep and Bowler and others, since its essentially the same, but built in go for go. > Just as a friendly aside, your tone seems strangely defensive (though this may just be my fault reading this tired at 3AM) Not at all. I was however, pointing out that "this was really just a way to bra