    <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
     <channel>
        <title>ACCU  :: Your Letters - The Editor's Replies</title>
        <link>https://members.accu.org/index.php/articles/1090</link>
        <description>Professionalism in Programming</description>
        <dc:language>en-us</dc:language> 
        <dc:creator>Administrator</dc:creator> 
        <admin:generatorAgent rdf:resource="http://www.xaraya.org" /> 
        <admin:errorReportsTo rdf:resource="mailto:webeditor@accu.org" />
       <sy:updatePeriod>hourly</sy:updatePeriod>
       <sy:updateFrequency>1</sy:updateFrequency>
       <docs>http://backend.userland.com/rss</docs>




<div class="xar-mod-head"><span class="xar-mod-title">Letters to the Editor + CVu Journal Vol 13, #1 - Feb 2001</span></div>

<table border="0" cellpadding="1" cellspacing="0">
    <tbody>
    <tr>
        <td valign="top">
            Browse in :
       </td>
       <td valign="top">

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c184/">Journal Columns</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c186/">LettersEditor</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/">All</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c76/">Journals</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c77/">CVu</a>

                     &gt;                         <a href="https://members.accu.org/index.php/articles/c122/">131</a>
<br />

                                            <a href="https://members.accu.org/index.php/articles/c186-122/">Any of these categories</a>

                    -                        <a href="https://members.accu.org/index.php/articles/c186+122/">All of these categories</a>
<br />
</td>
   </tr>
   </tbody>
</table>




<div class="xar-error">
   <p>
 <strong>Note:</strong> when you create a new publication type,
the articles module will automatically use the templates
<em>user-display-[publicationtype].xt</em>
and <em>user-summary-[publicationtype].xt</em>.
If those templates do not exist when you try to preview or display a new article,
you'll get this warning :-)  Please place your own templates in themes/<em>yourtheme</em>/modules/articles . The templates will get the extension .xt there. </p>
</div>
<div class="xar-norm xar-standard-box-padding">
   <h1><strong>Title:</strong>&nbsp;Your Letters - The Editor's Replies</h1>
<p><strong>Author:</strong>&nbsp;</p>
<p>
<strong>Date:</strong> 08 April 2001 13:15:43 +01:00 or Sun, 08 April 2001 13:15:43 +01:00</p>
<p><strong>Summary:</strong>&nbsp;<p>Shipping Code Professionally</p></p>
<p><strong>Body:</strong>&nbsp;<div class="sect1" lang="en">
<div class="titlepage">
<h2><a name="d0e22" id="d0e22"></a></h2>
</div>
<p>Dear Francis,</p>
<p>I read your leader on Professionalism in the latest C Vu (12.6)
and it has prompted me to this reply. There is something about the
way you put over Professionalism and Responsibility that I am
uncomfortable with. Maybe you have done this deliberately to
stimulate a debate. If so, I hope that people who can marshal a
better argument than me join in. Rather than wait for others to
comment in the next C Vu I am giving you a response even though I
am not entirely happy that I have completely identified my
concerns. I am happy for you to publish this as part of a debate in
C Vu or for you to reply to me personally.</p>
<p>Why am I concerned? I am not sure but I think it revolves around
the following three points</p>
<div class="orderedlist">
<ol type="1">
<li>
<p>I believe that it is relatively rare for there to be a black and
white case of a programmer shipping code into actual use. I think
the process is more complex than that and so the decision point
where a line should be drawn is harder to determine.</p>
</li>
<li>
<p>I believe that the &quot;I quit&quot; threat (voiced or un-voiced) is a
nuclear sanction. As professionals we should be able to avoid
getting into the situation where we need to use such a threat.</p>
</li>
<li>
<p>Finally I think that the ACCU should be providing help to our
members on how to avoid getting put into such a situation.</p>
</li>
</ol>
</div>
<p>Now I am going to ramble on with some background to these three
points, starting with why I believe that the situation is more
complex than just the good programmer and the evil boss.</p>
<p>Personally, I am on the other side of this story - I am not a
programmer but a consultant. I would expect any work that I
commission from a programmer to pass through at least 3 stages of
testing before being put into actual use. Obviously this varies
with methodology and size of project but I expect to see program
testing, integration testing and user acceptance testing. A
programmer would be responsible for the first but not directly for
either of the other two. If a programmer tells me that a program
&quot;works&quot; but that some technical part, like the database error
handling, is untested I would certainly instruct him/her to release
the program to integration testing whilst he/she continues testing.
If the programme covers several functions and I am told that some
work and some do not, I will take a view on whether sufficient
works for the program to be released to integration testing. So
here I am, the evil boss, instructing a programmer to ship code
that is known to be untested/unworking. And I do this because on
the commercial projects where I work I have constraints of time and
money. Generally it is more time efficient to complete program
testing in parallel with integration testing rather than have
serial processes. I could argue that I am not that great a villain,
as the code is not being shipped to production use. However, once I
have instructed the programmer to release code to the next stage of
testing the code is essentially out of his/her control. The code
can be released to user acceptance testing without their knowledge
and/or involvement. Later it can be shipped to production without
my agreement, knowledge or involvement - as I have project
management above me who can give the necessary instructions without
consultation.</p>
<p>So, in the sort of environments where I work, there is no sharp
divide between a programmer having control over code and then the
code being shipped into actual use. Instead there is some form of
staged loss of control - code is released on the understanding that
further testing will continue, that certain functions do not work,
that changes will be made. At what point should the programmer make
a stand? At what point can I justifiably say (preferably not as
bluntly as this) &quot;that is my decision, not yours&quot; and so I carry
the professionalism issue? I am also concerned about the sanction -
&quot;work professionally or I quit&quot;. Will it be that after 10
professional programmers have quit the employer finds that he
manages quite adequately with a staff of un-professional
programmers? How are we, a professional body, going to increase the
level of professionalism in our industry if whenever we find
something we do not like the answer is to threaten the big
sanction? How is your colleague on the standards committee ever
going to dig into the organisation and improve professionalism
there if he has left? And we know that it is so, so difficult to
improve professionalism up the hierarchy - you have to move into a
position of authority and work from there. My belief is that we
should, as professionals, avoid getting into a situation where we
threaten the big sanction. It is so like a parent telling a child
&quot;behave or I will smack you&quot; - the battle is lost already.</p>
<p>And so (the hard part) what advice has the ACCU got for its
members? Should we encourage programmers to give pessimistic
reports on program testing until the code is 100% OK? There are
lots of problems with this approach, not least the little lie to
save the bigger lie. Or what else can we do to support members
caught between the proverbial rock and hard place? This is where I
would particularly like to hear the advice from other ACCU
members.</p>
<p>regards</p>
<p>Richard Wheeler</p>
<p class="c3"><span class="remark">I agree with almost everything
you write, except that you have placed a spin on what I wrote that
was not there. I never used the word 'quit' nor did I suggest that
anyone should threaten to do so. Nonetheless the attitude of mind
that accepts minimum quality is not, at least for me, professional.
We should be striving to deliver the best we can, considering the
constraints under which we work. That includes limiting work to a
reasonable number of hours per week - and I also consider regularly
working excessive hours as unprofessional. The employee who
continually works late is the one who should be investigated, not
the one who usually leaves on time.</span></p>
</div>
</p>
<p><strong>Notes:</strong>&nbsp;</p>
<p><em>More fields may be available via dynamicdata ..</em></p>
</div>
</channel>
</rss>
