× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 9/27/2013 11:54 AM, Cyndi Bradberry wrote:
Can anyone point me to a best practices for documenting code changes ? This would have to cover RPG IV and Free and CL programs. We are working towards a SOC 2 Type 1 compliance.

I deeply wish I had the money to buy a source control system.
Or the buy-in from my colleagues to use an open source SCM like Git,
Subversion or even CVS.

In my opinion, the key advantage is the freedom an SCM gives one to
experiment, to make changes freely, knowing one can roll them all back
simply. When people think about commenting out obsolete code, that
might have been good enough in the 1980s, when a typical application
consisted of a program to load a scratch file, FMTDTA to sort/select
records and a print program to print them out. Making a change to this
system was very straightforward. Two programs. The magnitude of the
change was always small and easy to deal with.

Today, an application spans dozens of programs and files. Making even a
simple change can affect a dozen objects. When you have to manually do
a pile of work to revert those changes, you don't make changes without a
ton of deliberation and testing. It takes a long time to get to the
point where I want to show the users the effects of their request, and I
very, very rarely give them more than one choice because making changes
(and reverting them) is too darned hard.

With an SCM in place, I could try option 1, test it, give them pretty
quick feedback and simultaneously try option 2 and 3 and give them
choices. When they decide they like option 3, I'd promote that one and
off we'd go - much faster from concept to completed.

My job is to change things. Anything that adds to my ability to make
quick changes is a Very Good Thing.

I find this a separate discussion from capturing the narrative of 'how
did we get here?' Having a block of commented out code sort of gives me
a narrative, but it is an incomplete narrative until I have read ALL of
the commented out code in ALL of the affected source code. And then
what about configuration changes, things like 'Added jt400.jar to /jar
folder and edited environment variable CLASSPATH to add it system wide'?
What source member am I going to put that into? A centralised library
of decisions, changes and so on seems a better idea to me. Let an SCM
keep track of 'what changed' and write a plain language document
explaining 'why did this change?'
--buck

As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.