In 1993, I made my first descent down a Class IV river: the Cossatot River in
Arkansas. To prepare, I first spent many hours on easier Class II rivers in Texas
with experienced paddlers. I was learning the common vocabulary and the repeti-
tive motions that I would need to survive in a new kayaking community. Though
the rivers were easy, those enjoyable hours prepared me for the challenges to come.
Chapters 1 and 2 lay the foundation for patterns, antipatterns, and server-side
Java programming. In chapter 1, we discuss the impact that design patterns
have had on modern programming, and we make the argument that antipat-
terns are a necessary and complementary topic of study. We provide some tips
for detective work, exploring ways to establish patterns of repeated Java prob-
lems. In chapter 2, we discuss the current landscape of server-side Java pro-
gramming, from the basic Internet standards and languages to the
improvements in methodology, with a twist. Along the way, we will look for
the nooks and crannies that are likely hiding places for antipatterns and the
process improvements that help us combat them.