Why Adam Smith Is Right and Software Generalists Are Wrong, an Exemplar in Heroic Couplet

Of Programmers and Testers

For my amusement and the dear reader's edification,
I offer this exemplar from my own edumacation [sic].

Francis Bacon wrote, for it is the solecism of a prince.
(Which as quotes go, will do in a pinch).

To control the end one must endure the mean,
But no worse state have I encountered or seen.

More than 100 years ago Adam smith wrote,
Specialists divide and conquer but generalists don't.

Here is my example; its one for the books.
Give me a moment before using the crook.

My comparison is between those who write code and those who test,
The results you will see are that neither is better but both are best.

The programmer is author the tester is editor,
Both are best but neither is better.

As programmer I write it and test that it works;
As tester you break it and look for its quirks.

As programmer I try to resolve on a solution;
As tester you see my brain droppings, detritus, and mental pollution.

The tester's expertise is editing, and the programmer's is writing,
Both are adversaries but do their jobs without fighting.

The programmer spends his time thinking and making,
And the tester spends hers thinking and breaking.

Working at cross purposes they forge to the end,
At different tasks they toil and they spend.

Programmers are experts at assuming,
and testers are wary of a programmer's presuming.

As author and editor each is an advocate
Of the customer, but each with a different mindset.

Programmers try hard to use all the tricks in the book,
And the tester makes sure nothing was overlooked.

When one does both jobs this creates a breach in the mind,
Which is enough to make the programmer-cum-tester go blind.

Ronald Reagan said it best: many have thought for long,
That things are too complex for simple answers. They are wrong.

Biography

Paul Kimmel is the VB Today columnist, has written several books on .NET programming, and is a software architect. You may contact him at pkimmel@softconcepts.com if you need assistance or are interested in joining the Lansing Area .NET Users Group (glugnet.org).

Copyright © 2004 by Paul Kimmel. All Rights Reserved.



Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • With JRebel, developers get to see their code changes immediately, fine-tune their code with incremental changes, debug, explore and deploy their code with ease (both locally and remotely), and ultimately spend more time coding instead of waiting for the dreaded application redeploy to finish. Every time a developer tests a code change it takes minutes to build and deploy the application. JRebel keeps the app server running at all times, so testing is instantaneous and interactive.

  • Instead of only managing projects organizations do need to manage value! "Doing the right things" and "doing things right" are the essential ingredients for successful software and systems delivery. Unfortunately, with distributed delivery spanning multiple disciplines, geographies and time zones, many organizations struggle with teams working in silos, broken lines of communication, lack of collaboration, inadequate traceability, and poor project visibility. This often results in organizations "doing the …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds