Some forms of assistive technology challenge our conceptions of technology enhanced performance. Voice recognition software for programming is very uncommon, yet necessary. One way to reduce the amount of typing while programming is to use speech recognition. Programming itself has a structured format that can be incorporated into an IDE that enhances speed of code production with fewer keystrokes and navigation through the display.
Its needs to be easy to learn, preferably using spoke constructs that the programmer already knows. But, would all programmers naturally speak the same language when they verbalize their program? This question was answered by Andrew Begel and his team in their paper: An Assessment of a Speech-Based Programming Environment. They conducted an experiment in which participants read a one-page pre-existing Java program out loud. They found that there does exist a common vernacular among programmers for speaking programs despite the diversity of their educational training. This enables us to create a verbalized programming language definition which will work for most programmers.
There's a very specific issue to address, and it should be planned in the way of a whole new environment, taking advantage of the existing tools for programming but having in mind that it has to satisfy specific needs. Because the target is to program by voice recognition, the future work would be in the way of a whole new kind of interaction, a new kind of input.