DEV Community

Discussion on: How Do You Understand a Complex Code Base?

Collapse
 
vorsprung profile image
vorsprung • Edited

It depends

If the system is live and broken for some case (maybe there was an update to a dependency that went badly) AND if it using a scripting language that you can alter then putting in tracing all over the place is quite good

The one thing to look out for is coupling through multiple channels.
For example, program A is supposed to talk to program B via a REST API. But hey, look they are on the same machine so some genius made them both share state via a file!

That kind of thing happens all the time and makes it difficult to understand emergent behaviour

Collapse
 
emmanuelobo profile image
Emmanuel Obogbaimhe

Lol yea those make things tough. I’ve experienced this. Thanks!