The affinity developers have for their code editors/development environments is strong. Like tools used by master chefs or accomplished artists, they’re part of their professional identity.
Mainframe developers have used these tools, the time-honored ISPF and more recently Eclipse, to create the foundation on which many of today’s businesses run. These tools of the trade have served the community well.
However, a new tool has been transforming the software development landscape like none before it, Visual Studio Code (VS Code). Described as an overnight sensation a decade in the making, VS Code has raised the bar in terms of developer empowerment and productivity.
With it, developers are accomplishing things that are difficult or even impossible to do with legacy tools.
Now, with the introduction of the free and open Code4z extension pack, mainframe developers can reap the same benefits.
Having addressed Git in my previous article, I’m now examining the value of VS Code for mainframe developers from the most important perspective: a developer’s. While new-to-mainframe talent already knows and loves VS Code, what do career ISPF developers think? Ivo Cermak, a Technical Team Lead Manager at Broadcom, shares his experience.
Q: Can you share your career journey?
A: I began my career as a mainframe developer 14 years ago, having completed a Master of Science degree in systems programming. Like many others, I began as an associate software engineer doing maintenance and support and built my skills and expertise over time to become a principal SE and architect of a mainframe product. Last year, I was promoted to technical team lead manager.
Q: Congratulations! You used ISPF almost exclusively during that time, correct?
A: Yes. There was no other tool available back then. I was doing small fixes the first few years that affected a limited number of source modules, so using ISPF was enough to do the job.
Q: Why did you begin using VS Code?
A: It started when the Logical PARtition (LPAR) I was using was constantly having slow response times and every page-down/up took several seconds. At that point, I said to myself, ‘that’s enough, I cannot work like this!’ I became aware of the Code4z VS Code extensions through an internal Broadcom presentation. I had no experience with Visual Studio Code, so it took me a couple of days to set up everything to the point I was comfortable working with it.
The first use case was refactoring a module that had 5,000 lines and, originally written in 1993, contained around 160 fixes. Being able to quickly scroll through the code, block select hundreds of lines, use multiple line select to check line alignment because of structural IF/THEN.ELSE macros — all that helped me significantly.
Once I got comfortable with VS Code, I started using search in the entire folder and regular expression searches. The product I was working on has more than 2,500 modules and 1,500 macros. Being able to quickly search through millions of lines of code and use regular expressions for more complex searches completely changed my effectiveness as a developer and architect.
Q: Do you still use ISPF?
A: I use ISPF rarely, only to quickly check a specific module or to do a very quick code update.
Q: What are your top reasons to use VS Code?
A: Some of the capabilities with VS Code that have improved my effectiveness include the quick module navigation, using the language extension to jump directly to specific fields in macros and simply having multiple windows open at the same time to multi-task.
Later, I started using VS Code to analyze the product for planning new development and fixes. Regular expressions together with folder search, even in listings, are just a great way to do that.
I found using VS Code for code reviews to be very effective. An easy way to compare the updated module with the production version helped me find any errors or problems. I’ve also created a set of regular expressions, both for the source code and listing to help me find inconsistencies.
Q: With regards to VS Code, what are you most excited about?
A: The main game changer for me is the search engine, together with regular expressions. I use it even as a product log analyzer to find for example error messages. What I could do now in seconds would take hours using the ISPF editor.
Q: What guidance do you have for career mainframers like you?
A: I think that everyone should at least try VS Code. It might take some time, especially in the beginning, to set up everything correctly and get used to it, but the investment will provide many returns very quickly.
I was so excited about the results, I introduced it to my team and about two-thirds are now using it. A couple prefer ISPF and one is using another editor, but the rest are enjoying VS Code. I’ve also become an internal advocate and presented an Engineering Best Practices session on the topic.
You need some patience, especially if VS Code is completely new for you. But get help from others, reach out to me on LinkedIn, and believe me, you won’t regret it! Using VS Code will open new possibilities for you.
Learn More About VS Code
To learn more about using VS Code for mainframe application development, check out the Developer Cockpit simulator which highlights the extensions created specifically for mainframe AppDev.
More details about the Code4z experience are available in the article, “From VS Code to Mainframe Developer Cockpit.”