Modern Mainframe

Mainframe modernization for the next generation of application developers using Visual Studio Code (VS Code), Git, and DevOps automation — automated build, test, deployment of COBOL applications & more. Features articles on Code4z, Test4z, Team Build and Endevor Bridge for Git.

From VS Code to Mainframe Developer Cockpit

--

Code4z offers ‘in the zone’ productivity, heightened ‘situational awareness’, and a big WOW factor

Whether fighter pilot or Formula One driver, performing at an elite level requires a relentless focus on precision execution. To help these professionals capture small margins of advantage that add up to big victories, their teams equip them with purpose-built cockpits with access to the most powerful instruments/controls, range of motion minimized, and efficiency maximized with the latest technological innovations.

Cockpit designers push the performance envelope to ever higher levels.

Developers benefit from the same principles. Performance is about staying ‘in the zone’, those precious windows of maximum concentration and productivity, for as long as possible. Maximize code access and understanding, minimize context switching, and automate wherever possible.

With its extensible ‘any language, any platform’ design, Visual Studio Code has become the de facto platform for coding productivity. Experiences are easily tailored to individual preferences making the tool an extension of the developer’s professional identity. And most importantly they’re tailored to specific needs (languages, databases, platforms, frameworks…).

Seventy-four percent of professional developers voted VS Code as their preferred development environment, making it the top choice by a huge margin. Meanwhile, Eclipse, which still has a strong community of advocates, has fallen to 9th favorite editor.

VS Code presents an equally compelling opportunity for mainframe developers, masters of the time-honored ISPF and, more recently, Eclipse. Think of the difference between the current ways of working and VS Code as analogous to the difference between older cockpit technologies and today’s helmet-mounted, heads-up displays. New technologies enable an entirely new design paradigm. And it’s a developer experience (DevX) most next-gens and new-to-mainframe talent already know and love which creates a huge talent pool.

So how do mainframe developers take advantage of VS Code? Code4z is the free and open extension pack that transforms VS Code into a developer cockpit. It provides a rich set of extensions that span the entire development lifecycle and is readily available for download from the VS Code Marketplace. Some highlights:

  • Language support, including Intellisense, for COBOL and other mainframe languages
  • Mainframe version control integration (source code can remain in-place)
  • Interactive debugging
  • Access mainframe data sets, USS files, and jobs
  • Graphical visualizations
  • Data editing and file management
  • Interactive abend analysis

Code4z / VS Code use cases that get mainframe leaders particularly excited include:

  • Automatic dependencies retrieval — retrieve code dependencies from the mainframe easily and automatically
  • Flow analysis and debugging — visually and interactively analyze the program flow and debug (also at run time)
  • Dialects — leverage syntax awareness for company-specific language dialects
  • Edit flow — Code completion, application snippets, syntax and semantic checking with minimal false positives using the COBOL Language Server Protocol (LSP)

Perhaps the greatest single strength of the Code4z / VS Code experience is the ability to easily navigate and understand apps with tens of thousands of modules, jumping to search results instantly, making code reviews a breeze. We’ll come back to this point.

Note, however, Code4z is just the starting point. There are many powerful extensions beyond the Code4z extension pack that should also be considered by team leaders. In addition to COBOL, for example, there are language extensions for JCL, REXX, HLASM, Db2, and Easytrieve. See the many mainframe-oriented extensions available in the Marketplace.

Broadcom is deeply committed to elevating developer productivity, so additional complementary extensions with the goal of increasing the adaptability of mainframe applications, are in the pipeline. Once an extension has an established base of active users, it’s considered for inclusion in the Code4z pack.

Visit mainframe.broadcom.com/developer-cockpit

To gain a better understanding of the Code4z-enabled experience, with Endevor Bridge for Git, Zowe and other tools, check out the Developer Cockpit simulator. It features a range of VS Code extensions (including Code4z), Zowe CLI plug-ins and mock scripts to provide a realistic configuration for a COBOL/Db2 application developer.

Acknowledging the extraordinary breadth and depth of extensions beyond the mainframe available in the Marketplace is also important. Programmers, Sysprogs, DevOps engineers, and SREs have access to close to 50k extensions covering almost any need: for example, working with JavaScript or Python, interacting with common DevOps tools and even customizing themes (e.g., semantic highlighting).

Suggestion: share the Developer Cockpit with architects and team leads to socialize the opportunity within your organization.

Ergonomics & Instrumentation

What separates precision-engineered cockpits from other environments are the ergonomics and available instrumentation, key considerations in the design of Code4z.

Code4z workflows are the result of extensive User Experience (UX) research, especially regarding the “inner loop” of development (access, analyze, edit, debug, unit test). This is where the battle against context switching is fought and, aided by Zowe, Code4z provides seamless access to mainframe code, data and resources. Note Zowe is not required, but the Zowe-enabled experience provides a far more robust and seamless experience so if your team has not yet deployed it, we recommend doing so.

Like the flight and racing analogies, navigation is a key area for developer instrumentation. Mainframe application development is unique in the size and complexity of its applications which makes navigation all the more critical. VS Code’s Minimap feature and Code4z’s COBOL Control Flow extension, for example, provide powerful visualizations that help developers navigate complex, monolithic applications with ease.

The cockpit provides ‘situational awareness’ (i.e., exactly where the user is in the code) and the means to instantly jump anywhere without the painfully slow scrolling familiar to ISPF users. Another powerful feature that complements the Code4z Language Support extensions is the Outline view which provides a hierarchical tree-like structure of the code elements. It facilitates the understanding of the overall organization of the code and aids in locating specific code blocks or sections for editing or debugging purposes.

Code4z extensions and more

What about VS Code-compatible cloud tools like GitHub Codespaces?

While VS Code is a lightweight client, there are natural benefits of cloud equivalents that are generating a lot of buzz. The twin benefits of peer collaboration combined with the elimination of workstation maintenance make the browser-based options, like GitHib Codespaces and Red Hat OpenShift Dev Spaces, compelling.

Getting Started

Code4z is a free and open solution — feel free to download it from the VS Code marketplace and try it whenever you like. All of the extensions in the Code4z pack are also available a la carte in the marketplace.

Enterprise support for Code4z, and back-end services used by some of the extensions like debugging, are included in the Broadcom DevOps Suite.

Most of the Code4z and related extensions have dedicated articles explaining their capabilities on the Modern Mainframe blogsite so check them out.

And if you think career ISPF programmers won’t adopt VS Code, check out: VS Code for Mainframe: Confessions of a Career ISPF Programmer.

Broadcom is deeply committed to supporting mainframe developers in their quest for ever higher levels of productivity by staying ‘in the zone’. Create a big WOW factor for your team by learning about Code4z, Test4z and related solutions. Contact your Broadcom Mainframe Business Specialist to discuss the many modernization possibilities.

--

--

Modern Mainframe
Modern Mainframe

Published in Modern Mainframe

Mainframe modernization for the next generation of application developers using Visual Studio Code (VS Code), Git, and DevOps automation — automated build, test, deployment of COBOL applications & more. Features articles on Code4z, Test4z, Team Build and Endevor Bridge for Git.

David McNierney
David McNierney

Written by David McNierney

DevOps @ Broadcom #devops #zowe #zos #IBMz #mainframe #jenkins #cicd #agile #mhealth #github #vscode

Responses (1)