Sidebar

Welcome to the New RDi-SOA

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

With the release of Version 7.5 of RDi-SOA, IBM provides the first real vision of the future of IBM i development.

 

With Something Old

and Something New

They Borrowed the Best

And Turned It Blue

 

I realize "first real vision of the future" may ring hollow in some of the more jaded ears in our community, what with all the Strategic Directions and Development Roadmaps over the years, but RDi-SOA Version 7.5 is truly unique in the annals of IBM i development. In fact, along with the 5250 and the integrated database, RDi-SOA may be another first in business application programming in general: in this case, the first tool that provides end-to-end support for developing every possible type of application architecture, from green-screen to full thick client.

The Whole Is Greater Than the Sum of the Parts

And believe me, the parts ain't bad. You may perhaps have read one or two things I've written about WebSphere Development Studio Client (WDSC) over the years, or perhaps more recently some of my experiences with Enterprise Generation Language (EGL). There have been the inevitable rough spots with those tools--and RDi-SOA is not immune to those sorts of problems--but generally, my response has been pretty positive. And over the years, the majority of you who have taken the plunge have agreed with me. For example, very few who have given WDSC an honest try have gone back to Source Entry Utility (SEU) and Programming Development Manager (PDM). There have been some, and anyway I'm not saying anything negative about those who haven't got either the time or incentive to learn the new tools; my point is more that when you are ready to move to new technologies, IBM has provided the tools you need to get there.

 

Not only that, the IBM tool builders have managed to do two things at once, a feat they seem to often find themselves forced into when dealing with our beloved but somewhat schizophrenic platform. In this case, they've managed to, in one release, provide both a better way to do one of the oldest things in the book, and at the same time provide the most revolutionary and cutting-edge tool available in today's programming environment. And that's quite a feat.

 

So which to tell you about first, eh?  I think I'll start with the Something Old part of the program.

 

Finally, Let's Replace SDA Already!

 

After a whole lot of work and no small amount of prodding from the user community, IBM has delivered the Screen Designer. Unfortunately, it's still a technology preview, and they haven't yet done anything to replace the infamous Report Layout Utility (RLU, whose acronym is also said by those who love to hate it to stand for Really Lousy Utility). But as a technology preview, it's in pretty good shape. In fact, as far as I can tell, the only area that really needs work is the testing feature, not the pure editing portion. The editor is in really good shape. Let me show you.

 

120808PlutaFigure1.png
Figure 1: This is the WYSIWYG screen editor. (Click images to enlarge.)

 

The WYSIWYG screen editor is very good. I could actually spend an entire article simply going over the Screen Designer, and to be accurate, I wrote a pretty extensive article back in May of last year when the Designer was part of the Advanced Edition of WDSC. To be honest, not a lot has changed since then, but the product does warrant a serious look now, especially for editing display files.

 

What I like is the context-sensitive configuration pages for keywords. SDA did the best it could to provide a menu-driven interface for entering DDS keywords, but it's nothing like the Properties page concept in Screen Designer.

 

120808PlutaFigure2.png
Figure 2: Entering a keyword such as CHECK is much more intuitive with Screen Designer.

As you can see in Figure 2, Screen Designer takes full advantage of the graphical interface. It lays out all the keywords in a nice alphabetical list on the left, and then as you add each keyword, a special page shows up on the right allowing you to enter the parameters for that keyword. In this case, the CHECK keyword has a whole set of possibilities. Not only is each option enumerated, but putting your cursor over one brings up a tooltip with a brief description of the option's behavior.

So anyway, that's an example of the way that the new release of RDi-SOA caters to our existing legacy technologies. Green-screen programmers fret not; you have not been forgotten! And remember, this particular part of the tool is also available in the less-expensive RDi tooling, which is competitively priced with Application Development ToolSet (ADTS), which is what you have to purchase to get SEU and PDM.

 

On to the Future!

 

But it's not a better green-screen development mousetrap that has me excited. No, the really cool stuff is in the EGL tooling, specifically in the EGL Rich UI technology. I can't overstate the potential of EGL Rich UI. If you haven't worked with it yet, you really need to get a copy and play with it, because it's almost impossible to explain in words or even pictures what this technology does. I will, however, give it my best shot!

 

