How do we gather stories about ACM's past before it's too late? The charter of the ACM History Committee is "to foster preservation and interpretation of the history of the ACM and its role in the development of computing."
DEPARTMENT: From the president
In a recent column
, I questioned whether there was any "science" in computer science. This provoked a great many responses that provided some very valuable perspective. I have come away from this foray into computer 'science' …
Vinton G. Cerf
DEPARTMENT: Letters to the Editor
Concerning the proposed Research Works Act, introduced in the U.S. Congress in 2011, Moshe Y. Vardi's "Editor's Letter" "Why ACM?"
(Sept. 2012) left me a little confused as to Vardi's own position on both the law and open …
Mark Guzdial writes about the need for programming languages to support multimedia at all levels. Judy Robertson shares insights about 12-year-old students' lack of understanding about computer science.
Mark Guzdial, Judy Robertson
Three breakthrough experiments involving photons have extended coherence times and indicated scalable production.
Drilling down to more detail on a computer screen, or moving out to see the context, is basic. But it's hardly simple and, after 20 years, innovations are still occurring.
As college tuitions soar, various online models vie to educate college students worldwide — at no cost.
COLUMN: Emerging markets
New ways to develop technologies for the emerging growth markets.
COLUMN: Historical reflections
Reflections on the legalities and economics of preserving animations and games in Europe.
COLUMN: Kode Vicious
The bytes you save today may bite you tomorrow.
George V. Neville-Neil
COLUMN: The profession of IT
Recognizing and working with moods — your own, your team's, and your customers' — is essential to professional success.
Peter J. Denning
COLUMN: Broadening participation
A proposal for an international group focused on broadening participation.
Teresa A. Dahlberg
A unique firsthand account of formative experiences with Alan Turing.
A thinking framework in the form of an actionable kernel.
Ivar Jacobson, Pan-Wei Ng, Paul E. McMahon, Ian Spence, Svante Lidman
A proposal to improve the performance and availability of streaming video and other time-sensitive media.
Aiman Erbad, Charles "Buck" Krasic
While the ubiquitous SSD shares many features with the hard-disk drive, under the surface they are completely different.
SECTION: Contributed articles
Improved performance and a proven deployment strategy make SPDY a potential successor to HTTP.
Bryce Thomas, Raja Jurdak, Ian Atkinson
Computers interacting with, not imitating, humans is the way forward.
Robert M. French
SECTION: Review articles
The challenge of programming molecules to manipulate themselves.
SECTION: Research highlights
This lifting of data structure thinking to the relational level has long inspired computer scientists. In "An Introduction to Data Representation Synthesis," the authors aim at elevating data structure programming to the relational …
We consider the problem of specifying combinations of data structures with complex sharing in a manner that is declarative and results in provably correct code.
Peter Hawkins, Martin Rinard, Alex Aiken, Mooly Sagiv, Kathleen Fisher
How do birds flock and fish school? How do individuals in a social network reach agreement, even though they are often only influenced by other like-minded individuals? How can one engineer a swarm of robots to behave like …
Algorithms lay the grounds for numerical simulations and, crucially, provide a powerful framework for their analysis. The new area of natural algorithms may reprise in the life sciences the role differential equations have long …
COLUMN: Last byte
Last month (November 2012) we posted a
trio of brainteasers
concerning the use of a balance scale to determine the weight of various numbers of coins. Here, we offer solutions to all three. How did you do?
Sanjeev Arora talks about proof, intractability, and finding the best way to approximate problems.