Blogs

May 23, 2012

The Long and Short of Parallelism

Ten years ago, multi-core processors were just on the horizon. Today they are mainstream and have become the impetus for a revolution in computer programming that can make best use of the two, four, six, or eight cores.

May 21, 2012

Bone Yard

The BeagleBone is a capable little Linux box.

May 17, 2012

The Solution to Last Week's Language-Design Puzzle

Anomalies, and design strategies for avoiding them, are among the many reasons that programming-language design is harder than it looks.




We Who Value Simplicity Have Built Incomprehensible Machines

In this guest editorial, James Hague describes how creeping feature additions turn good ideas into morasses of incomprehensible options. - Architecture & Design

Articles RSS

Automatic Reference Counting on iOS

Automatic reference counting is an innovative way of managing Objective-C objects on MacOS X 10.7 and iOS 5. It does away with explicit retain, release and autorelease messages, and it behaves the same on both platforms - Mobile

Developer's Reading List

The most interesting books of the last month, selected and reviewed by Dr. Dobb's editors. - Tools

Extracting Function Parameter and Return Types in C++

Using the metaprogramming capabilities of C++ and generic programming, it's possible to create an elegant parser of parameter types. Command-line interpreters, parsers, and syntax checkers are among the many applications. - C/C++

Software Engineers All!

Faking a CS degree will get you fired. Falsely claiming to be a software engineer will get you — wait, is that even possible? - Design

Interview With Ward Cunningham

The creator of the Wiki dishes on the Wiki, Wikipedia's policies, OO design, technical debt, CoffeeScript and Perl, how to survive as a veteran programmer, and doing the simplest thing that could possibly work. - Design

Testing OO Systems, Part 1

OO tests stimulate an object and observe that object's behavior. The tests do not look at the object's state to judge whether or not the test succeeds, they just look at the object's behavior. When I call dog.expressHappiness(), my test succeeds when I observe that wagTail() is called. I would never look inside the dog at the isHappy field. - Testing

The New C Standard Explored

C11 specifies many security features that require minimal changes to existing code. They greatly reduce unexpected behavior and prevent many kinds of common attacks. - C/C++

The New Native Languages

D and Go are at the forefront of a new generation of native languages emerging in the space between C and C++. - Design

Best of the Web

What the New iPad and iOS 5.1 Mean for Developers

The new display is gorgeous. But local storage for HMTL5 is currently broken on the new iPad and performance of some apps is slower. Here's a deep dive into the issues, including benchmarks and analysis.

Quick Read

Triple Buffering as A Concurrency Mechanism

Triple Buffering is a way of passing data between a producer and a consumer running at different rates. It ensures that the consumer sees only complete data with minimal lag.

Quick Read

Embedding GDB Breakpoints in C Source Code

Have you ever wanted to embed GDB breakpoints in C source code? Something like this:
printf("Hello,\n");
EMBED_BREAKPOINT;
printf("world!\n");

Quick Read

Writing Kernel Exploits

Why attack the kernel? Because it has a huge attack surface with potential for very interesting bugs. This presentation (pdf) takes a code-level dive into recently reported Linux-kernel exploits.

Quick Read


More "Best of the Web" >>

Events of Interest

May 29-31, San Francisco, CA. Fluent 2012: JavaScript and Beyond

June 4-6, Nashville, Tennessee.Magic Software Users Conference

June 11-14, Bellevue, WA. AMD Fusion12 Developer Summit

June 11-14, Orlando, FL. Microsoft Tech-Ed

June 18-20, New York, NY. QCon New York

June 26-29, Boston, MA. 2012 Red Hat Summit and JBoss World

June 27-29, San Francisco, CA. Goole I/O Conference

July 9-12, San Francisco, CA. JAX Conference - Java, Cloud, Android, Agile

July 16-20, Portland, OR. OSCON

August 6-10, Redmond, WA. Visual Studio Live

August 20-24, Munich, Germany. DrupalCon Europe

August 27-30, San Francisco, CA. VMworld 2012

September 11-13, San Francisco, CA. Intel Developer Forum (IDF 2012)

September 23-25, St Louis, MO. StrangeLoop

September 29-30, San Francisco, CA. MySQL Connect Conference

September 30-October 4, San Francisco, CA. JavaOne

October 6-7, Los Altos, CA. Silicon Valley Code Camp

October 22-24, San Francisco, CA. Windows Phone DevCon

October 23-25, Ludwigsburg, Germany. EclipseCon Europe 2012

October 24-25, New York City. The Strata Conference

November 7-9, San Francisco, CA. QCon

December 10-14, Orlando, FL. Visual Studio Live

Video



Enabling People and Organizations to Harness the Transformative Power of Technology