Motivation of the junior who brought the idea
A junior colleague comes to you with an idea on how to refactor/improve the existing functionality in the system you are developing together. You're very happy that he's trying to think about things, and you definitely commend him for it, and give the possibility a try.
During the analysis, you discover that the proposed solution is not better than the existing one, and even contains design problems. Unfortunately, though, these are such tricky problems that you can't directly point them out, and they are based more on gut feeling and experience based on running other systems. For example, a newly proposed solution could with some probability increase operating costs by about 30% and you would have to partially retrain the existing team.
How do you decide?
- you use an appeal to authority, and simply reject the solution because you don't see much benefit at present.
- Do you try to use the proposed solution, which is slightly better, so that the junior gains a new experience, but you can't quite predict the impact accurately?
- In your spare time, you try to think (this will take about 4 hours of extra work) how to improve the proposed solution, suggest changes, and then use that.
- You try to explain to the junior that his suggestion stems from a misunderstanding of the nature of the current design, so he has chosen an inappropriate solution, and you take the path of established experience, even though you know you will lose the opportunity to move in a modern direction overall.
- Another solution...