IBM watsonx Code Assistant for i: You Want it Now! You Want More!

RPG
Typography
  • Smaller Small Medium Big Bigger
  • Default Helvetica Segoe Georgia Times

Working with IBM i is exciting!

By Steve Will

As I send this article to the grand virtual printing press in the cloud, I’ve spent the past couple of weeks finally getting to unveil IBM watsonx Code Assistant for i. (WCA for i) The response from the community has been amazing! It’s also been a bit daunting.

The response is amazing because so many people in the IBM i community have approached me and members of my team, excited about the capabilities we’re showing for the not-yet-released product.

The response has been daunting because most people want even more and want it as soon as possible.

Last month, before we could use its official name, I wrote about the RPG Code Assistant, describing the requirements that drove the development of a specific assistant for RPG code. In that article, I discussed that RPG code explanation had to be the first major function.

We’ve spent the week of POWERUp showing, describing, and doing demos of the early version of WCA for i, focusing on the several flavors of the “Explain” function, which we’ve developed. Let me show you a couple of examples.

IBM watsonx Code Assistant for i: You Want it Now! You Want More! - Figure 1

The image above is part of a Code for IBM i editing session on the EMPLOYEES.SQLRPGLE source file. The WCA for i VS code extension is installed, so in the upper right, it shows an icon which indicates that WCA for i can “explain” the whole file. When you hover over the icon, it shows three levels of explanation: Explain, Summarize, and Describe Usage.

“Summarize” is the flavor of explanation that creates a short paragraph explaining the functions provided in the code being described. An example of that is below.

IBM watsonx Code Assistant for i: You Want it Now! You Want More! - Figure 2

In last month’s article, I described how a code assistant is built: the user interface creates a “prompt” and sends that prompt to the large language model (LLM). Essentially, it asks the LLM to take the information sent by the UI and perform the requested function. If you use a common, general LLM interface, you usually build the prompt yourself.

The design of WCA for i uses what are called “code lenses” as the primary means for prompting. As I discussed last time, when we talked to our advisors, it became clear that there were a few general kinds of explanations that programmers expected to use frequently. However, if the programmer had to create the prompt, using human language, the accuracy and completeness of the response from the LLM were dependent on the phrasing used by the programmer, and the amount and type of contextual information the programmer decided to include.

A ”code lens” allows us, the developers of the user interface and the model, to build the text of the question and include the supporting context information, based on an extensive series of experiments. We know how to ask for a summary of a piece of code (or a whole file), how to ask for a description of how to use some code, and how to ask for a detailed description of some code – and we can gather the context information that we know will be most helpful when our LLM answers.

As I said above, the response to this function has been amazing. At first, we showed it to a couple of dozen early users – experts in the RPG community and developers who had submitted code for training. They told us how useful these capabilities were. One user even told us how it helped her find the source of a bug in their live code in minutes, when a senior developer had been working on finding the bug for hours without the help of a code assistant. Truly outstanding!

However, we are not done. The project will enter a second phase of early use and feedback in the summer, estimated for mid-July. If you’d like to be considered for participation in this “limited public preview,” you can follow this link to the main page for IBM watsonx Code Assistant for i, and once on that page, follow the link to join the waitlist.

Our early users, and the people at POWERUp who saw the presentations and demonstrations have already given us plenty of ideas about other things they want WCA for i to do. Among them:

  • Automatically add explanations as comments in code (see later in this article!)
  • Have excellent explanations of older RPG code
  • Follow through with our stated intent to generate unit test programs
  • Add “code completion” options for developers as they write code
  • Help developers and their leaders understand the relationships between multiple programs.
  • And, of course, have the UI understand and generate explanations in other human languages, not only English.

The product still has some time before it becomes generally available, so we have time to work on one or more of those things and other specific requests clients have made.  

Code Contributions Still Welcome

One of the items I listed above leads me to point out that we are still looking for more code contributions. If you recall, one of our keys to creating a good code assistant for the RPG programming language was soliciting RPG code that we could use for training the LLM. Well, we had a great response—over 4 million lines of code were contributed.

However, most of the contributed code was ILE RPG, and most of that was free-format RPG.

When clients bring new developers into their organization, the kind of code that is hardest for them is older RPG. RPG II, RPG III, and Old Program Model RPG IV from the early days of AS/400 are the generations of the language that could most benefit from an assistant. Yet we didn’t get much code donated.

Side note: I remember talking to many people who asked me if I really wanted their old RPG. I enthusiastically said, “Yes!” Yet we didn’t get it donated.

