Should a programming Instructor urge students to use more efficient practices?
I'm not a coder but I am familiar with learning something for the first time. As a teacher, you have reached a level of mastery that allows you to do things automatically. As such, you are able to monitor your learning and catch mistakes that you make.

Students on the other hand, are completely overwhelmed with learning the basics of your field. We all remember learning to tie our shoes and or driving a car. There were many things that were not done in the most efficient manner when we learned these skills. Now however, these skills come second nature and we all have are own shortcuts to do them that we expect are children to acquire the first time we teach them, which of course they don't to our frustration.

In short, your students are experiencing cognitive overload just learning the basics and cannot process doing more than what they are doing now. Once the learn it the hard way they will start looking for ways to be efficient and fast. At this point, you can stretch them by showing them the faster way. To expect industry standard from a rookie is perhaps asking for too much from cognitive perspective.