Getting Started
Part Three - Challenge #01

Thinking about starting Part 3? Just Do It!

Part 3 is not a race. You have until December 31, 2019 to participate and complete

Many students decide to work on Part 3 as time permits.

Review of all Part 3 submissions are reviewed after close of the contest in December 31.

Part 3 results and badge awards are available in January 2020, following review of all Part 3 submissions.

Many student winners completed Part 3 during semester break during last 2 weeks in December.

Part 3 is your opportunity to learn using the guided challenge instructions or deviate and explore.

If you are an educator, many educators teaching computer technology subjects, permit extra credit for contest partipation and for levels of contest completion.


Part 3 assumes you know how to:

Part 1 and Part 2 participation provided you with the "know how to":

  • Edit MVS data sets and Unix files
  • Submit JCL
  • Review JCL job output in the JES spool using SDSF
  • Identify and correct simple JCL syntax errors

The Future of IBM Z

The IBM Z was built from the ground up to hande massive amounts of data where security and performance is paramount. A single IBM Z can host thousands of operating systems. While IBM Z can host other operating systems such as Linux, Part 3 will focus on the flagship operating system, z/OS.


z/OS manages a vast majority data for the world's most critical financial services, insurance, government, and retail applications. IBM Z modernization enables many new business opportunities associated with machine learning, predictive analytics, modern Application Program Interfaces (APIs) that communicate seemlessly with Internet of Things (IoT) such as mobile phones and the increasingly electronically instrumented society. z/OS has both time tested and trusted business applications and more recent modernization advancements.


.... place holder for September 2019 announcements...


5 "best practices" applied to large enterprise application program development, technical services, and support.

  1. Keep it simple
  2. Become familiar with system utilities
  3. Do not write a program when a system utility can accomplish the task
  4. Scripting languages are an excellent way to develop program process logic
  5. Compile programs into machine executables when performance is a high priority

Challenge:

How to get started

From ISPF panel

  • Enter tso sub 'zos.public.jcl(part3)'

JCL job 'zos.public.jcl(part3)' resulted in the following:

  1. Delete Z#####.SOURCE - if present
  2. Delete Z#####.REXX - if present
  3. Delete Z#####.P3.OUTPUT - if present
  4. Delete Z#####.LOAD - if present
  5. Create Z#####.SOURCE - an empty data set name
  6. Create Z#####.REXX - an empty data set name
  7. Create Z#####.P3.OUTPUT - an empty data set name
  8. Create Z#####.LOAD - an empty data set name

Substitute your ID for Z##### above

All part 3 challenges are designed to start over. If you want to start all of part 3 over, then
tso sub 'zos.public.jcl(part3)' which deletes all part 3 data sets and part 3 work previously completed.


Exposure to REXX, the z/OS all purpose scripting language
  1. Create a new member hello in Z#####.REXX --- remember to substitute Z##### with your ID
  2. There are a number of ways to do this, you can find some of them in Option 3 of ISPF.
  3. Copy in lines from 'zos.mtm2019.public.rexx(hello)'
  4. F3 or save;end to return to your REXX partitioned data set directory of members
  5. A single member exists, hello
  6. Enter ex to the left of member hello to execute the routine
      The result is 3 lines written to Z#####.P3.OUTPUT(#01)
    dslist p3.output, then view or browse member #01 to see the 3 lines

Execute modified REXX

The objective is to write userid, date, and time on a single line.

REXX comment lines begin with /* and end with */

  1. Edit Z#####.REXX --- remember to substitute Z##### with your ID
  2. Change lines 9, 10, and 11 to be comments
  3. Change lines 13, 14, 15, and 16 to execute - remove comment markers
  4. F3 or save;end to return to your REXX partitioned data set directory of members
  5. Enter ex to the left of member hello to execute the routine
      The result is a single line is written to Z#####.P3.OUTPUT(#01)
    dslist p3.output, then view or browse member #01 to see the single line

You broke the ice on Part 3 and you are ready for the next challenge

Next: Challenge #02