If you've read my articles about EGL over the last year or two, you'll know that the basic premise of the language is to remove plumbing. EGL is all about encapsulating the parts of technology that you don't need to worry about and integrating them directly into the language. In that way, EGL is very much like RPG and its implicit connection to the DB2 database, except that EGL does this same sort of encapsulation for the entire world of programming and especially Web application programming.

 

For example, the thin client feature of EGL uses JavaServer Faces as its foundation. However, the tool is also acutely aware of the EGL syntax, allowing programmers to write code and drag and drop EGL structures (called Records) onto a WYSIWYG designer, much the same way that SDA understands databases and lets you drop database fields onto the screen, except that EGL lets you drop an array of records onto the screen, and it automatically builds a formatted table--complete with column headings! I wish I could do that with a subfile, but I digress....

 

EGL Rich UI goes a level beyond that. You're probably familiar with terms like AJAX and Web 2.0. Another term that's actually a bit more specific but not quite as popular is Rich Internet Application, or RIA. RIAs are the Web applications that actually act like desktop applications, responding to individual keystrokes (traditional thin-client applications respond a page at a time, more like 5250 programs). The first RIA was probably Microsoft's Outlook for the Web, and indeed the underlying technology of that product, the XMLHttpRequest, is what gave rise to AJAX and Web 2.0 in the first place. The only alternative is to use one of the thick client wannabes such as Silverlight or Flex, in which you download what is essentially a player and then send it huge macros. With AJAX, all the rendering code is in the browser and so is already on the client; you don't have to worry about your user having the latest version of the Silverlight runtime.

 

However, the state of the art of development tools has lagged significantly behind the technology itself. Most AJAX programming is done by hand, and while some frameworks exist to make your job easier, EGL Rich UI is the first true development environment for generating RIAs. That's because with EGL Rich UI, you don't have to code the JavaScript. You write your code in standard EGL syntax, and the tool does all the generation work for you. Here's an example:

 

120808PlutaFigure3.png
Figure 3: This is an EGL Rich UI application, complete with Google Map.

 

The application in Figure 3 is an example of the kind of thing you can quickly write with EGL Rich UI. It's a graphical front-end to RPG business logic running on the i. The entire client was less than 200 lines of code, most of which looked like this:

 

      ui Box { columns = 2, children = [ appBox, debugBox ] };

      appBox Box {

            columns = 1,

            children = [ promptBox, errorBox, orderBox ] };

      debugBox Box { visibility = "hidden" };

     

      // Prompt box - prompt for order number  

      promptBox Box = new Box { children = [

            new TextLabel { text = "Order Number: ",

                  paddingRight = 10 },

            orderField,

            new Button { text = "Read", onClick ::= readOrder },

            new TextLabel { text = "Debug: ", paddingLeft = 40 },

            debugCB

      ]};

      orderField TextField {};

      debugCB CheckBox { onClick ::= toggleDebug };

 

The majority of the code is DDS-like code that lays out the screen. The paradigm for EGL Rich UI is boxes within boxes, which then translates to HTML tables. However, all that work is done for you. And more importantly, it's done using Cascading Style Sheet (CSS) classes rather than embedded formatting, which then allows you to easily modify the look and feel by simply editing a style sheet.

 

The application above even has its own built-in debugging to show the generated code. Since with Web 2.0 the HTML is generated on the fly, it's difficult to see the actual code; this is true of many frameworks. EGL Rich UI, however, makes it very easy to create a standard debugging "widget" and include that widget wherever needed.

 

It should be noted that the current version of EGL Rich UI is best debugged using an external tool, specifically the Firefox browser with the Firebug debugger installed. When I write about the tool in more technical detail, I'll address this particular issue, but at this time you can write code that causes errors that can only really be identified using this tool. That's one of the reasons I wrote my debugging widget. It's not the debugging that sets RDi-SOA ahead of everything else, though; it's the Design view.

 

120808PlutaFigure4.png
Figure 4: The WYSIWG designer is the only one of its kind.

 

