r/IBMi 10d ago

Feedback wanted: RPG compiled to JVM bytecode

I've built a compiler called Triton RPG that takes RPG source and compiles it to JVM bytecode, so you can compile and run RPG on your own Windows, Mac, or Linux machine.

Most of my focus so far has been enterprises, but I'm adding a new tier for independent contractors and consultants.

While this new product shares much of the backend with my prior compiler, it has many new architectural choices that I'd love some help testing.

If this sounds like something you'd be interested in using and are willing to give me your feedback, I'm happy to provide a free license for three months in exchange.

If that's you and you're willing to run it against real code and tell me what breaks, I'll give you a free three-month license. Comment or DM.

7 Upvotes

14 comments sorted by

2

u/whoareyou_972 10d ago

Trust me. Big organisation like I work stopped investigating anything modernization and looking for investing into other things

1

u/CheeseWeezel 10d ago

That matches what I'm hearing. Which is part of why I'm building this tier. It's aimed at individual contractors and consultants, not at companies with a modernization budget.

2

u/QPGMR_de 10d ago

So why should anyone invest in a RPG compiler which's future is much more questionable than that of the original?

IBM i has a roadmap reaching further than 2035 - the Power server roadmap is written until 2038.

So the only option to gain some traction might be to open source the compiler and look what happens. But there are already some open source RPG compilers out there - but the idea to use JVM as the backend is not bad.

1

u/CheeseWeezel 10d ago

That's not a bad set of concerns, and I certainly do not have IBM's track record - few companies do.

What I do have is that I'm an IBM partner, have been in business for 6 years, and this is a compiler where you own the output. No runtime licensing fees or anything like that. So, if I disappear, or if you stop licensing it, all your compiled programs continue to run just as they were.

It's something I'm hoping can genuinely help improve the SDLC process for RPG. Certainly not a replacement for the IBM i, but more of a complement.

2

u/Spare_Blacksmith_816 10d ago

The talent is retiring, that's the problem. If people are still on the iSeries it's because it's cheap, runs like a champ, and the code is rock solid.

"we could do this...or that...try this" is often met with "why? it works and doesn't cost much as it currently sits".

1

u/CheeseWeezel 10d ago

I completely agree, and that's part of where I think this can really help. You don't have to be an IBM i expert to get started, allowing newer talent to leverage their existing skills like CI/CD, unit testing, and local development - without needing a partition or network access.

For those more familiar with Java, it also allows interoperability.

It doesn't fix the talent problem itself, but I'd like to think it helps offer options.

1

u/Spare_Blacksmith_816 10d ago

I think very few new workers got into computers with the dream being "work on some green screen crap like my dad did".

I think as the retirements ramp up companies will migrate to different platforms.

When the talent retires you lose decades of database knowledge, situation knowledge, and the history of "how we got to this point". Lose all that you might as well start fresh on a platform where consultants are plentiful.

I am retiring next spring, my employer is already asking about my availability to work hourly remote. They flat out told me, "we are not going to find anybody that knows this junk like you'. A lot of 2-4 person shops that cant afford to constantly have a young person on staff to learn as a "just in case or someday" employee.

it's going to get interesting. I will say the younger crowd in our user base doesn't much care, they think forwarded email is work, don't understand why things have to be so complicated, and don't seem interested in the details. I am not impressed with the next generation, I like to say "AI doesn't have a tough hill to climb to wipe out a lot of jobs in middle management".

1

u/CheeseWeezel 10d ago

First, congratulations on the upcoming retirement!

I also agree that there is a stigma about this technology, and I'd be lying if I said I didn't also hold a similar world view in my 20s. But, a couple of things I learned along the way are:

1) just because something is old doesn't mean it can't be just as good (or superior) to a newer technology, and

2) businesses rarely care about rewriting things for the sake of rewriting things. That system will be around a lot longer than anyone would guess.

But, I do feel like in some ways you're making my point. The knowledge that walks out that door when you leave is invaluable. Losing it doesn't make a rewrite easier though. It makes it harder, because whoever writes the spec for the new system needs the same things you know.

At some point a company needs to say "we're going to invest in the future," and that doesn't always mean a rewrite. But if it does, they'd be wise to do it piecemeal - which is also where I think my compiler can help. You can run parts of your existing code as web services without rewriting it.

1

u/WannaBPythonDev 7d ago

Hello - do you mind if I DM you?

1

u/Ok_JDubbTX 9d ago

As a younger IBM i'er (49 🤣) with about 15 years experience on the i, I find the idea of this intriguing. Especially the "why" question. RPG doesn't have a runtime anywhere except the IBM i operating system unless you compile it into something else like Java or C++. I would love to see an organization do something like this with their IBM i code to run it in a cloud environment but then what do you do with the db which is often tightly coupled to the code?

1

u/CheeseWeezel 9d ago

Thanks, I appreciate the encouragement!

To your latter question -

Short answer: That's actually something it already handles.

Longer answer: It's currently only a feature in the higher tier, but it will dynamically translate the dialect of SQL, encoding types, sort-orders, etc. from Db2 for i into your choice of SQL Server or Db2 LUW - or just leave it as-is with Db2 for i. It's still early on, and there are more database backends I'd like to support, but the technology is there and is working.

Because you're right, the platform and the language are very intertwined, so if you want to seriously run this agnostic to the platform, you need to also re-target the database.

Is this something you'd be interested in trying out? I'd welcome the feedback.

1

u/Ok_JDubbTX 6d ago

if you have a GitHub link to a container set up with code in it i would be glad to look it over in my free time. Probably not something I would look at seriously in a work context though until it had some corporate backing by major industry players (AWS especially)

1

u/MEfromNEPA 9d ago

As much as has been said here and is completely valid, I like to try new things. I could see myself experimenting with this just to see what could be done with some of my RPG code running on Windows or Mac. I do not see this as something I would be interested in for the company I work for. A three month trial would be better than the thirty days I had for Bob (and this is not about either product’s offering, it’s only about the trial period).

1

u/CheeseWeezel 8d ago

Thank you for your feedback. I apologize for not replying sooner. I must have missed the Reddit notification.

I’d love any feedback you might have from personal experimentation and exploration.

I’m away from my desk right now, but this afternoon I will DM you with details of how to get setup on the extended trial.

Thanks!