this is based on a couple of samples I have seen to make a snake-like trail - you use an array to track the position of the ball (and paddle) and then set the trail to positions in the array. that is how the trail bends when it bounces off of something.
I used particles to make the sparks when the ball hit something, and randomly changed red, green, and blue values to make the colours change...
kind of close to what happens in the video, but this is just a quick and dirty attempt.
in the video, they clearly use additive blends and screen shakes to make it more dynamic - I didn't try that.