Liam Allan Expands Development Accessibility With the Code for IBM i Extension
Sometimes the best way to create new technology is to continue using standards that have already been proven successful, while simultaneously making them more accessible. This was Liam Barry Allan’s thought process when he first started Code for IBM i, an open-source Visual Studio (VS) Code extension for all IBM i development needs.
Allan is a software developer, speaker and IBM Champion since 2017, and believes Code for IBM i offers the best development experience for IBM i in terms of productivity and speed.
“Originally we were building a stand-alone editor and I kind of always knew it would be better to use standards. So, using an existing platform like VS Code, which already has a great user base and a great extension API, seemed like the right thing to do,” Allan says.
VS Code is already the standard for development, so it was important to Allan that IBM i developers be able to use the tools that every developer in the world is using. When a person uses VS Code, they can run it on every platform and do everything in one place. Code for IBM i can even be run in the cloud, making it just as accessible for Mac users as it is for PC users.
Allan hopes to show people how to utilize the platform’s many capabilities, including how to write four or five different languages in one editor. The extension allows people to write in various code such as RPG, COBOL, C, JavaScript and TypeScript.
“I think that’s something I’d like to do in the future as well,” Allan says, “Use Code for IBM i as an excuse for people to continue learning.”
It’s the simplistic and comprehensive features of Code for IBM i that are a huge draw for those looking to either begin or expand on their coding skillset.
Training Skills
Even if users have never once used VS Code, Code for IBM i’s free interactive tutorials give them, as Allan puts it, “an excuse to learn.” Tutorial topics for those first starting out include learning to connect to a system and opening up source code, compiling that code and, ultimately, learning how to manage it all.
Alongside these tutorials, Code for IBM i also includes tutorials for RBG and COBOL that fill a large gap in available online resources for these coding languages. Most other languages such as PHP, JavaScript and Python already have existing interactive tutorials online. Code for IBM i’s interactive tutorials for RBG and COBOL will allow people to build up their skillset in these and other languages.
“I think this will be great for people that are new to the extension with previous experience in developing those languages, but also new to the extension that have not had the experience of developing RPG and COBOL on the IBM i,” Allan says.
Documentation is also a key motivator for Allan’s creation of the tutorials. Creating documentation for people to be able to easily understand the language only adds to Code for IBM i’s accessibility for new and existing users to broaden their skillsets.
Support Model
One of the challenges that Allan has faced with Code IBM i has been finding the time, among other commitments, to expand the extension to its full capabilities. This is where the platform’s support model becomes essential. Having more people involved in developing the platform allows for faster growth in extension functionality and a better overall user experience.
For people who choose to contribute to Code for IBM i, there is a lot of support given to them in return. At the moment, the extension has 14 contributors who get personal email support and early access to new functionality. Contributors who helped Code for IBM i got to test this new extension before it became open source. Allan also points out that Code for IBM i’s paid supporters generally write great bug reports, which helps problems get addressed more efficiently.
With such good feedback from its supporters, Code for IBM i has just released two new functionalities—code coverage and unit testing—both of which will make usability on the platform even easier.
“You can run code coverage against source code and view the results in the editor and you can do that in VS Code too. It’s fantastic,” Allan says, “Really lovely and one of my favorite things I’ve ever worked on.”
Code for IBM i also has a built-in unit testing framework that makes determining the performance of an individual unit of source code simple.
User and Community Driven
Code for IBM i has seen a steady growth of users that have brought the extension to 2,551 downloads, a number that gives Allan a sense of pride for the work that has gone into its development.
“I think people understand the need for a different editor and one that’s VS Code,” Allan says. “There is a need and I’m really just trying my best to fulfill that need for myself. I still write RPG and COBOL to this day. I just think it’s important to have an open solution that is user-first.”
It’s clear that the driving force behind Code for IBM i’s growth is the focus on user experience and fulfilling people’s needs. For this reason, ideas from the community are encouraged and input is valued. When useful ideas arise, Code for IBM i developers make sure they are implemented right away.
Allan feels fortunate to get to work on Code for IBM i and, even more so, is happy that other people want to work on this open-source resource too. What began as a standard editor has quickly grown and evolved into a platform that encourages continuous learning and collaboration.