What can I say? I completely agree with you that there is no reason to think we should either need to "think of everything", or that it is even remotely possible to do so. I try to design software to be flexible and extensible in this regard, and yes, I do find that my coworkers do sometimes look askance at my code. I well remember one of my most recent code reviews in which someone told me my code was hard to read. Needless to say, that is about the last thing I wanted to hear. But trite and old-fashioned as it sounds, I like the patterns approach to system design, and have come to realize in retrospect that my code sometimes looks odd to my colleagues precisely because I have (perhaps intuitively) made use of patterns in my work. I also believe that a major problem with software development is that we tend to see "coding" as a more or less technical task in which we implement requirements identified at the analysis phase. In the process, design and (to a lesser extent) architecture tends to get short shrift -- very much to our detriment.
===
Gregory Woodhouse
[EMAIL PROTECTED]

"A hero is no braver than an ordinary
man, but he is brave five minutes longer."
-- Ralph Waldo Emerson


On Jul 10, 2005, at 4:18 PM, Richard G. DAVIS wrote:

Well, I believe that one need not think of everything ahead of time. The
FNA application surely didn't.

The design principle is to code for the general case.  Do not make
constraints as a way of life.

Then there is the overwhelming tendency of software engineers to be
exceedingly egocentric.  Later, when this tendency is recognized as
restrictive, we hear the "can't think of everything" chorus.

The enlightened path is to design for the general case, and to spend most of the effort taking care to be sure that "THE PROBLEM" has been identified and
well characterized.

It is not so much thinking of everything.  Instead, it is solving the
correct problem.

The early DHCP Pharmacy application was a glorified label generator. The problem we needed to solve was how to create software that would facilitate
the work processes of the pharmacy business.   (...in an open way of
course.)




-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP,
AMD, and NVIDIA.  To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
Hardhats-members mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hardhats-members

Reply via email to