In 1981, Jon Postel formulated the Robustness Principle. Although described for implementations of TCP, it was quickly accepted as a...Eric Allman From Communications of the ACM | August 2011
Contrary to popular belief, SQL and noSQL are really just two sides of the same coin.Erik Meijer, Gavin Bierman From Communications of the ACM | April 2011
Exposing SIMD units within interpreted languages could simplify programs and unleash floods of untapped processor power.
Jonathan Parri, Daniel Shapiro, Miodrag Bolic, Voicu Groza From Communications of the ACM | April 2011
Pixar's president Ed Catmull sits down with Stanford professor (and former Pixar-ian) Pat Hanrahan to reflect on the blending of art and technology.CACM Staff From Communications of the ACM | December 2010
To move forward with programming languages we must first break free from the tyranny of ASCII.
Poul-Henning Kamp From Communications of the ACM | November 2010
Component models can help diagnose architectural problems in both new and existing systems.Kevin Montagne From Communications of the ACM | October 2010
Clem Cole and Russell Williams discuss Photoshop's long history with parallelism, and what is now seen as the chief challenge.ACM Case Study From Communications of the ACM | October 2010
Improving the performance of complex software is difficult, but understanding some fundamental principles can make it easier.Cary Millsap From Communications of the ACM | September 2010
Everything you always wanted to know but were afraid to ask about the decision-making process.Jan Damsgaard, Jan Karlsbjerg From Communications of the ACM | August 2010
Heat maps are a unique and powerful way to visualize latency data. Explaining the results, however, is an ongoing challenge.Brendan Gregg From Communications of the ACM | July 2010
A survey of powerful visualization techniques, from the obvious to the obscure.Jeffrey Heer, Michael Bostock, Vadim Ogievetsky From Communications of the ACM | June 2010
Emulating a video system shows how even a simple interface can be more complex—and capable—than it appears.George Phillips From Communications of the ACM | June 2010
An essential technique used in emulator development is a useful addition to any programmer's toolbox.Peter Phillips From Communications of the ACM | May 2010