So, I am re-issuing the invitation. If you have an old RPG and you’re willing, please send an email to This email address is being protected from spambots. You need JavaScript enabled to view it.. We’ll get you started on the process of contributing that code. Of course, we’ll do the best we can with what we have, but one of the reasons we’ve made the amount of progress we have is because we had help from our community.

Analysts are positive, too

One other thing before I end this installment. I want to point out some kudos this product is already getting, even before it launches.

The analyst firm Omdia recently issued their evaluation of the major players in the “coding assistant” marketplace, and they have ranked WCA – the watsonx Code Assistant family very, very positively.

IBM watsonx Code Assistant for i: You Want it Now! You Want More! - Figure 3

They did their evaluation knowing of the imminent announcement of WCA for i at the IBM THINK conference, and we were able to unveil their analysis at the same time we made our announcement. The product we’re creating is among the leading code assistant technology in the market. We are benefiting from the work that has gone before us and contributing value to that family ourselves.

We won’t rest on our laurels, though. We still have a few months before we make WCA for i available for purchase. We will continue to work with early feedback users in our “alpha” (private preview) and “closed beta” (limited public preview), and we will use the excitement of our client base to motivate us to have a product we can be proud of and then to add more capabilities on a regular basis.

In fact, the week of POWERUp, the team delivered a fourth “explain” capability – the ability to “document.” This is the ability to generate an explanation and then put it directly into the code as a comment, while also letting you copy it so you can paste it into an external document if you want. And I had no idea it was going to be ready for POWERUp! What fun to show it to the community as it was being developed!

Interest from the ISV & Partner Community

One part of the IBM i community was particularly anxious to see WCA for i and to talk to us about it—the ISVs. Many of them were demonstrating AI capabilities they’ve added to their products already. Some of them were very interested in seeing how they might be able to add their own “special sauce” to using AI to help developers. We know IBM i is stronger if these vendors can work with our strategic initiatives, so I had some excellent discussions.

Other partners could see immediate benefit from WCA for i in their businesses. Consultants who write code for many clients see WCA for i as an immediate productivity boost. Their business model requires them to work with code written by someone else, so they see the “explain” feature as extremely useful, even without some of the other features I described above. It was fun having conversations with people in this line of work, because the expense of using such a tool was clearly something they saw as a productivity investment that would prove itself worth as soon as they could start using it.

As I said at the top, working with IBM i is exciting! And so is working on bringing you IBM watsonx Code Assistant for i!

One final thing – a webcast

To finish this discussion, I want to invite any of you readers who want to see and hear more about this to join me for one of our IBM i Guided Tours. On June 11, I will spend a whole hour talking about this product, giving information similar to what I gave during my sessions at COMMON POWERUp but updated with the latest I’ll know at that time. To register, visit https://www.ibm.com/support/pages/ibm-i-guided-tours and follow the link. And I’ll “see” you there!

Steve Will

Steve Will is the Chief Technology Officer and Chief Architect for IBM i at IBM, as well as an IBM Distinguished Engineer. Since joining IBM in 1985, he has played a pivotal role in evolving the IBM i platform, leading its modernization through technologies like cloud, AI, and VS Code integration. Appointed Chief Architect in 2007, he succeeded Frank Soltis and has been a key advocate for the platform’s future. Known for his leadership, technical vision, and community engagement, Will actively shares insights through blogs, conferences, and social media.

LATEST COMMENTS

Buyer's Guide Search

Popular Products

Nexus Portal
43,974
IPCharge
38,955
IPCharge
38,955
Barcode400
37,627
WebSmart ILE and PHP
37,110
Presto
36,877
Catapult
35,740
Catapult
35,740
EDI Software - EZConnect iSeries EDI/XML Software Solutions
25,561
EDI Software - EZConnect iSeries EDI/XML Software Solutions
25,561

Support MC Press Online

$

Book Reviews

Resource Center

  •  

  • LANSA Business users want new applications now. Market and regulatory pressures require faster application updates and delivery into production. Your IBM i developers may be approaching retirement, and you see no sure way to fill their positions with experienced developers. In addition, you may be caught between maintaining your existing applications and the uncertainty of moving to something new.

  • The MC Resource Centers bring you the widest selection of white papers, trial software, and on-demand webcasts for you to choose from. >> Review the list of White Papers, Trial Software or On-Demand Webcast at the MC Press Resource Center. >> Add the items to yru Cart and complet he checkout process and submit

  • SB Profound WC 5536Join us for this hour-long webcast that will explore:

  • Fortra IT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators with intimate knowledge of the operating system and the applications that run on it is small. This begs the question: How will you manage the platform that supports such a big part of your business? This guide offers strategies and software suggestions to help you plan IT staffing and resources and smooth the transition after your AS/400 talent retires. Read on to learn: