Ben Krasnow has designed and built a joystick that contains no electronic parts — only fiberoptics. The motion is sensed via quadrature encoding, and the signal processing is handled by an arduino microcontroller. In his video he explains how this joystick works, how the transmitters sends the light, how it is encoded into axis position and how an Arduino reads this position. Watch his video.
Fiberoptic joystick with quadrature encoders and arduino - [Link]