The Design mode in the EGL Rich UI editor is as far as I know the first of its kind. While it obviously takes its cues from the other WYSIWYG editors in the Eclipse/Rational tool line, it is unique in the fact that it allows developers to visualize not only the actual GUI but also the underlying source code. Because the code is EGL, the tooling has the benefit of using a common syntax, regardless of the targeted browser.

 

There is one other tool that I know of, WaveMaker, that has similar functionality. That tool is built on top of the Dojo framework and looks to be pretty slick for what it does. However, WaveMaker by definition has a very narrow focus: writing and maintaining the Dojo part of an application. What it lacks is the breadth of the RDi-SOA tooling.

 

And That's What Is Really Exciting

 

With the release of RDi-SOA 7.5, IBM closes the circuit. I can now develop an entire multi-tier application in a single workbench. I can use the RDi tools to build the RPG business logic, then use the base EGL tooling to create a Web service to expose that code, and then finally write an EGL Rich UI application to display it in a browser. My little order inquiry application is probably 600 lines of code all told, and more importantly I don't have to know a single thing about HTML or Java or JavaScript or even XML. All the plumbing is done for me, and about the only thing I need to concentrate on is learning how to do CSS. And really, that part of it is probably best left to the folks who do the corporate Web site anyway; they're probably able to give you a standard CSS that you can use to set fonts and colors and all those goodies.

 

Of course, if you don't have a corporate Web site group (or if, as in many shops, you are that group), then you'll need to learn CSS anyway. But let me at least give you a cool visual that really sums up the something old/something new nature of RDi-SOA:

 

120808PlutaFigure5.png
Figure 5: How cool is being able to run an RIA side by side with editing your display file?

 

Figure 5 shows the epitome of a fully integrated environment. I can not only create a rich client that can consume my Web service, but also create a green-screen application that can call that same business logic. No other tool has the same appreciation of the unique characteristics of the IBM i.

What Am I Unhappy About?

I don't like to write lists of negatives, even as a simple balance to a positive article. I've done it in the past only to find the negatives quoted out of context. I hate that.

But given the rather positive tone of this article, I'm going to take the chance to point out a few negatives. My first negative is actually not an RDi-SOA issue; rather, it has to do with its little cousin, RDi. I just don't like the fact that the Data Perspective is limited to the much more expensive RDi-SOA package. These days, everybody and their brother is telling RPG programmers to get with the times and use SQL. Well, that's kind of hard when you don't have a decent SQL tool. To give someone the wonderful capabilities of RDi as an RPG development environment and then tell them they have to use STRSQL for their database management is...uncivilized.

 

Second, I am no big fan of "technology previews." Granted we've grown used to them, whether it's games that don't work right without patches or operating systems that need a couple of service packs or cumulative PTFs. But that still doesn't mean I have to like them. I suppose it's better than releasing them as production-ready before their time, but how many previews does it take to get to a real release?

 

That being said, I actually agree that this isn't a production tool yet. There are some things in the EGL Rich UI release that will definitely need tweaking. Let me be clear: the underlying conceptual framework of EGL and of Rich UI in particular is as groundbreaking as anything you're going to see in the IT world. But there are areas where the tool needs work. The visual editor for JavaScript is astounding in its audacity, but it's in need of some serious performance improvements. And this is a personal position, but in my opinion, reliance on a third-party software product, even one as accepted as Firebug, is a tough pill to swallow in an integrated tool, especially one with a big price tag.

I have some technical complaints as well; what's new technology without some nitpicks, eh? I hope to address those in a more technical column. However, none of these are insurmountable issues, and the positives greatly outweigh the negatives.

Final Word

This is a little bit of a teaser, actually. The application you see in a couple of the figures in this article will be featured in a book Coming Real Soon Now, written by yours truly. In it, I'll show in detail the steps required to create business logic in RPG on the IBM i and then that logic as a Web service using EGL and then consume it using EGL Rich UI. All of it will be done in a single integrated RDi-SOA 7.5 workbench, and I believe it will really make you rethink your ideas on what can be done with the i--and more importantly, what you and indeed any IBM i developer can do. EGL Rich UI promises to put RIA programming within your reach, and I think IBM will deliver on that promise.

