GitHub Octoverse 2019 found that 1.7 million students learned to code on GitHub, 1.3 million first-time contributors joined the open source community, and 35 of Global Fortune 50 companies have made contributions to open source in 2019. The industry has more developers today who are familiar with open source than ever before, and many of these developers learned how to develop applications through open source as students. Broadcom Distinguished Engineer Venkat Balabhadrapatruni, winner of the Best Strategic Partner Session award at SHARE Fort Worth, says, “Based on those stats it is very clear that the need to bring open source to the mainframe to welcome the next generation to the platform is greater than ever.” When working with the mainframe, however, this could be a liability if they are unfamiliar with adapting programming languages like COBOL (COmmon Business-Oriented Language).
Benefits of an Open-first Approach
Open source dominates much of the application development landscape, including integrated development environments (IDEs), build/pipeline management, testing, and deployment, says Venkat. “An open-first strategy that encompasses embracing open source and opening up the mainframe to the world through APIs is slowly gaining traction with enterprises,” he says. “Creating APIs to expose mainframe applications, infrastructure, and data is enabling seamless integration with distributed applications, tools, and more. Additionally, it’s becoming the key driver in smooth and faster delivery of quality digital experience that has become the norm in the current day and age.”
An open-first approach allows interactions with the mainframe to be like interactions with any other platform. Venkat says one benefit of this approach is that it “empowers the next generation of developers to leverage the tools and frameworks they are familiar with to do mainframe development.” For example, developers can use GitHub for collaborative application development or use their favorite IDE. Another benefit of this approach is to create consistency across an enterprise with a common set of processes and practices, as well as a standardized tool chain from mobile to mainframe. Special development tools or continuous integration (CI) and continuous delivery (CD) pipelines no longer have to be exclusively for the mainframe. In this way, he notes that “the mainframe is no longer a silo.” It will also accelerate software delivery via automation.
Venkat cautions that like any new technology, a new paradigm means there will be growing pains. “Given the history of mainframes and how they have evolved and customized,” he shares, “there is no one size fits all, so embracing a new paradigm while understanding/swapping out the current tools and processes will take time.”
What is Eclipse Che4z?
During the SHARE Fort Worth award winning session, “Evolution of Eclipse Che4z – Open Source, Web-based, Hosted IDE for Mainframe App Dev,” Venkat said that Eclipse Che is one option for developer teams. It’s a centralized development environment running on Kubernetes. It provides a hosted or cloud-native, web-based IDE for developer teams with the workspaces managed centrally on a server. Eclipse Che4z is an open source project under Eclipse Che that Broadcom contributes to and that extends Eclipse Che to enable mainframe application development in a centrally hosted, web-accessible IDE. It’s accessible through a web browser, making it even more accessible for mainframe application developers.
“Since our goal is to make mainframe look like any other environment,” Venkat explains, “Che4z contributes to a mainframe basic stack to Eclipse Che. This enables single-click provisioning of a workspace that allows developers to access mainframe artifacts, edit, build, and test them in the same way as a Java, .NET, or Web application.” Because Eclipse Che4z provides a modern IDE with zero client install for developers, it simplifies the onboarding process. He also says that it helps IT organizations reduce maintenance costs, since everything is hosted centrally and enhances the security because the code and/or data is not being copied to developer workstations. “Everything is located and managed in centrally hosted workspaces,” clarifies Venkat.
Core Components of Che4z Mainframe Basic Stack
- Zowe Explorer that enables access to mainframe datasets, jobs, and z/OS Unix files
- COBOL LSP editor that provides syntax highlighting/coloring, real-time syntax validation, content assist, dependency resolution (copy books), and other advanced features for COBOL application development
- HLASM LSP editor that provides syntax highlighting/coloring, real-time syntax validation, content assist, and HLASM macro tracing for HLASM code
- Zowe command-line interface
- Explorer for Endevor to allow access to Endevor repositories
Venkat explains that Eclipse Che4z is powered by Zowe and brings together two open source projects — a distributed Eclipse Che open source and Zowe, the first mainframe open source project. “With that said, the language server protocol (LSP) enabled editors of COBOL and HLASM can be used in any IDE that supports LSP protocol, including VSCode,” he adds.
New Features of Eclipse Che4z
Some of the new features of Eclipse Che4z include COBOL Batch debugging capability, support for non UTF-8 character sets, etc. The COBOL LSP editor now supports COPY REPLACE as part of COBOL syntax validation; Area A and B visualization, which enables users to easily decipher the respective areas when coding in COBOL; and, syntax analysis of copybooks. Meanwhile, Zowe Explorer provides profile and connection validation. “Soon, we will be adding smart REXX editing capabilities and COBOL control flow to help understand the logic flow of a COBOL application visually to the Eclipse Che4z mainframe basic stack,” says Venkat. “These extensions are already available as VSCode extensions in the VSCode marketplace today.”
COBOL is one of the most common programming languages in use on the mainframe, particularly for large-scale batch and transaction processing jobs. Eclipse Che4z can help today’s developers edit and modify COBOL through a modern interface that is familiar to them. For those interested in test-driving Eclipse Che4z, they can employ the Eclipse Che hosted SaaS version or take advantage of the Broadcom-run workshops to access the Broadcom-hosted instance of Eclipse Che4z. Broadcom’s internal development teams are using another hosted instance to advance HLASM and COBOL. “We believe in ‘drinking our own champagne,’” says Venkat. Customers and the open source community are “kicking the tires” of Eclipse Che, which is available to everyone at no cost to do a proof of concept of the technology or even use the technology. Eclipse Che4z can help bring the mainframe into the future, enabling access to resources on z/OS and smart editing support for COBOL, the most prominent language on the mainframe.
Interested in learning more or connecting with Venkat? Email him at firstname.lastname@example.org.