Of course you are not wrong.
You implement these policies to make it easier to maintain your software so
that future programmers can know what to expect.
If the policies are not followed then maintenance of the software can become
And it sounds as if your external programmer is not a good fit for your
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Birgitta Hauser
Sent: Tuesday, March 05, 2013 12:21 AM
To: 'Midrange Systems Technical Discussion'
Subject: Programing requirements - Guidelines - Code Revision and External
Programmers - Am I wrong
Do not want to start a never ending discussions but only get a few opinions.
We got a new external programmer who did the first enhancements.
Before he started he got a couple of programming guidelines (only a few ones
around 10), among them:
1. New exported functions and procedures always start with the application
label (XX_) 2. All new functions and procedures have to be documented and
need a header like it is generated with RDp containing, Procedure Name,
Purpose, Parameter Description 3. Prototypes for exported procedures must be
copied into a different member (with the same name as the source member but
a specific prefix) 4. If parameters must be added to existing
functions/procedures they have to be documented within the header and have
to be defined as optional parameters with OPTIONS(*NoPass).
5. Return values or output parameters or escape messages that indicate
errors have to be handle after the procedure's call.
6. (Reference) Data structures that located in copy members and are used in
almost all of our sources should not be enhanced (at least new sub-fields
should not be included between the existing sub-fields). If an enhancement
is necessary a complete compilation of all modules, programs, service
programs have to be performed.
What happened: The programmer finished his work:
1. New exported procedures were generated but without label prefix 2. There
is no documentation at all, not even a single row before the starting
P-statement 3. The prototype is hardcoded within the source where the
procedure is coded.
4. To several existing procedures a new required (not optional) parameter
was added and not documented 5. No return value is checked (according to the
programmer it is not
6. A data structure that is included in almost all our sources (in multiple
applications) was enhanced, but no compilation started
I rejected the enhancements because they do not conform to the guidelines.
The comment of the programmer was: it works and why I should not snooping
through his sources. He could not understand why I'm trying to play the
boss. If I think I can it better I should do it myself.
Am I really wrong insisting in the programming guidelines are followed?
IMHO "working" is not all, also the source code must be documented and
conform the guidelines.
Mit freundlichen Grüßen / Best regards
"Shoot for the moon, even if you miss, you'll land among the stars." (Les
"If you think education is expensive, try ignorance." (Derek Bok) "What is
worse than training your staff and losing them? Not training them and
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at http://archive.midrange.com/midrange-l