I've once had a course involving programming and the lecturer rewrote the code, which we were usually using at our institute, making ALL variables global. - Yes, also each and every loop counter and iterator. 🤪
There’s no way you teach a uni course and do this kind of thing unless to demonstrate poor practice/run time difference. Are you sure you were paying attention?
Yes. He really thought it was efficient and would avoid errors if literally all variables were defined in a single Matlab function he called at the beginning of the script. We students all thought: "Man, are you serious?"
As we didn't want to debug such a mess, in our code, we ignored what he was doing and kept using local variables.
Yes, it was a course on finite deformation material models. And no, you do really, really not want to declare each and every variable in your material subroutine globally for the whole finite element program.
That's why when your job hires new people right out of college they have no idea what they're doing and now must be trained how to actually do the job. "What, you mean we aren't writing this enterprise application in python!?"