DEPARTMENT: President's letter
I am writing this column in my last month as President of ACM. It's been a great opportunity to support the Association's many successful programs and to expand and firmly establish new directions. Much has been accomplished, …
DEPARTMENT: Letters to the editor
DEPARTMENT: CACM online
Distributed algorithmic mechanism design is a field at the intersection of computer science and economics.
Accessible technologies are improving the lives of millions of physically impaired people around the world.
Information and communication technologies are an important component in the generation of wealth. How can they help reduce poverty?
Both melancholy and reverential, the Jim Gray Tribute at the University of California at Berkeley honored one of computer science's leading pioneers and visionaries.
The choir of engineers, mathematicians, and scientists who make up the bulk of our field better represents computing than the solo voice of the programmer.
Software development organizations must accept the inevitability of silver-bullet solution proposals and devise strategies to defend against them.
Drawing on methods from diverse disciplines---including computer science, education, sociology, and psychology---to improve computing education.
Advances in computing have changed our lives---the Computing Community Consortium aims to help the research community continue that lineage.
In this second of a two-part interview by Edward Feigenbaum, we find Knuth, having completed three volumes of The Art of Computer Programming, drawn to creating a system to produce books digitally.
Online games and virtual worlds have familiar scaling requirements, but don't be fooled: Everything you know is wrong.
Leaders in the storage world offer valuable advice for making more effective architecture and technology decisions.
There's a lot we can learn from CORBA's mistakes.
SECTION: Contributed articles
Data generated as a side effect of game play also solves computational problems and trains AI algorithms.
Why Wikipedia's remarkable growth is sustainable.
SECTION: Review articles
The most dramatic interaction between CS and GT may involve game-theory pragmatics.
SECTION: Research highlights
Computer science has long had a solid foundation for evaluating the performance of algorithms. The asymptotic complexity of the time required by an algorithm is well defined …
Evaluation methodology underpins all innovation in experimental computer science. It requires relevant workloads,
appropriate experimental design,
and rigorous analysis.
Unfortunately, methodology is not keeping pace with the …
In computer science, when we say "time is money," we typically refer to two types of time that determine the costs and benefits of a given computer program: the time it takes …
In this paper we present a concurrency model based on transactional memory
. All the usual benefits of transactional memory are present, but in addition …
COLUMN: Last byte
Welcome to the new puzzle column. Each column will present three puzzles. The first two will have known (and usually elegant) solutions that will appear in the next issue of Communications. The third will be an open problem; …