In the two years since we launched the revitalized Communications of the ACM, I have received hundreds of email messages from readers. The feedback has been mostly, but …
Letters to the editor
Don't Ignore Security Offshore, or in the Cloud
Moshe Y. Vardi's Editor's Letter "Globalization and Offshoring of Software Revisited" and Dave Durkee's "Why Cloud Computing Will Never Be Free" (both May 2010) failed to …
In the Virtual Extension
Communications' Virtual Extension brings more quality articles to ACM members. These seven articles are now available in the ACM Digital Library.
Software Development and Crunch Time; and More
For software developers, crunch time is a period prior to a major product milestone when team members are asked to put in extra effort to get a product finished by a specific …
In Case You Missed It
The most popular content on Communications' site is something many readers know nothing about.
Sharing Computational Perspectives
Computer scientists are now making intellectual contributions to a wide range of other disciplines, including evolutionary theory, physics, and economics.
Countries use Internet censorship to dominate the political dialogue, but also to create favorable conditions for government-controlled businesses.
Mainstreaming Augmented Reality
Advancements in computer vision, object recognition, and related technologies are leading to new levels of sophistication in augmented-reality applications and presenting new ways for humans to relate to the natural world.
Committed to Success
Charles P. Thacker talks about the importance of simplicity, reusable tools, thinking broadly, and his practice of Tom Sawyering.
Eric Brewer: Change Agent
Eric Brewer's latest project involves designing and deploying low-cost wireless infrastructure in developing regions.
Visions of the Future
ACM joined forces with the British Computer Society to deliver its first academic research conference in Europe.
Technology strategy and management
Outsourcing Versus Shared Services
Choosing between outsourcing and shared services has significant implications for long-term corporate strategy.
Work Life in the Robotic Age
Technological change results in changes in expectations, in this case affecting the workplace.
Should the Google Book Settlement Be Approved?
Considering the precedent that could be established by approval of the controversial Google book settlement.
Cultivating Cultural Diversity in Information Technology
Introducing CMD-IT, a new center focused on synergistic activities related to ethnic minorities and people with disabilities.
Is Computer Science Truly Scientific?
Reflections on the (experimental) scientific method in computer science.
Advice to Members Seeking ACM Distinction
ACM's Distinguished Member Recognition Program recognizes members in three categories: Educator, Engineer, and Scientist. Each category comes with a unique set of criteria.
The Ideal HPC Programming Language
Maybe it's Fortran. Or maybe it just doesn't matter.
Visualizing System Latency
Heat maps are a unique and powerful way to visualize latency data. Explaining the results, however, is an ongoing challenge.
You're Doing It Wrong
Think you've mastered the art of server performance? Think again.
Commonsense Understanding of Concurrency: Computing Students and Concert Tickets
Innate understanding of concurrency helps beginners solve CS problems with multiple processes executing at the same time.
Computer Graphics For All
Interactive computer graphics would rival word-processing and presentation programs for everyday communications.
Algorithmic Game Theory
A new era of theoretical computer science addresses fundamental problems about auctions, networks, and human behavior.
Technical Perspective: A Solid Foundation For X86 Shared Memory
Multithreaded programs that communicate through shared memory are pervasive. Today they are the most obvious route to using multiple available processor cores …
X86-TSO: A Rigorous and Usable Programmer's Model For X86 Multiprocessors
Exploiting the multiprocessors that have recently become ubiquitous requires high-performance and reliable concurrent systems code. However, concurrent programming, which is always challenging, is made much more so by two problems …
Technical Perspective: Technology Scaling Redirects Main Memories
As predicted by Intel's Gordon Moore in 1965, the number of transistors that can be integrated on one die continues to double approximately every two years. Amazing to some …
Phase Change Memory Architecture and the Quest For Scalability
Memory scaling is in jeopardy as charge storage and sensing mechanisms become less reliable for prevalent memory technologies. In contrast, phase change memory relies on programmable resistances, as well as scalable current and …
Q&A: From Single Core to Multicore
Charles P. Thacker discusses the legendary Alto personal computer, the invention of the Ethernet, and his current research on multicore architectures.
Application Service Providers: Market and Adoption Decisions
A relatively new form of IS outsourcing, Application Services Provision (ASP), provides applications to multiple entities from its data center across a wide area network.
ERP: Drilling For Profit in the Oil and Gas Industry
Most large companies have adopted some form of enterprise resource planning (ERP) system. While the potential benefits of ERP have been extolled frequently, only limited evidence states that implementation of ERP does, on average …
Creating the Experience Economy in E-Commerce
The growing commoditisation of services has transformed the competition for market share from focusing on the quality of services to the creation of memorable experiences. The economic value of the experience economy lies in …
Why Do People Tag? Motivations For Photo Tagging
Tagging is gaining much popularity in recent years. Studies have suggested several factors that motivate user tagging. However, to date no quantitative study has assessed the strength of the effects of each motivation on levels …
How Distributed Data Mining Tasks Can Thrive as Knowledge Services
Computer science applications are becoming more network centric, ubiquitous, knowledge intensive, and computing demanding. This will result in an ecosystem of pervasive applications and services that professionals and end-users …
IT Programs in High Schools: Lessons from the Cisco Networking Academy Program
Student enrollment in college computer science and information technology programs are in a downward trend in most developed countries. This article examines the Cisco Networking Academy to understand what lessons we can draw …
Using ESI Discovery Teams to Manage Electronic Data Discovery
The importance of electronically stored information (ESI) in litigation has increased greatly over the past decade. Managing discovery of electronic information requires close coordination among managers with widely diverse technical …