Joe Pluta

Joe Pluta is the founder and chief architect of Pluta Brothers Design, Inc. He has been extending the IBM midrange since the days of the IBM System/3. Joe uses WebSphere extensively, especially as the base for PSC/400, the only product that can move your legacy systems to the Web using simple green-screen commands. He has written several books, including Developing Web 2.0 Applications with EGL for IBM i, E-Deployment: The Fastest Path to the Web, Eclipse: Step by Step, and WDSC: Step by Step. Joe performs onsite mentoring and speaks at user groups around the country. You can reach him at joepluta@plutabrothers.com.


MC Press books written by Joe Pluta available now on the MC Press Bookstore.

Developing Web 2.0 Applications with EGL for IBM i Developing Web 2.0 Applications with EGL for IBM i
Joe Pluta introduces you to EGL Rich UI and IBM’s Rational Developer for the IBM i platform.
List Price $39.95

Now On Sale

WDSC: Step by Step WDSC: Step by Step
Discover incredibly powerful WDSC with this easy-to-understand yet thorough introduction.
List Price $74.95

Now On Sale

Eclipse: Step by Step Eclipse: Step by Step
Quickly get up to speed and productivity using Eclipse.
List Price $59.00

Now On Sale

BLOG COMMENTS POWERED BY DISQUS

LATEST COMMENTS

Support MC Press Online

