Skip to content

Commit 376f493

Browse files
tanto259vargajb
andcommitted
Fix typos on course document
Co-authored-by: Janos Varga <[email protected]> Signed-off-by: Hartanto Ario Widjaya <[email protected]>
1 parent 9f46689 commit 376f493

File tree

6 files changed

+14
-14
lines changed

6 files changed

+14
-14
lines changed

COBOL Programming Course #1 - Getting Started/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ These materials are being used by other organizations to provide COBOL training
2323

2424
## Build
2525

26-
The PDF is built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accomodate this.
26+
The PDF is built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accommodate this.
2727

2828
```
2929
pandoc "COBOL Programming Course #1 - Getting Started.md" -o "COBOL Programming Course #1 - Getting Started.pdf" --number-sections --toc -B Front_Matter.tex --listings

COBOL Programming Course #2 - Learning COBOL/COBOL Programming Course #2 - Learning COBOL.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3472,8 +3472,8 @@ To read more on data sets, visit the IBM Knowledge Center:
34723472
- S013-68: Block size is larger than 32752
34733473
- S013-A4: SYSIN or SYSOUT is not QSAM file
34743474
- S013-A8: Invalid record format for SYSIN or SYSOUT
3475-
- S013-D0: Attemped to define PDS with FBS or FS record format
3476-
- S013-E4: Attemped to concatenate more than 16 PDSs
3475+
- S013-D0: Attempted to define PDS with FBS or FS record format
3476+
- S013-E4: Attempted to concatenate more than 16 PDSs
34773477

34783478
**Frequent Causes:**
34793479
Most of the reason for this ABEND code is due to inconsistencies between the JCL and the COBOL program.

COBOL Programming Course #2 - Learning COBOL/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ These materials are being used by other organizations to provide COBOL training
2323

2424
## Build
2525

26-
The PDF is built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accomodate this.
26+
The PDF is built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accommodate this.
2727

2828
```
2929
pandoc "COBOL Programming Course #2 - Learning COBOL.md" -o "COBOL Programming Course #2 - Learning COBOL.pdf" --number-sections --toc -B Front_Matter.tex --listings

COBOL Programming Course #3 - Advanced Topics/COBOL Programming Course #3 - Advanced Topics.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@ Let us consider a dynamic-length elementary item. To recall, an elementary item
282282

283283
If the content received is longer than the current length, a new larger buffer will be allocated for it. Additionally, if the length of the sender is zero, the receiver's length will be set to zero as well.
284284

285-
Now, if the dynamic-length elementary item is used to receive data and we reference-modified it, the item will be treated as a fixed-length item with with a length equals to the current length of the dynamic-length item. In such cases, the compiler will not allocate or reallocated the buffer.
285+
Now, if the dynamic-length elementary item is used to receive data and we reference-modified it, the item will be treated as a fixed-length item with a length equals to the current length of the dynamic-length item. In such cases, the compiler will not allocate or reallocated the buffer.
286286

