Edward E. Lee's "Computing Needs Time" (May 2009) might be the most important, stimulating, and timely article I have read in Communications over the past 50 years. It dealt with a major technical topic long neglected by ACM but that is today more important than ever. One sentence in particular resonated: "It is easy to envision new capabilities that are technically within striking distance but that would be extremely difficult to deploy with today's methods." Having been involved in the development of embedded systems in military aircraft from 1968 to 1994, I would say that to succeed, computerized performance systems need the following:
Knowledge. Of the operational objectives and requirements of the system;
Discipline. At all technical and management levels to assure system resources are well defined and carefully budgeted, with timing at the top of the list; and great care
Selection. Of exceptionally self-directed project personnel, including pruning out those unsuited for such system-development work.
You might view them as platitudes, so consider, too, several examples from four programs involving military aircraft:
In both the P-3C maritime patrol aircraft and the carrier-based S-3A antisubmarine aircraft, senior software engineers (in both the contracting agency and the contractor) developed a set of real-time software "requirements" that could not be met with available memory. In each case Navy program managers were steeped in the operational requirements and had exercised their authority to severely limit them.
In the case of the F-117 stealth fighter, an important new operational subsystem was never deployed. The customer and the Lockheed Advanced Development Company jointly invented a set of utopian system "requirements," basically ignoring management directions. The customer's program manager and Lockheed finally agreed to cancel the project.
It was no surprise 20 or 30 years ago that technical people involved in the development of demanding embedded systems learned primarily on the job, with more trial and error than we care to admit but that we accepted. Are universities today educating the new generation of systems and software engineers so they are able to develop computerized performance systems? In my own recent cynical moments rebooting my Mac, I think such software development is being done by people who would, perhaps, be downright dangerous if assigned to develop critical computerized performance systems.
In any case, Lee's technical vision and thinking were truly impressive, as was his skill in communicating them.
Sherm Mullin, Oxnard, CA
Kristen Shinohara and Josh Tenenberg were absolutely correct in "A Blind Person's Interactions with Technology" (Aug. 2009) saying that replacing text with voice does not automatically provide the blind interaction with or even access to technology. However, they might have added that this says more about how the sighted value text and its characteristics (such as left to right, fixed character sets, and lamina) than it does about the absence of that value in the blind.
In trying to teach computer science to two completely blind students, I have found that two key issues—mathematics and design—are both so dependent on spatial arrangement that the standard approaches are at best unreliable and at worst confusing. Even a cursory glance at the excellent Blindmath notice board (http://www.nfbnet.org/mailman/listinfo/blindmath_nfbnet.org) demonstrates the importance of Abraham Nemeth's Braille coding for math-symbol layout to both experienced practitioners and as a tool for the young learning skills in the field. However, symbolic and spatial presentation (for the most part the essence of the mathematical teaching method) has little to do with the ability to achieve proficiency in mathematics or computing. Simply linearizing the symbols and spatial arrangement for access by the blind through voice (or Braille) techniques could still miss the point but seems to be the best we can do today.
Similarly, teaching design as hierarchical decomposition and spatial layout redolent in techniques (such as UML) also misses the point; it might thus be replaced by the simple text "generate a hierarchical decomposition and group the resulting units" with examples of what is meant and any of the tricks that might be available. Noting that time arrangement could be replaced with spatial-arrangement restrictions compounds the challenge. (A bundle of tactile knotted strings might be a better exemplar of hierarchy than a neat 2.5D graph, as I believe Donald Knuth once said.)
It may be that seeing the world as the sighted see it is the goal of practitioners and educators alike; the motes, as it were, could indeed be in the wrong eyes.
Bernard M. Diaz, Liverpool, U.K.
Brad Chen of Google contributed to the development of the news story "Toward Native Web Execution" (July 2009).
Communications welcomes your opinion. To submit a Letter to the Editor, please limit your comments to 500 words or less and send to letters@cacm.acm.org.
DOI: http://doi.acm.org/10.1145/1562764.1562767
©2009 ACM 0001-0782/09/1000 $10.00
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.
The Digital Library is published by the Association for Computing Machinery. Copyright © 2009 ACM, Inc.
No entries found