This story reminds me of a Java 1.x codebase I worked on that didn't use generics even though we were on Java 1.6 by then. The number of lines affected seemed astronomical--it was a retail trading app that had evolved over many years from using AWT to Swing JPanel and rarely other Swing components with the data handling similarly stunted. I took it upon myself to incrementally add type information in chucks as a side project. After a number of months, less than 12, I finally got to under 1000 warnings which was the first time I had a sense of how many there even were. A short time later it was done. Interesting thing was that there was only 1 bug exposed where an ClassName@pu4k3 sort of string would get added to a list/combobox under some race conditions. The codebase was much happier place to be after the changes.