IBM i Modernization - The User Interface
(Article Index)
Part 1 introduces the idea of moving from the IBM i green-screen paradigm to browser user interfaces that have fewer constraints while providing rich and responsive end-user experiences.
Part 2 delineates a number of design patterns that enhance end-user productivity. But they're typically not found in GUI component palettes and page-at-a-time paradigms promoted by popular IBM i modernization tools.
Part 3 introduces front-end driven and single-page application design paradigms. (FDAs and SPAs).
Part 4 addresses the challenge of learning HTML, style sheets (CSS), and JavaScript, which are highly effective and enabling technologies - relevant to IBM i user interface modernization.
Part 5 discusses how browsers "request" resources from IBM i servers, including the types of data and documents that may accompany such requests.
Part 6 introduces a light-weight framework that enables browsers to "merge" HTML templates with JSON data objects to create stunning masterpieces (that which appears on the screen).
Part 7 introduces the idea of UI widgets and how they might improve the application experience for end-users.
Part 8 introduces a light-weight framework that facilitates asynchronous request processing paired with incremental updates to page elements (a.k.a. AJAX / Web 2.0).
Part 9 delves into the creation of web user interfaces in which the layout automatically adapts to a variety of device types and screen sizes (i.e. cell phones, tablets, laptops, and desktops).
Part 10 Continues deeper into "responsive design" with examples and code.
Part 11 Shows and explains a simple application that delves into the shift from the traditional display-file paradigm to the client-server paradigm, and delineates benefits for end-users.
Part 12 Shows and explains a simple application that helps us explore the idea of externalizing SQL in RPG programs; it introduces my SQL cursor API.
Part 13 Introduces the idea of using HTML and CSS to produce nicely formatted and stylized reports, suitable for printing.
Part 14 Reviews sample HTML, CSS, and RPG code that may be used to generate nicely-formatted, stylized output that is ready for print.
Part 15 Demonstrates a browser version of a single-page subfile and explains how it works. As IBM i developers move to browser user interfaces, I think it helps to see how familiar design patterns such as subfile paging may be implemented.
Part 16 Shows a browser utility that enables users to upload multiple files to IBM i servers. The files may be subsequently attached to database entities, email, SMS messages, etc.
Part 17 Explores the idea of using web browsers and IBM i programs to send email.
Part 18 Explores the idea of sending text messages to smart phones and similar devices from IBM i applications, using Twilio.
Part 19 Explores the idea of using web forms to prompt for input and generating PDF documents based on the same.
Part 20 Uses flowcharts to depict typical web application design processes, and other aspects of web application architecture.
Web and Application Architecture
A New Generation of IBM i Apps Discusses what might be entailed in order to ensure the future of IBM i applications.
I/O Servers Raises concerns about a certain type of service program known as an I/O server.
Web Application Architecture Introduces a Web application architecture for robust and broadly-scoped applications.
Database-Event Handlers Discusses the placement of certain types of logic in the "database layer", and suggests a way of doing that.
Why ILE RPG?
Part 1 Introduces the topic of why ILE RPG in light of other languages and language environments that may run on IBM i platforms. Cost and return on investment are considered.
Part 2 Delineates high-level distinctions between the IBM i native virtual machine environment vs. language environments that run in PASE.
Other
IBM i SMTP Configuration Provides a wealth of configuration information pertaining to sending email from IBM i applications.
IBM i Auxiliary Storage Pools Introduces some of the benefits of independent auxiliary storage pools (IASPs).