Me gradué de la universidad hace unos cinco meses y he estado trabajando en una startup local durante los últimos cuatro meses. Mientras estaba en la universidad, estudié Haskell, F # etc por mi cuenta. Nos enseñaron Java en la universidad, pero me expusieron a la programación funcional muy pronto, y pasé mucho más tiempo con ella que con la programación imperativa. Como resultado, mi cerebro está conectado a un pensamiento funcional. La compañía a la que me he unido usa Python, y el código es muy imperativo. Me está costando mucho leer el código imperativo. No puedo hacer un seguimiento de las mutaciones. Cuando un anidamiento for-if-else-for -... tiene más de cuatro niveles de profundidad, pierdo completamente el rastro de lo que está sucediendo en el código. Para agregarlo, Python es un lenguaje dinámico, por lo que no hay tipos en el código. Han pasado semanas desde que intenté entender una parte de nuestro código base (que supuestamente es 'moderadamente complejo'), pero hasta ahora no he logrado ningún progreso apreciable en su comprensión. Por favor, ofrezca algunas técnicas prácticas sobre cómo debo ir para entender ese código. Gracias de antemano!
Editar:
Tal vez debería mencionar que realmente no hay muchos comentarios en el código, y los nombres tampoco son muy intuitivos.