Better Software Magazine Articles

Your Mom Doesn't Work Here: Cleaning up with Java Memory Management

For large-scale Java applications, understanding memory-related options might mean the difference between a wonderful user experience and recurring system slow downs. This article offers insight into the workings of Java memory management and shows how it cleans up after programmers, recovering memory associated with objects that are no longer being used.

Alan Berg
A Classic Example

Many systems architects have a technology—centric view of service-oriented architecture. This article emphasizes the need to understand the business side of SOA before tackling the technology and illustrates this need with a look back in time.

Dan North's picture Dan North
Solve the Real Problem: A Formula for Sustainable Solutions

There is more to software development problem solving than processes and tools. Discover a way to get to the heart of a problem with none of the hacks, shortcuts, and workarounds that have become the industry norm.

Tim Beck
Changing the Hand You're Dealt: Better Designs Through Problem Redefinition

Spending a little more time in design can help minimize the complexity of debugging and maximize the likelihood that the elements of a project will come together in the end. Payson Hall uses a parable and a program fragment to show how small changes to the problem can simplify the solution.

Payson Hall's picture Payson Hall
Simple Ain't Easy: Software Design Myths and Realities

The definition of "simple design" varies from person to person. But achieving simplicity isn't just about maintaining simple point solutions.

Brad Appleton's picture Brad Appleton
The More Things Change ... Revisiting a Software Culture

In 1994, Karl Wiegers published a popular article titled Creating a Software Engineering Culture. More than a decade later, he reviews his fourteen principles on software development to see how they've stood the test of time.
 

Karl E. Wiegers
Code Improvement: Five Practices to Help Spread the Joy of Great Code Design

The software we produce is like the neighborhoods in which we live--the blueprints aren't as important as the enjoyment of simply using it. The best design brings joy to both those who create it and those who use it. Jeff Grover and Zhon Johansen detail five practices to help you spread the joy.

Jeff Grover
The Many Layers of Ajax

Ajax began as a shortened form of "Asynchronus JavaScript and XML," but these days Ajax doesn't require XML and needn’t be asynchronous. Overcome your cravings for a richer user experience, and find out how Ajax can sweeten your Web application development in this article by Ajax expert Justin Gehtland.

Justin Gehtland
Model Driven Architecture: It's Not Your Father's UML

Software engineering has come a long way, but programmers still spend a lot of time on tasks that could be automated. Fortunately, there's model driven architecture with its new generation of modeling tools that go way beyond the average UML. Learn how MDA addresses the challenges of today's highly networked, constantly changing systems environment and provides an architecture that assures portability, platform independence, productivity, and much more.

Timothy Korson
The Expert as Impediment

Turn to The Last Word, where software professionals who care about quality give you their opinions on hot topics. This month, Brian Marick offers advice on why people are sometimes right to resist experts.

Brian Marick

Pages

CMCrossroads is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.