We're using a very similar function in our code, and an x-box controller and it works great... the best way to look at it's capabilities is to run some numbers through it:
Code:
in out
-127 -127
-120 -107
-110 -83
-100 -62
-90 -45
-80 -32
-70 -21
-60 -13
-50 -8
-40 -4
-30 -2
-20 0
-10 0
0 0
10 0
20 0
30 2
40 4
50 8
60 13
70 21
80 32
90 45
100 62
110 83
120 107
127 127
So it reduces sensitivity at the center (ie your robot doesn't move at all when you aren't touching the controller), and it increases the range at which your robot is manageable (ie doesn't have a huge speed), but it gives you the maximum speed when you really need it.