Up COBOL Assembler Micro Mainframe MVS and OS/390 Links Resume
| | COBOL is far from a dead language, as evidenced by the
massive amount of work that was required to correct the "Year 2000" date
problem in billions of lines of active COBOL code around the world.
I started writing COBOL programs in 1973. Even though I
can now write relatively elegant and structured programs in several additional
languages, I still prefer coding in COBOL. In 1999 I wrote a
database query application for a volunteer organization and I chose COBOL as the
language. Several people asked me why I didn't use Visual BASIC or C++
since the application was running on a microcomputer platform. I
replied that the requirements were adequately and best suited to a COBOL
solution. And that is really the only true test of why a particular language
should be chosen ... if that language fits the application better than any other
language available.
Here are some books that I have in my library that I consider
"must have" titles for a COBOL programmer. I have included
a "Teach Yourself" book that is frequently recommended in the
comp.language.cobol newsgroup and is a good book for the beginning
programmer.
I have included a couple of CICS books and a JCL book here, since this
is more or less the "applications programming" area of my site. Technical books come and go rapidly, so some of the books that I consider the
real "gems" on my bookshelf are no longer available. If you are
building a programming reference library, I recommend you visit the web site of Mike
Murach. I started buying books from Murach publishing when their books were
slightly more than bound photocopies. I have always found books from
Murach to be foundation blocks for my learning, and many of my co-workers in
years past have coveted my selections enough to order copies of their own.
Murach's Structured COBOL is a brand new (2000) addition
to the excellent
books published by Mike Murach and Associates. If you are programming on
the IBM mainframe platform, or intend to be, this is a title you should have on
your desk. Although beginning programmers are included in the target
audience, the real value of this material will be as the reference for
on-the-job programmers. At more than 760 pages, it covers everything you
would need to research and is packed with syntax, how-to-use guidelines, and
coding examples. If you are a beginning programmer, the coverage of
structured design, coding, and testing methodology is the best I have ever
seen. Used as a text to learn COBOL, the language syntax is designed to be
generic enough to work under any COBOL compiler. In fact, Murach also
sells Merant's Personal COBOL if you do not currently have access to a COBOL
compiler and are learning COBOL on your own. The text also includes brief
introduction to using ISPF and SDSF on the IBM mainframe to edit, compile, and
debug a program. There is also a good overview of creating CICS and DB2
programs, as well as a section on Object Oriented programming with COBOL, which
will be included in the next COBOL standard. View
the table of contents, order
directly from Murach, or order
from Amazon.COM.
|
|
|
COBOL
for OS/390 Power Programming is in fact much more than "just" a COBOL reference
book. This is the 3rd edition of the material. It has an extensive section comparing
the different versions of COBOL that have appeared on IBM mainframes. Because of
this material, it is the reference for anyone who is converting between,
or working on multiple, versions of IBM COBOL compilers. The text is loaded with
coding examples, plus JCL examples, and detailed analyses of the underlying
machine code that particular COBOL syntax will generate. It is not a beginner
level text, but covers the most advanced modern facilities of the current COBOL
compilers. In particular, the intricacies of the IBM Language Environment and
techniques for writing efficient programs is stressed. Order
at Amazon.COM
|
Teach
Yourself COBOL in 24 Hours is one of the Sams structured lesson books with a
complete COBOL compiler included on a CD-ROM. I finally got a copy of this
book (I don't fall into the beginning COBOL programmer category, but I collect
books, which is not a hobby I recommend to anyone who moves a lot). There are
several "teach yourself" type COBOL books available, but I am familiar
with Thane Hubbell's writing and programming style from segments he contributed
to COBOL
Unleashed as well as his contributions to several
newsgroups I regularly read. If you are a beginning COBOL student and need a
recommendation to a good book, this would be mine.
Order
at Amazon.COM
|
|
|
CICS for the COBOL
Programmer is an update to Murach’s two volume CICS set.
The intended audience is experienced COBOL programmers who need to
learn Command Level CICS programming, from basic concepts to writing
moderately complex applications quickly. The
first four sections introduce basic concepts and command syntax in a
graduated style, so that at the conclusion the reader has been presented
with all of the knowledge required to analyze the requirements, plan a
structured design, and implement a moderately complex application
consisting of several programs. Techniques
for debugging abends are also presented.
Chapters covering
advanced file and database handling techniques follow the introductory
sections. Advanced VSAM file
handling presented includes browsing files and accessing VSAM files
utilizing alternate indexes. An
overview of working with DB2 databases is included, although developing
proficiency in CICS/DB2 applications will most likely require acquisition
of an advanced text concentrating on this specialized topic.
The final section presents advanced CICS features and commands, such as
concurrent task management, inter-region communication, distributed
processing, and modular application development, including development of
Web enabled CICS applications. Information
is also included which may be necessary to maintain older CICS code, which
may use now obsolete coding techniques.
Available directly from Mike Murach
or
Order at Amazon.COM
|
Raul Menendez has updated Murach's
1980 edition of their MVS JCL text. The
result is a JCL training and reference book that should be the first book
anyone aspiring to work on the OS/390 or z/OS platforms should acquire.
The first two chapters give a very condensed, but
extremely thorough introduction and overview of IBM’s mainframe
environment from a hardware and operating system perspective.
Since we continue to see forecasts that there will be a growing
shortage of programmers for this environment, this is exactly the type of
“quick start” introduction that will help bring new programmers up to
speed. Chapter three gives a
very quick overview of ISPF, enough to get started using ISPF to
accomplish basic editing, submit jobs, and review job output.
Following the introductory section, Job Control
Language is covered from the basics of statement format to how to
accomplish more complex tasks – managing program execution, allocating
disk and tape datasets, handling special circumstances of SYSOUT datasets,
and using procedures. More
advanced JCL skills, including conditional processing, job
restart/recovery, creating and using generation data groups, and using the
Storage Management Subsystem to allocate datasets is covered in the next
section.
But this is much more than a simple text on Job
Control Language. It includes
a section on the basics of Virtual Storage Access Method (VSAM), along
with JCL required to create and use VSAM datasets.
The chapter covering Access Method Services (IDCAMS) includes just
about everything an application programmer will need to know to create and
manage VSAM objects. The most
commonly used IBM utility programs, such as IEHMOVE, IEBCOPY, and IEBDG
are explained with examples for their use.
And the chapter devoted to the Sort/Merge utility covers both stand
alone and internal sorts along with the most common sort control
statements.
The book concludes with a couple of chapters that
will provide the reader with a working knowledge of CLISTS, REXX, and UNIX
System Services. With the
inclusion of the information about SMS and UNIX System Services, the text
is desk ready for programmers working in a z/OS environment, IBM’s
current version of their flagship operating system.
But this book will be equally usable by programmers working on
earlier versions of OS/390 and MVS. Murach’s
“paired page” format is easy to read for those using the text in
training mode and also makes this a great choice for use as a reference
tool.
Available directly from Mike Murach
or
Order at Amazon.COM |
|
|
The CICS Programmer's Desk Reference is another book from my
library that you really should have if you are writing CICS programs. In addition to
containing a tremendous amount of CICS reference information, it includes numerous complete
coding examples, JCL examples, and Access Methods Service commands you will need
to define and manage VSAM files. When I researched the availability of this
title at Amazon, I was pleased to see other owner's of the title also give it
praise. Available directly from Mike Murach
or
Order at Amazon.COM
|
Programming Proverbs
If you have written a term paper for a college course, you probably had to
write the paper using a published set of rules specified by the
instructor. Elements of Style, APA, Turabian, and Harbrace
College Handbook are a few that I am familiar with. If you approach
writing a computer program with a similar set of guidelines, you will find that
your programs are easier to write, understand, and maintain.
Early in my career I obtained a copy of Programming Proverbs by Henry
F. Ledgard. Some of the "proverbs" seem a bit dated when I read
through them today, but taken as a whole they offer good guidance for sound
programming principles. I am not surprised to find that this title is now
out of print, since the copyright on my copy is 1975. Here are the 26
Proverbs Mr. Ledgard mandated:
- Define the Problem Completely
- Think First, Program Later
- Use the Top-Down Approach
- Beware of Other Approaches
- Construct the Program in Logical Units
- Use Procedures
- Avoid Unnecessary GOTO's
- Avoid Side Effects
- Get the Syntax Correct Now, Not Later
- Use Good Mnemonic Names
- Use Intermediate Variables Properly
- Leave Loop Variables Alone
- Do Not Recompute Constants within a Loop
- Avoid Implementation-Dependent Features
- Avoid Tricks
- Build in Debugging Techniques
- Never Assume the Computer Assumes Anything
- Use Comments
- Prettyprint
- Provide Good Documentation
- Hand-Check the Program Before Running It
- Get the Program Correct Before Trying to Produce Good Output
- When the Program Is Correct, Produce Good Output
- Reread the Manual
- Consider Another Language
- Don't Be Afraid to Start Over
COBOL Resources on the Web
This site, sponsored and hosted by IBM, provides a space where COBOL
programmers can network, blog, ask and answer questions on forums - even get
answers directly from the IBM COBOL compiler, CICS, and IMS teams, learn
about new releases of the language, read white-papers, technical tips, and much
more.
COBOL
Programming - tutorials, lectures, exercises, and examples.
This site contains COBOL lecture notes, COBOL Programming Exercises with
sample solutions, a large number of example COBOL programs, tutorials on the
COBOL Report Writer and a comprehensive set of COBOL tutorials making a full
COBOL course.
COBOL
Frequently Asked Questions (FAQ)
This document, maintained by William M. Klein, is a good place to start if you
have COBOL questions.
IBM
COBOL Newsletter
Somewhat irregularly published newsletter, but contains some really good
articles and is worth the time to peruse. The newsletters are available
in Adobe PDF format for download and issues are available going back several
years.
FLEXUS COBOL
Page
This is a good site to download evaluation copies of some great screen
design add-on tools for COBOL. They also have additional links relevant
to COBOL.
Tal Systems' COBOL FD Analyzer v 1.50 (August, 1999)
This freeware tool runs in PC/MS-DOS (or DOS window under Windows 9?/NT or
OS/2) and parses COBOL source or copylibs. It reports the size and
offset within each '01' level for all data names (group and elementary).
COBFD supports any level OCCURS/REDEFINES and most specialty compiler
directives. The zip archive Includes the executable, documentation, and
a demo file. Interactive and command-line modes allow operation with
prompts or in MS/PC-DOS batch files.
The
COBOL Center
This site is another collection of links related to COBOL, including
tutorials, book sources, and job databases.
COBUG (COBOL User
Groups)
This is the COBOL User Groups (COBUG) portal website. It is a central
location for many COBOL programming resources.
C.I.C.S. Discussion List
To subscribe, send mail to LISTSERV@vm.marist.edu
with the command: SUBSCRIBE CICS-L your name.
IBM Manuals on the Web
IBM manuals are also available in BookManager format, which can be viewed
with reader software that is available for DOS, Windows, and OS/2 (the DOS
version may be used on UNIX systems under DOS emulation software). To
download the free IBM Library Reader, use the link: http://booksrv2.raleigh.ibm.com/homepage/ilrserv.html.
In order to download a publication's BookManager file, first use your browser
to navigate to the desired document's title page. Near the top of the page
you will find this entry: Book Path: /u/ftp/books/... Utilizing this
path information, construct a URL of the form:
http://www.s390.ibm.com/ftp/books/... The resulting URL will utilize
anonymous FTP to retrieve the BookManager file to your hard drive.
This page was last updated on November 15, 2010
. |