It takes a lot of patience but it is oh so rewarding. I like to think of it as "software archaeology".
It's fun to gradually discover the model that the programmer was intending to program, then to see where it broke down X months/years later and was fixed with a hack. Then, you get to design a new model that fits both cases elegantly, instead of just a subset.
You kind of feel like the scientists in Jurassic Park! :)
It's fun to gradually discover the model that the programmer was intending to program, then to see where it broke down X months/years later and was fixed with a hack. Then, you get to design a new model that fits both cases elegantly, instead of just a subset.
You kind of feel like the scientists in Jurassic Park! :)