From Open Access to Guarded Trust
Engineers stand at a unique confluence, where the exhilarating promise of innovation meets the sobering responsibility of trust stewardship.
From Open Access to Guarded Trust
Engineers stand at a unique confluence, where the exhilarating promise of innovation meets the sobering responsibility of trust stewardship.
Vendor Software Solutions in a Cloudy World
JavaScript Language Design and Implementation in Tandem
Technical Perspective: The Software-Centric Approach of SYNERGY
The advantages of a software rather than hardware approach to FPGA virtualization.
Compiler-Driven FPGA Virtualization with SYNERGY
SYNERGY virtualizes FPGAs to be used effectively in datacenters.
Nand to Tetris: Building a Modern Computer System from First Principles
A Roadmap for Using Continuous Integration Environments
The Risks of Source Code Breaches
Vendor-Locked DevOps Strategies
Adopting and Sustaining Microservice-Based Software Development
The microservice approach to software development offers an alternative to the conventional monolith style.
Dynamic Placement in Refugee Resettlement
In this paper, we design an online algorithm for refugee allocation.
Technical Perspective: Improving Refugees’ Integration with Online Resource Allocation
"Dynamic Placement in Refugee Resettlement," by Narges Ahani et al., applies online resource allocation concepts to a new and important area: refugee resettlement.
Language-Based Software Testing
The popularity of RISC-V and lower barriers to entry have led a number of parties to design some or all of an instruction set for the architecture.
Combining Machine Learning and Lifetime-Based Resource Management for Memory Allocation and Beyond
We introduce a two-step approach to attain high memory utilization in huge pages, which gives rise to a new methodology for applying Machine Learning in computer systems.
Technical Perspective: Learning-Based Memory Allocation for C++ Server Workloads
"Learning and Lifetime-Based Resource Management for Memory Allocation and Beyond," by Martin Maas et al., explores the potential of using imperfect information in the design of memory managers.
Co-Developing Programs and Their Proof of Correctness
Measuring GitHub Copilot’s Impact on Productivity
Computations for This World and out of This World
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 InvolvedBy 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