I have an intern and he writes code fast.
However, I have difficulty making him understand the importance of writing classes and follow the OOP paradigm.
We recently had a discussion that went like something this:
"Instead of having this long function that extracts data from two different queries and then combine the data into a new data structure as a standalone function, why not start by putting it in a class?
I understand that it's not much differences for now, but I can foresee that this class will grow to have more functions and the next guy who takes over will naturally refactor the giant function into more functions within the same class."
When he objected, I told him, "Okay, I gave you my criteria (write the function within a class) and my reason (we will likely have it as a class in the future, might as well start now no matter how imperfect the start). If you have a better criteria and a better reason, why don't you suggest it?"
One day later his reply was, "python is an object oriented programming language so when codes are organised inside a file, it is somewhat oop alr"
How do I make him understand the importance or better yet appreciate the importance of software craftsmanship?
In case, I made some bad assumptions myself, I am willing to stand corrected and I understand the dangers of asking this question and having it closed down. So if there was a better place to pose this question, I am willing to try it.