DDJ, February 2007
Testing & Debugging



FEATURES

Microsoft Loves Linux: What's With That?
Michael Swaine
Microsoft and Novell announced a five-year patent and technology agreement around Microsoft software and Novell's SUSE Linux software. Is it love or a declaration of war?

AJAX Debugging with Firebug
Joe Hewitt
Firebug is a Firefox extension that includes all the tools you need for efficient debugging during the Web development process.

Insidious Tight Coupling
Bil Lewis
Insidious tight coupling, where one module depends on another unknown to the compiler, can lead to overly complex development.

Java ME and the Command Pattern
Darius Katz
The Command Pattern provides an efficient workaround for problems you might encounter with Java ME based development.

Simplifying Web Service Integration
Neal Culiner
When adopting a SOA for his pilot logbook software, Neal found that third-party tools saved time and worry.

Bulletproofing C++ Code
Sergei Sokolov
Sergei examines techniques that improve the stability and reduce the risks of errors for programming.

Social Software Development Environments
Li-Te Cheng, Susanne Hupfer, Steven Ross, John Patterson
Distributed development, IDE extensibility, and social software are taking us to an development process that is not only more productive, but also an enjoyable social experience.

Going Global with Visual Studio Team System
Scott Swigart
Visual Studio 2005 Team System is a suite of lifecycle tools that enables communication and collaboration among distributed development teams.

Think Globally, Code Locally
Damon Poole
Damon shares tried-and-true best practices that help global teams improve the development process by thinking globally and coding locally.

The Global Project Management Challenge
Michelle Medley and Denny Panakal
When it comes to IT projects, utilizing the right technology solutions and implementing them along side of project management methodologies can help you deliver projects on time, under budget and without incident.

Online Collaboration and Agile Software Development
Doug Poirier
Agile software development requires input from all team members, and such collaboration is most effective when everyone participates.


COLUMNS

Nisley's Notebook
Ed Nisley
Ed does a postmortem report on those embedded systems we all love to hate—electronic voting machines.

The Agile Edge
Scott W. Ambler
Scott reports on his survey that focused on data quality issues and the application of various data-oriented development techniques.


DEPARTMENTS

Hmmmm
Jonathan Erickson
APL is 40 (or is it 50?) years old. But comparing it to more modern programming is like comparing APLs to oranges.

Alia Vox
Grady Booch
While traditional integrated development environments focus on improving the efficiencies of individual developers, collaborative development environments focus on improving the efficiencies of the entire development team.

Developer Diaries
edited by Michael Swaine
From start-ups to global enterprises, developers sometimes face similar problems—and turn to like-minded solutions.

Developer's Notebook
compiled by the DDJ Staff
New development products and new releases of existing ones.

Swaine's Flames
Michael Swaine
Michael gets lost on the "rhode" to "roam." The Web will do that to you.