Software Engineering and Programming Languages
Levels of Abstraction; Pre-Teens and Career Choices
Technical Perspective: High-Level Data Structures
An Introduction to Data Representation Synthesis
The Essence of Software Engineering: The SEMAT Kernel
Sender-Side Buffers and the Case For Multimedia Adaptation
Two Apps Aim To Tell The Truth And Nothing But The Truth
What Does ‘Big Data’ Mean? (Part 3)
The Frankencamera: An Experimental Platform For Computational Photography
Oracle v. Google: Are APIs Copyrightable?
Decentralization Versus Centralization in IT Governance
Disks from the Perspective of a File System
Major Update to ACM’s Computing Classification System
Functional Encryption: A New Vision For Public-Key Cryptography
Shape the Future of Computing
ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.
Get InvolvedCommunications of the ACM (CACM) is now a fully Open Access publication.
By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.
Learn More





















