I was one of those clueless engineering undergrads back in ancient times...I know the mentality of thinking since you know BASIC and can code up a brutally ugly solution in MATLAB that you know programming, as long as the right number is spit out on the command line. I also know, in my old age, that if the purpose of an engineering education is is about building higher order structures that can communicate intent and be extensible artifacts, that this is not acceptable. We need to put in place tools and methodologies that enforce good practice with code in the same way that we enforce good spelling, grammar, sentence, and paragraph structure in language, from the beginning.