Some of this got me thinking, for I had a case where I literally yelled at a student. Mind you he was in a professional flight program, had 150-ish hours, had been operating out of this airport for a year. This kid was lazy, and just wasn't putting forth the effort I thought, and honestly I think it was because this training was just being handed to him.
Basically this kid needed a fire lit under his ass, and I was the one that did it. Sometimes it's warrented, and this case I know it was effective because he handled himself in a much more professional manner and actually had a drive to improve himself.