OOPSLA 2001 Workshop Software Archeology: Understanding Large Systems
How do you come to grips with 1,000,000 lines of code right away?
Programmers are often given a large system they've not seen before, built by people they don't know, touched by many people since, documented sketchily if at all. They're told to improve it. Their task might be to fix a bug, add a feature, or complete a refactoring. They are under time pressure, so they need to minimize the total time spent learning and the time spent improving.
In this workshop, we will share techniques and approaches for understanding enough about a lot of code in not much time. We are concerned not just with speed, but also with confidence: how can you know you've made an improvement, not made the system worse?