New Extension Brings IBM i Closer to VS Code
August 11, 2021 Alex Woodie
When it comes to integrated development environments (IDEs), Microsoft is best known for its full-featured Visual Studio offering. But many developers have grown attached to its younger, free-er, and lighter weight cousin, Visual Studio Code (VS Code). And with the new VS Code for IBM i extension recently unveiled by Liam Allan, the skinny IDE’s integration with the midrange server is getting better.
VS Code for IBM i is an open source extension that allows developers to work with IBM i languages like RPG, COBOL, and CL within VS Code. Allan first released the product in February, but largely kept it under wraps until June, when he wrote about it on a blog at Seiden Group, where he works as a consultant.
“While Visual Studio Code was built to work with all languages, in my opinion it didn’t have much support for RPGLE or COBOL on IBM i until this point,” Allan writes. “We’re streamlining RPGLE development in terms of tools and speed for our users. We want to make developing RPGLE and COBOL easy for everyone in the most efficient way possible.”
The software’s core function is to support the editing and compiling of ILE languages in VS Code, but it brings several additional features, Allan says. “For example,” he tells IT Jungle via email, “we also have support for the outline view, content assist, an IFS browser, the ability to run SQL statements, among many other things.”
For now, Allan is holding several features back from the open source version of VS Code for IBM i, which he is selling access to via a paid version, called VS Code for IBM i Pro. This offering brings a handful of premium features, including support for integrated unit testing, code coverage, and documentation. VS Code for IBM i Pro also brings viewers and editors for IBM i-specific resources, such as binding directories, data queues (and their contents), data areas, service programs and modules, user profiles, and job descriptions.
Charging for the Pro version allows Allan to continue working on the product. But the plan is to eventually make all of the capabilities free and open source, he says. That should include some features that are currently in development (or soon will be).
“In the future, we hope to work closely with IBM in order to add integrated debugging, which will also be free and open source, but we are having some trouble there,” Allan says. “The long-term plan is all of the current paid functionality will also become open source and free, too.”
VS Code for IBM i run on Windows and MacOS, and can be downloaded here. So far, it has received five stars in reviews from early users.
“So great and needed. Just love it and it gets better and better for every day. Big THANKS to the team!” writes one enthusiastic reviewer.
“This by far beats paying $1,000+ a year for Rational Developer,” writes another. “Note: you need to make sure your iSeries has SSH enabled.”
“Excellent extension if you want to ditch the aged SEU. IBM i languages syntax highlighting with in-editor compilation, such a joy to work on IBM i with VS Code now. Thanks to the team,” another reviewer writes.
Allan has made no secret of his disdain for IBM’s flagship IDE for IBM i customers, Rational Developer for IBM i (RDi) product. (“I hate the damn thing,” he told IT Jungle earlier this year.) In VS Code, he sees an IDE that can offer numerous positive attributes for IBM i customers.
“The two main reasons that I enjoy using VS code are because of the performance and the minimal UI,” he says. “That doesn’t mean that there aren’t any other reasons. For example, there are thousands of extensions, and has the ability to be extended by anybody because it is open source.”
VS Code for IBM i is not the first bit of open source code developed to bridge the IBM i and VS Code worlds. In December, we told you about two of them that are available on Microsoft’s Visual Studio marketplace, including Niels Liisberg’s RPG extension and Barret Otte’s IBM i Languages extension.
Allan acknowledge the work that both of these open source IBM i developers did, and said they formed the basis in part for VS Code for IBM i, which he says is a different animal than what Liisberg and Otte developed.
“This extension [VS Code for IBM i] is very different from those two. In fact, it is an entire ecosystem,” Allan says. “Barret’s plugin simply adds the syntax highlighting for the ILE languages. We actually use his extension as part of Code for IBM i, and we are grateful for his contribution. Niels’ plugin adds the groundwork for the basics of editing and compiling, but wasn’t streamline enough.”
Allan has thrown his full weight behind VS Code for IBM i. In fact, he’s so convinced that VS Code for IBM i is the way to go that he and his business partner, Connor Holyday, stopped developing ILEditor 2.
“In April, the decision was made to stop the making of ILEditor 2 in place of [VS] Code for IBM i,” Allan says. “I am aiming to build an extension that will last as long as VS Code will last. VS Code has been around for many years, has become a great product, and in the future as developers join the industry will expect to be able to use modern tools.”