287287
Note that not all statement supports dynamic-length elementary items. Common statement like REDEFINE or RENAME will not work. Additionally, we cannot take their address using the ADDRESS-OF special register. The full list of the statements supported is available on the [Language Reference](https://www.ibm.com/docs/en/cobol-zos/6.4?topic=relationships-dynamic-length-items).
288288

@@ -403,7 +403,7 @@ Business application solutions were architected decades ago using programming la
403403
- **Using VSCode and Zowe Explorer**
404404

405405
## Enterprise COBOL APIs
406-
IBM mainframe flagship operating system, z/OS, includes software that has enabled large scale business applications for decades. The software is frequently referred to as 'middleware'. Examples of z/OS 'middleware' is Db2, a relational database, CICS, transactional processor, IMS, both transactional and hierarchical database, and MQSeries, a mechanism to store and forward data between systems asynchonously.
406+
IBM mainframe flagship operating system, z/OS, includes software that has enabled large scale business applications for decades. The software is frequently referred to as 'middleware'. Examples of z/OS 'middleware' is Db2, a relational database, CICS, transactional processor, IMS, both transactional and hierarchical database, and MQSeries, a mechanism to store and forward data between systems asynchronously.
407407

408408
### z/OS Middleware
409409
A fundamental capability of z/OS middleware software is communication enablement of programming languages. The z/OS middleware software includes documentation and examples of how any specific programming language can communicate with the specific z/OS middleware software. A programming language, such as Enterprise COBOL, would use documented interfaces and techniques to initiate services and pass data between the COBOL application program and the middleware.
@@ -492,7 +492,7 @@ Observe ":CUSTOMER-RECORD" in the EXEC SQL FETCH statement. A colon (:) precede
492492
*Example 3. COBOL Data Item for storing variables where Db2 is the data source*
493493

494494
## SQL Capability within Enterprise COBOL
495-
Learning SQL is a separate technical skill. The objective of this brief chapter is familiarization with Enterprise COBOL use of SQL API. A COBOL program is capable of any SQL communication with Db2 for z/OS assuming necessary authority is granted. SQL has four catagories as outlined in Example 4. Learning SQL is necessary for a COBOL programmer to become proficient with using the Db2 API for a variety of possible applications where COBOL provides the what, how, and when logic of executing specific SQL.
495+
Learning SQL is a separate technical skill. The objective of this brief chapter is familiarization with Enterprise COBOL use of SQL API. A COBOL program is capable of any SQL communication with Db2 for z/OS assuming necessary authority is granted. SQL has four categories as outlined in Example 4. Learning SQL is necessary for a COBOL programmer to become proficient with using the Db2 API for a variety of possible applications where COBOL provides the what, how, and when logic of executing specific SQL.
496496

497497
```
498498
DDL - Data Definition Language
@@ -506,7 +506,7 @@ INSERT
506506
UPDATE
507507
DELETE
508508
509-
DCL - Data Control Langauge
509+
DCL - Data Control Language
510510
GRANT
511511
REVOKE
512512
@@ -520,7 +520,7 @@ ROLLBACK
520520
Db2 for z/OS V12 is the most current release of Db2 at the moment. The Db2 V12 for z/OS Application Programming and SQL Guide is available using internet search SC27-8845, the Db2 for z/OS professional manual number. Db2 V12 for z/OS SQL Reference is also necessary to advance programming API capability (SC27-8859).
521521

522522
### Db2 Data Base Administration (DBA) vs Application Programming
523-
In large enterprise, the roles and responsibilities are divided for a number of reasons. The responsibility of the DBA would include the DDL and DCL outlined in Example 4. The DBA is responsibile for managing the entire relational data base environment to insure availability, security, performance, etc. The system programmers and DBAs frequently setup the application development procedures for COBOL programmer development, testing, and maintenance of the COBOL business applications. A COBOL application programmer is typically provided documented procedures to follow to apply their COBOL programming and SQL API expertise.
523+
In large enterprise, the roles and responsibilities are divided for a number of reasons. The responsibility of the DBA would include the DDL and DCL outlined in Example 4. The DBA is responsible for managing the entire relational data base environment to insure availability, security, performance, etc. The system programmers and DBAs frequently setup the application development procedures for COBOL programmer development, testing, and maintenance of the COBOL business applications. A COBOL application programmer is typically provided documented procedures to follow to apply their COBOL programming and SQL API expertise.
524524

525525
Enterprise COBOL is a learning journey. Each Enterprise COBOL API is a separate learning journey. As is the case with most professional endeavors, learning, repetition, and applying what is learned is re-iterative process leading to advanced skill levels.
526526

@@ -530,7 +530,7 @@ The lab contains data used in previous labs from "COBOL Programming Course #1 -
530530
The lab contains Enterprise COBOL source code with Db2 APIs along with the JCL to compile and execute the COBOL programs.
531531

532532
### Using VSCode and Zowe Explorer
533-
Zowe Explorer is currently without the ability to execute Db2 SQL interactively. It is inevitable Zowe Explorer will eventually have the capability of connectiong to relational databases and executing SQL.
533+
Zowe Explorer is currently without the ability to execute Db2 SQL interactively. It is inevitable Zowe Explorer will eventually have the capability of connecting to relational databases and executing SQL.
534534

535535
Therefore, JCL members were created to create and load user tables following examples provided.
536536

@@ -1123,7 +1123,7 @@ Clearly, Mari’s changes to the program that generates the reports have broken
11231123

11241124
Can you fix the code to get the correct result? The new source code is named **CBL0106** and the JCL is **CBL0106J**. In case you get stuck, the solution is in the file **CBL0106C**.
11251125

1126-
You can find them in the github repository for the COBOL course, in the subfolder **/COBOL Programming Course #2 - Advanced Topics/Challenges/Debugging**.
1126+
You can find them in the GitHub repository for the COBOL course, in the subfolder **/COBOL Programming Course #3 - Advanced Topics/Challenges/Debugging**.
11271127

11281128
\newpage
11291129
## COBOL Challenge - The COVID-19 Reports
@@ -1294,7 +1294,7 @@ We will explore the popular Hacker News website for this challenge. Hacker News
12941294
The site offers a dynamic list of posts/stories, submitted by users, each of which could be expanded into its own unique comment thread. Readers can upvote or downvote links and comments, and the top thirty links are featured on the front page. Today, more than five million people read Hacker News each month, and landing a blog post on the front page is a badge of honor for many technologists.
12951295
12961296
### Our Goal
1297-
We will be working on a Hacker News 2015-2016 dataset from Kaggle with a full year’s worth of stories: Our goal is to extract only the Mainframe/COBOL related stories and assign ranking scores to them based on (a simplified version) the published Hacker News ranking algorithm. We will create a front page report that reflects this ranking order. The algorithm works in a way that nothing stays on the front page for too long, so a story’s score will eventually drop to zero over time (the gravity effect). Since our posts are spread out over a year and as older posts will always have a lower (or zero) ranking, we will distort the data so all our stories have the same date and and consider only the times in the ranking score calculation. This will give all our posts a fair chance of landing the front page. Our front page report is published at 11:59pm. [Here's some additional information on the ranking.](https://www.righto.com/2013/11/how-hacker-news-ranking-really-works.html)
1297+
We will be working on a Hacker News 2015-2016 dataset from Kaggle with a full year’s worth of stories: Our goal is to extract only the Mainframe/COBOL related stories and assign ranking scores to them based on (a simplified version) the published Hacker News ranking algorithm. We will create a front page report that reflects this ranking order. The algorithm works in a way that nothing stays on the front page for too long, so a story’s score will eventually drop to zero over time (the gravity effect). Since our posts are spread out over a year and as older posts will always have a lower (or zero) ranking, we will distort the data so all our stories have the same date and consider only the times in the ranking score calculation. This will give all our posts a fair chance of landing the front page. Our front page report is published at 11:59pm. [Here's some additional information on the ranking.](https://www.righto.com/2013/11/how-hacker-news-ranking-really-works.html)
12981298
12991299
### The Plan
13001300
- There are different creative ways of accomplishing this but here’s our plan: We will have a COBOL program that reads the input CSV file and retrieves only the ***Mainframe/COBOL*** stories. It then calculates the ranking score for the stories by factoring in the time they were posted and the number of votes they received. Each of the records is then written to an output dataset along with the ranking score.

COBOL Programming Course #3 - Advanced Topics/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ These materials are being used by other organizations to provide COBOL training
1616

1717
## Build
1818

19-
A PDF can be built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accomodate this. Prior to issuing the following command, all subscript and superscript notation must be changed. Find all instances of `<sub>` and `<\sub>` and replace them with `~`. Find all instances of `<sup>` and `<\sup>` and replace them with `^`. This is the notation required for pandoc but this would make it difficult to read the markdown in GitHub.
19+
A PDF can be built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accommodate this. Prior to issuing the following command, all subscript and superscript notation must be changed. Find all instances of `<sub>` and `<\sub>` and replace them with `~`. Find all instances of `<sup>` and `<\sup>` and replace them with `^`. This is the notation required for pandoc but this would make it difficult to read the markdown in GitHub.
2020

2121
```
2222
pandoc "COBOL Programming Course #3 - Advanced Topics.md" -o "COBOL Programming Course #3 - Advanced Topics.pdf" --number-sections --toc -B Front_Matter.tex --listings

COBOL Programming Course #4 - Testing/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ These materials are being used by other organizations to provide COBOL training
1616

1717
## Build
1818

19-
A PDF can be built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accomodate this.
19+
A PDF can be built using the following [pandoc](https://pandoc.org/) command. Note: pdflatex is required. [MiKTeX](https://miktex.org/) can be installed to accommodate this.
2020

2121
```
2222
pandoc "COBOL Programming Course #4 - Testing.md" -o "COBOL Programming Course #4 - Testing.pdf" --number-sections --toc --listings

0 commit comments

Comments
 (0)