RESOURCE CENTER

  • WHITE PAPERS

  • WEBCAST

  • TRIAL SOFTWARE

  • White Paper: Node.js for Enterprise IBM i Modernization

    SB Profound WP 5539

    If your business is thinking about modernizing your legacy IBM i (also known as AS/400 or iSeries) applications, you will want to read this white paper first!

    Download this paper and learn how Node.js can ensure that you:
    - Modernize on-time and budget - no more lengthy, costly, disruptive app rewrites!
    - Retain your IBM i systems of record
    - Find and hire new development talent
    - Integrate new Node.js applications with your existing RPG, Java, .Net, and PHP apps
    - Extend your IBM i capabilties to include Watson API, Cloud, and Internet of Things


    Read Node.js for Enterprise IBM i Modernization Now!

     

  • Profound Logic Solution Guide

    SB Profound WP 5539More than ever, there is a demand for IT to deliver innovation.
    Your IBM i has been an essential part of your business operations for years. However, your organization may struggle to maintain the current system and implement new projects.
    The thousands of customers we've worked with and surveyed state that expectations regarding the digital footprint and vision of the companyare not aligned with the current IT environment.

    Get your copy of this important guide today!

     

  • 2022 IBM i Marketplace Survey Results

    Fortra2022 marks the eighth edition of the IBM i Marketplace Survey Results. Each year, Fortra captures data on how businesses use the IBM i platform and the IT and cybersecurity initiatives it supports.

    Over the years, this survey has become a true industry benchmark, revealing to readers the trends that are shaping and driving the market and providing insight into what the future may bring for this technology.

  • Brunswick bowls a perfect 300 with LANSA!

    FortraBrunswick is the leader in bowling products, services, and industry expertise for the development and renovation of new and existing bowling centers and mixed-use recreation facilities across the entertainment industry. However, the lifeblood of Brunswick’s capital equipment business was running on a 15-year-old software application written in Visual Basic 6 (VB6) with a SQL Server back-end. The application was at the end of its life and needed to be replaced.
    With the help of Visual LANSA, they found an easy-to-use, long-term platform that enabled their team to collaborate, innovate, and integrate with existing systems and databases within a single platform.
    Read the case study to learn how they achieved success and increased the speed of development by 30% with Visual LANSA.

     

  • The Power of Coding in a Low-Code Solution

    LANSAWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed.
    Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

    • Discover the benefits of Low-code's quick application creation
    • Understand the differences in model-based and language-based Low-Code platforms
    • Explore the strengths of LANSA's Low-Code Solution to Low-Code’s biggest drawbacks

     

     

  • Why Migrate When You Can Modernize?

    LANSABusiness 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.
    In this white paper, you’ll learn how to think of these issues as opportunities rather than problems. We’ll explore motivations to migrate or modernize, their risks and considerations you should be aware of before embarking on a (migration or modernization) project.
    Lastly, we’ll discuss how modernizing IBM i applications with optimized business workflows, integration with other technologies and new mobile and web user interfaces will enable IT – and the business – to experience time-added value and much more.

     

  • UPDATED: Developer Kit: Making a Business Case for Modernization and Beyond

    Profound Logic Software, Inc.Having trouble getting management approval for modernization projects? The problem may be you're not speaking enough "business" to them.

    This Developer Kit provides you study-backed data and a ready-to-use business case template to help get your very next development project approved!

  • What to Do When Your AS/400 Talent Retires

    FortraIT managers hoping to find new IBM i talent are discovering that the pool of experienced RPG programmers and operators or administrators is small.

    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:

    • Why IBM i skills depletion is a top concern
    • How leading organizations are coping
    • Where automation will make the biggest impact

     

  • Node.js on IBM i Webinar Series Pt. 2: Setting Up Your Development Tools

    Profound Logic Software, Inc.Have you been wondering about Node.js? Our free Node.js Webinar Series takes you from total beginner to creating a fully-functional IBM i Node.js business application. In Part 2, Brian May teaches you the different tooling options available for writing code, debugging, and using Git for version control. Attend this webinar to learn:

    • Different tools to develop Node.js applications on IBM i
    • Debugging Node.js
    • The basics of Git and tools to help those new to it
    • Using NodeRun.com as a pre-built development environment

     

     

  • Expert Tips for IBM i Security: Beyond the Basics

    SB PowerTech WC GenericIn this session, IBM i security expert Robin Tatam provides a quick recap of IBM i security basics and guides you through some advanced cybersecurity techniques that can help you take data protection to the next level. Robin will cover:

    • Reducing the risk posed by special authorities
    • Establishing object-level security
    • Overseeing user actions and data access

    Don't miss this chance to take your knowledge of IBM i security beyond the basics.

     

     

  • 5 IBM i Security Quick Wins

    SB PowerTech WC GenericIn today’s threat landscape, upper management is laser-focused on cybersecurity. You need to make progress in securing your systems—and make it fast.
    There’s no shortage of actions you could take, but what tactics will actually deliver the results you need? And how can you find a security strategy that fits your budget and time constraints?
    Join top IBM i security expert Robin Tatam as he outlines the five fastest and most impactful changes you can make to strengthen IBM i security this year.
    Your system didn’t become unsecure overnight and you won’t be able to turn it around overnight either. But quick wins are possible with IBM i security, and Robin Tatam will show you how to achieve them.

  • Security Bulletin: Malware Infection Discovered on IBM i Server!

    SB PowerTech WC GenericMalicious programs can bring entire businesses to their knees—and IBM i shops are not immune. It’s critical to grasp the true impact malware can have on IBM i and the network that connects to it. Attend this webinar to gain a thorough understanding of the relationships between:

    • Viruses, native objects, and the integrated file system (IFS)
    • Power Systems and Windows-based viruses and malware
    • PC-based anti-virus scanning versus native IBM i scanning

    There are a number of ways you can minimize your exposure to viruses. IBM i security expert Sandi Moore explains the facts, including how to ensure you're fully protected and compliant with regulations such as PCI.

     

     

  • Encryption on IBM i Simplified

    SB PowerTech WC GenericDB2 Field Procedures (FieldProcs) were introduced in IBM i 7.1 and have greatly simplified encryption, often without requiring any application changes. Now you can quickly encrypt sensitive data on the IBM i including PII, PCI, PHI data in your physical files and tables.
    Watch this webinar to learn how you can quickly implement encryption on the IBM i. During the webinar, security expert Robin Tatam will show you how to:

    • Use Field Procedures to automate encryption and decryption
    • Restrict and mask field level access by user or group
    • Meet compliance requirements with effective key management and audit trails

     

  • Lessons Learned from IBM i Cyber Attacks

    SB PowerTech WC GenericDespite the many options IBM has provided to protect your systems and data, many organizations still struggle to apply appropriate security controls.
    In this webinar, you'll get insight into how the criminals accessed these systems, the fallout from these attacks, and how the incidents could have been avoided by following security best practices.

    • Learn which security gaps cyber criminals love most
    • Find out how other IBM i organizations have fallen victim
    • Get the details on policies and processes you can implement to protect your organization, even when staff works from home

    You will learn the steps you can take to avoid the mistakes made in these examples, as well as other inadequate and misconfigured settings that put businesses at risk.

     

     

  • The Power of Coding in a Low-Code Solution

    SB PowerTech WC GenericWhen it comes to creating your business applications, there are hundreds of coding platforms and programming languages to choose from. These options range from very complex traditional programming languages to Low-Code platforms where sometimes no traditional coding experience is needed.
    Download our whitepaper, The Power of Writing Code in a Low-Code Solution, and:

    • Discover the benefits of Low-code's quick application creation
    • Understand the differences in model-based and language-based Low-Code platforms
    • Explore the strengths of LANSA's Low-Code Solution to Low-Code’s biggest drawbacks

     

     

  • The Biggest Mistakes in IBM i Security

    SB Profound WC Generic The Biggest Mistakes in IBM i Security
    Here’s the harsh reality: cybersecurity pros have to get their jobs right every single day, while an attacker only has to succeed once to do incredible damage.
    Whether that’s thousands of exposed records, millions of dollars in fines and legal fees, or diminished share value, it’s easy to judge organizations that fall victim. IBM i enjoys an enviable reputation for security, but no system is impervious to mistakes.
    Join this webinar to learn about the biggest errors made when securing a Power Systems server.
    This knowledge is critical for ensuring integrity of your application data and preventing you from becoming the next Equifax. It’s also essential for complying with all formal regulations, including SOX, PCI, GDPR, and HIPAA
    Watch Now.

  • Comply in 5! Well, actually UNDER 5 minutes!!

    SB CYBRA PPL 5382

    TRY the one package that solves all your document design and printing challenges on all your platforms.

    Produce bar code labels, electronic forms, ad hoc reports, and RFID tags – without programming! MarkMagic is the only document design and print solution that combines report writing, WYSIWYG label and forms design, and conditional printing in one integrated product.

    Request your trial now!

  • Backup and Recovery on IBM i: Your Strategy for the Unexpected

    FortraRobot automates the routine tasks of iSeries backup and recovery, saving you time and money and making the process safer and more reliable. Automate your backups with the Robot Backup and Recovery Solution. Key features include:
    - Simplified backup procedures
    - Easy data encryption
    - Save media management
    - Guided restoration
    - Seamless product integration
    Make sure your data survives when catastrophe hits. Try the Robot Backup and Recovery Solution FREE for 30 days.

  • Manage IBM i Messages by Exception with Robot

    SB HelpSystems SC 5413Managing messages on your IBM i can be more than a full-time job if you have to do it manually. How can you be sure you won’t miss important system events?
    Automate your message center with the Robot Message Management Solution. Key features include:
    - Automated message management
    - Tailored notifications and automatic escalation
    - System-wide control of your IBM i partitions
    - Two-way system notifications from your mobile device
    - Seamless product integration
    Try the Robot Message Management Solution FREE for 30 days.

  • Easiest Way to Save Money? Stop Printing IBM i Reports

    FortraRobot automates report bursting, distribution, bundling, and archiving, and offers secure, selective online report viewing.
    Manage your reports with the Robot Report Management Solution. Key features include:

    - Automated report distribution
    - View online without delay
    - Browser interface to make notes
    - Custom retention capabilities
    - Seamless product integration
    Rerun another report? Never again. Try the Robot Report Management Solution FREE for 30 days.

  • Hassle-Free IBM i Operations around the Clock

    SB HelpSystems SC 5413For over 30 years, Robot has been a leader in systems management for IBM i.
    Manage your job schedule with the Robot Job Scheduling Solution. Key features include:
    - Automated batch, interactive, and cross-platform scheduling
    - Event-driven dependency processing
    - Centralized monitoring and reporting
    - Audit log and ready-to-use reports
    - Seamless product integration
    Scale your software, not your staff. Try the Robot Job Scheduling Solution FREE for 30 days.