I coached for several years, and the advice of keep it fun is key!
One thing I always did was take the last 10 minutes of practice and let the kids play wiffle ball with the biggest bam bam bat that I could find (teaches to be aggressive with the bat). We would move the bases in about half the distance of normal and then divide the kids in to two teams and the team in the field did not get to use gloves (teaches to use two hands). I would pitch for both and each batter got 3 pitches, if they didn't put the ball in to play they were out.
We called it BubbaBall, but the key to it was to end it after only one inning, or 10 minutes whichever came first (make sure all kids get a chance to bat though). The philosophy was always end practice with them not wanting it to end.
One time during practice the kids were being inattentive and wasting alot of time, so when it came time to play BubbaBall I told them that we weren't going to, since I had to make up all the time that they wasted durring practice. You better believe those kids were perfect little angels the next practice.