There are a number of courses available for study as Remote Contact Training (RCT) from The Trainer's Friend

A Remote Contact Training (RCT) is a self-study class done with the aid of a mentor (usually the course author). Each student gets their own copy of our standard handout; we work with a technical contact at the student's shop to set up the course labs. The student then goes through the book at their own pace, working the labs. When questions arise, the mentor is available by email (and, in some cases, phone). The mentor can also be used to provide hints, evaluate solutions, and give encouragement.

Here are short descriptions and links to details about each available course:

  1. Introduction to Application Programming (z/OS) - Introduces the student to the fundamentals of application programming, as done in the z/OS context. Details

  2. Introduction to z/OS - Introduces the student familiar with MVS and OS/390 to the fundamentals z/OS, along with a few neat new tricks. Details

  3. TSO/ISPF in z/OS - Useful as a first course in z/OS as well as the standard introduction to TSO/ISPF. Details

  4. ISPF Update - Quick review and introduction to changes to ISPF since V3.4; fast way to get up to speed with all the new features. Details

  5. Advanced ISPF in z/OS - A deeper look at some facilities of ISPF than time permits in the intro course, including an introduction to creating and using edit macros. Details

  6. TSO CLIST Programming in z/OS - A thorough introduction to creating and maintaining scripts written in the CLIST language, including coverage of most TSO commands. Also the only place to learn how to use TSO edit (not ISPF edit). Details

  7. ISPF and JCL on z/OS - A combination of A633 and B610, made possible by eliminating content overlap and a few topics, to fit into 5 days. Details

  8. TSO REXX programming in z/OS - A thorough introduction to creating and maintaining scripts written in the REXX language, including coverage of most TSO commands. Details

  9. Introduction to TSO and REXX APIs - Discusses how to call some of the most useful and powerful TSO and REXX services from a variety of languages (Assembler, COBOL, PL/I, and C). Details

  10. Developing Dialog Manager Applications in z/OS - Covers all the pieces that have to work together to make an ISPF (Dialog Manager) application work: panels, ISPF services, messages, file tailoring skeletons, ISPF table handling, action bars, keylists, ISPF variables, and more. Dialogs are driven in either CLIST or REXX, although there is a brief introduction to dialogs written in Assembler, COBOL, PL/I, and C. Details

  11. z/OS JCL and Utilities - A solid introduction to z/OS and how to code and use JCL, including using symbolic parameters, cataloged and instream procedures and basic utility programs. Details

  12. Advanced Topics in z/OS JCL - A fast paced review of B610 plus more in depth investigation of allocation, JCL debugging, new data set types, working with HFS files, more advanced SORT capabilities. Details

  13. Using DFSORT and ICETOOL - Explores the facilities of IBM's DFSORT product, which includes the ICETOOL product as well as ICEGENER. Details

  14. OS/390 Assembler Language: Classic - Although the course name contains "OS/390", this course is actually our "Introduction to Assembler" offering. We cover all the basics for application programmers (or systems programmers) learning Assembler, including the original instruction set and machine instructions introduced through the 1970's and 1980's along with HLASM V1.3. Details

  15. z/OS Assembler: Basic Interfaces - This three day course covers fundamental linkage conventions as well as debugging and use of common system services. It also discusses subroutines and the Program Binder (nee Linkage Editor). Details

  16. Assembler Language: Update - This one day course covers features introduced by HLASM V1.4 as well as machine instructions introduced in the 1990's. Details

  17. z/OS Assembler for Applications Programmers - This intense 3.5 day course describes the hardware world of z Architecture, including new instructions (including the current z10 machines) and features of HLASM V1.5 and V1.6. It also discusses z/OS features and facilities introduced in the various releases of z/OS, from V1R1 through the current version. Details

  18. Writing z/OS CGIs in Assembler - This challenging course presupposes lots of pre-requisites. The student learns how to create and deploy Assembler CGIs for use on your z/OS system hosting a website. Details

  19. Converting to COBOL II - This course is designed to help shops that still have OS/VS COBOL programs around that need to be converted to current COBOL. The conversion to COBOL II is the first, and most difficult step. Later courses cover differences in the language, but this course focuses on the essential conversion issues. Details

  20. Converting to COBOL for OS/390 & VM - This course is designed to help shops that still have OS/VS COBOL programs around that need to be converted to current COBOL and who will be jumping right to any of the LE COBOL compilers. Later courses cover differences in the language, but this course focuses on the essential conversion issues. Details

  21. VSAM For COBOL Programmers - Here we cover an introduction to VSAM concepts and vocabulary, including IDCAMS, the VSAM utility. Then we examine how to load and access and update records in VSAM data sets, from COBOL programs. The course includes working with ESDS, KSDS, RRDS, and alternate indexes. Details

  22. Enterprise COBOL Update I: Essentials - This course is designed for COBOL programmers who need to learn the major new features of COBOL, since the introduction of COBOL II through the latest version of Enterprise COBOL. A quick way to get up to speed. Details

  23. Enterprise COBOL Update II: Unicode and XML Support - A practical introduction to XML and how to work with XML files in COBOL programs. Once the fundamentals are covered, the student creates a "wrapper" program to convert an XML-formatted transaction to classic COBOL style data, pass this to an existing transaction handler, and convert the result from class COBOL format to XML, for passing back to the requestor. Details

  24. Structured COBOL Workshop for Enterprise COBOL - This is our beginning COBOL programming course. The student learns fundamentals of COBOL as implemented in the current IBM compiler. Details

  25. Advanced Topics in COBOL (Enterprise, z/OS) - This is our second COBOL programming course. The student learns more advanced features, including subroutines and working with variable length records, string handling, and table handling. Details

  26. Enterprise COBOL Debugging and Maintenance - This course focuses on how to use LE dumps to solve COBOL bugs, and how to use the Program Binder to update modules. It covers static and dynamic calls and LE condition handling and run-time parms of interest. Details

  27. Structured PL/I Coding Workshop - This is our PL/I introduction course, for programmers new to the language. We cover all the fundamentals to get the student productive quickly. Details

  28. Advanced Topics in PL/I - This course discusses topics such as storage managment, string handling, list processing, condition handling, external subroutines, and more. Details

  29. VisualAge PL/I Differences - This course covers the differences between the latest IBM PL/I compilers, and how to use the newest features such as fetch-from-fetch and user-defined types. Details

  30. VSAM For PL/I Programmers - Here we cover an introduction to VSAM concepts and vocabulary, including IDCAMS, the VSAM utility. Then we examine how to load and access and update records in VSAM data sets, from PL/I programs. The course includes working with ESDS, KSDS, RRDS, and alternate indexes. Details

  31. Enterprise PL/I Debugging and Maintenance - This course focuses on solving PL/I program errors, using the LE dump and PL/I language facilities for debugging. Special attention is paid to debugging error in dyamic storage routines and pointer errors. Details

  32. VSAM With Access Method Services - This introduction to VSAM and the IDCAMS utility is mainly for people who support VSAM, adding facilities such as backup and recovery instead of language oriented processing of VSAM data sets. Details

  33. DB2 Concepts and Facilities - This provides a conceptual level of understanding for developers who will be designing DB2 data bases and tables, including some hands on labs with basic SQL and some data base design and normalization approaches. Details

  34. DB2 Management Overview - This one day course provides an introduction to the concepts and terminology of DB2, designed for business and technical managers who need to understand the capabilities and implications of using DB2 in applications on z/OS. Details

  35. DB2 Version 8 Differences - This three day course covers the enhancements provided with this version of DB2, how they might be used in real applications, and how to tailor and manage DB2 at this level. Details

  36. DB2 Version 9 Differences - This three day course covers the enhancements provided with this version of DB2, how they might be used in real applications, and how to tailor and manage DB2 at this level. Details

  37. DB2 Application Programming - This is our premier first course for the DB2 application developer. Solid introduction to SQL and embedded SQL. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  38. Advanced DB2 Application Programming - This course provides an opportunity to explore and develop programs that use more complex and advanced SQL, working with LOBs, stored procedures, dynamic SQL, the REXX SQL interface, and more. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  39. DB2 Stored Procedures - This course describes how to code and invoke DB2 stored procedures written in Assembler, COBOL, PL/I, C, and REXX. Details

  40. DB2 Native SQL Stored Procedures - This one day course describes the methodology for coding DB2 stored procedures in Native SQL. Details

  41. DB2 Dynamic SQL - This course focuses on how to construct and execute SQL requests dynamically, as opposed to statically. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  42. DB2 / CICS Interface - This course shows how to access DB2 objects from CICS transaction programs. Details

  43. SQL Query Building in DB2 - This course focuses on DB2 concepts and essential SQL statements. It does not work with SQL embedded in programs. Uses QMF for labs, and is designed for non-programmers. Details

  44. SQL Coding Workshop - This course focuses on DB2 concepts and essential SQL statements. It does not work with SQL embedded in programs. Uses SPUFI for labs. Details

  45. QMF For Programmers - This course focuses on DB2 concepts and essential SQL statements. It does not work with SQL embedded in programs. Uses QMF for labs. Details

  46. QMF For SQL Developers - This course is for programmers already familiar with DB2 and SQL, using SPUFI. It explores how to use QMF, including QMF Procedures, Forms, and variables as well as Query By Example. Details

  47. Advanced SQL Query Building - This course not only examines more complex queries, but it also uses EXPLAIN to consider how to improve queries and query strategies. Details

  48. DB2 Tuning and Performance - Here we explore how DB2 selects query strategies and how to influence those strategies to improve the performance of queries. Details

  49. DB2 Database Administration - This course covers the details of building and managing your DB2 subsystem(s) under z/OS. Details

  50. DB2 Operations - This course examines operations issues that can arise with DB2 subsystems and how to respond to these issues. Also, how to monitor the subsystem and what to look for. Details

  51. Using LE Services in z/OS - "LE" stands for Language Environment, a common run-time for programs written in Assembler, COBOL, PL/I, C, and more. LE also includes a suite of callable services that perform a variety of useful services, and this course covers them all. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  52. Secrets of Inter-Language Communication in z/OS - This course focuses on how to define data items and structures in four programming languages and how to call and be called across language boundaries. This course also covers how to create and use DLLs (Dynamic Link Libraries). Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  53. Creating and Using DLLs in z/OS - This course contains just the DLLs portion of the course above. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  54. Structured C Coding Workshop - This is our "Intro to C" course and provides a solid introduction to writing programs in C for the z/OS environment. Details

  55. Introduction to z/OS UNIX - This is our starter course for running UNIX under z/OS. It covers the UNIX environment, file systems, and over 60 commands. At the end of the course, each student is able to create a small website on their z/OS system. Details

  56. Shell Script Programming in z/OS UNIX - This course extends the previous z/OS UNIX course by covering additional commands as well as the shell script programming language. It also covers several editor utilities such as 'ed' and 'sed' ('vi' is an optional topic). Details

  57. Developing Applications for z/OS UNIX - This course extends the previous two z/OS UNIX courses by looking at how to write programs that use z/OS UNIX facilities and that are designed to run under a shell. It also discusses z/OS UNIX commands to assemble, compile, and link programs as well as 'make'. Lectures and labs support DB2 programs written in Assembler, COBOL, PL/I, and C. Details

  58. You and z/OS and The World Wide Web - This exciting course provides a thorough introduction to web-oriented technologies: HTML, XHTML, CSS, ECMAScript (Javascript), DOM, forms, controls, tables, frames, and cookies. All intended to be run on z/OS using one of the free HTTP servers that comes with z/OS (no WebSphere required). Details

  59. Introduction to CGIs on z/OS - This course covers the concepts of CGIs on the z/OS platform, as well as providing sample CGIs written in REXX, shell script, Assembler, COBOL, PL/I, and C. This course has no labs: it is intended to provide a common background for language-specific CGI implementation courses such as "Writing z/OS CGIs in Assembler" and so on. Details