Beautiful Code [315]
If you are looking specifically for scientific publications of my group, see the delta debugging home page at http://www.st.cs.uni-sb.de/dd.
Finally, a web search on "delta debugging" will point you to a variety of resources, including further publications and implementations.
When a Button Is All That Connects You to the World > Basic Design Model
30. When a Button Is All That Connects You to the World
Arun Mehta
Professor stephen hawking can only press one button," was the one-line spec we were given.
Professor Hawking, the eminent theoretical physicist, has ALS. This disease is "marked by gradual degeneration of the nerve cells in the central nervous system that control voluntary muscle movement. The disorder causes muscle weakness and atrophy throughout the body."[*] He writes and speaks using the software Equalizer, which he operates via a single button. It uses an external box for text-to-speech, which is no longer manufactured. The source code for Equalizer has also been lost.
[*]http://en.wikipedia.org/wiki/Amyotrophic_lateral_sclerosis.
In order to continue to be able to function should his outdated hardware fail, he approached some software companies, requesting that they write software that might allow persons with extreme motor disabilities to access computers. Radiophony, the company that Vickram Crishna and I started, was happy to take up this challenge. We named the software eLocutor[] and decided to make it free and open source, so that the problem with Equalizer should never reoccur.
[] Downloadable from http://holisticit.com/eLocutor/elocutorv3.htm.
The importance of such software in the life of a disabled person can hardly be overstated. Indeed, Professor Hawking himself is the best example of this. He has been able to become not only one of our leading scientists, but also an immensely successful author and motivator, only because software allows him to write and to speak. Who knows how much genius we have left undiscovered, simply because a child could not speak or write clearly enough for the teacher to understand.
Professor Hawking still continues to use the software Equalizer, which he has been familiar with for decades. Meanwhile, however, eLocutor is proving to be useful for persons with a variety of disabilities, particularly since it is easily customizable to the changing needs of the individual.
Our first question, and that of every engineer we explained this problem to, was: could we not find a way to increase the number of inputs Professor Hawking could provide? But his assistant was steadfast: Equalizer worked with a single button, and they saw no reason to change. We too saw the wisdom in writing software for the most extreme case of physical disability, for there were many kinds of binary switch that even a severely disabled person could press, operated by a shoulder, eyebrow, or tongue, or even directly by the brain.[] Having devised a solution that the largest possible number of people could use, we might then see how to speed up input for those with greater dexterity.
[] See, for instance, http://www.brainfingers.com/.
We also saw a niche market for an adaptation of eLocutor for a wider community. Software that could be operated using a single button might come in quite handy for mobile phones, for instance: the hands-free attachment typically has only one button. With appropriate text-to-speech conversion to eliminate dependence on the screen, it could also be operated by the driver of a car. Or, for another scenario, imagine sitting in a meeting with a client, and, without taking your eyes off her, you might be able to Google a name she dropped and have the search result unobtrusively spoken into your ear.
Of course, for a software writer, devising an editor that functioned efficiently using only a single button was quite an interesting technical