Build from strength not weakness
When I started coaching I often found myself very aware of each players weaknesses, and working on drills and other techniques to eliminate these weaknesses. And there is certainly value in working on the weaknesses. However, there is also great value in identifying, improving, and using each players strengths. Nobody likes to constantly be told about, and work on, weaknesses.
As an example, one of the teams I coached had a player who wasn't very good. He was a forward who couldn't handle the puck and wasn't particularly fast, and never scored a goal. He would stand around the ice and not help out very much, but he loved the game, came to every practice, and wanted to be a contributing member of the team.
What had happened to this player was so many coaches and players had yelled at him for mistakes and his weaknesses that he had learned that the best solution was to do nothing. He had concluded that there was simply less chance to get yelled at if he stood around. He had virtually no confidence. On top of this, the players gave him no respect. He was labeled "bad" by the players and other coaches. He now had become convinced that he was "just a bad player".
I remember this player so well because it was the first time I thought to ask myself, "ok, you know what this kid can't do, but what does he do well? How can he help and contribute?" So I started watching this player in a new light, as a detective on a mission to find the hidden strength. In the past I only knew what he couldn't do. Now I noticed that whenever this player was in a collision he usually emerged standing, and with a smile on his face. He liked the physical part of the game, and was good at it. So I changed him from forward to defense and told him to "keep the crease clear". I also told him it didn't matter to me if he ever scored a goal. And I didn't care if he couldn't rush the puck or keep up with the other players. On my team he was going to play a lot, and he was going to clear out the crease.
In practice we started working on his strength with checking drills, "moving out of the crease" drills, etc. It turned out that lots of the other kids weren't very good at these drills, while this guy thrived. He had finally found something in hockey that he was good at, and he got better and better as we worked on it. By the end of the year several things happened:
The player went from being an outcast on the team to a respected teammate.
The player's self esteem rose dramatically.
The player's ability in other areas, such as puck handling, improved dramatically as his self esteem improved and he was willing to try other things.
The player played hockey the next year.
Nobody came near our goalie.
So, make sure you tell each player what they are good at, and emphasize the good qualities. There is something that every player can do to help the team. From that little spark great things can follow.
When players come back from a shift many coaches will tell them what they did wrong on that shift. This is an easy trap to fall into as a coach because we coaches can easily see all the mistakes. However, to always hear "advice" and (usually criticism) after ever shift just wears you out.
A good rule of thumb is to "say 5 positive things to each player for each negative remark". I think you will be amazed how hard this is to do. Ask an assistance coach to monitor you during a game. I did, and found that I was about 1 to 1. Some coaches are about 10 negatives for each positive.
After most shifts I will say nothing to the players. I believe that you can only talk to each player 1-2 times a game or they tune you out. When I do talk to them I will often tell a player what he did correctly, and nothing else. For example, a player may have put a nice check on another player, with good form, stick and elbows down, etc. Not a huge check, just a nice clean bump. After the shift I'll go up to the player and say, "that check was perfect, great form, stick down. Just perfect". I like to reinforce the positive. It seems to work better.