Compared to just being told these things are bad and should be avoided, I'd like to think that being forced to code in the above ways makes you better rounded as you have first hand experience for why those practices are a bad idea. It's not like you have much choice if you have to code in something like assembly as well.
I've worked with programmers before who can regurgitate the names of current bad practices but can't describe the reasoning behind them which isn't a good thing.
Personally, I think it's an absurd idea that e.g. if you began coding with all global variables and no functions you'd be unable code in a different way. If you're amazing at coding in an environment that makes it challenging to write complex programs, you're going to quickly become efficient at writing code in environments that makes it easier to write complex programs.