How do you manage your codebase once it gets large?
Kliment: Segmentation, interfaces, documentation.You want to make changes that do as little damage as possible. By structuring your project so that independent functions are really independent, you can think about them independently. Providing interfaces to your own code also helps there, you can ignore one part of the code and just use its functionality, and only have to keep the interface in your head. Also, notes-to-self often help provide context and memory cues to reload something you've forgotten. Either way, you should be using source control. That way you can look at the changelog for a file and reconstruct what you did with it, again helping you recall structure.