Contact | Privacy Policy
    SiD HOME    |    CONFERENCES    |    eLEARNING    |    SERVICES    |    DOWNLOAD    |    ABOUT US
 
YOU CAN! Learn how at the next Summit
March 26-28, 2012 in Fort Worth
Special Offers & Sponsors
News Headlines
January 5, 2012
Skip retires from SiD, speaks at March Summit
January 3, 2012
SiD sets eLearning schedule for Q1-Q2 2012
September 23, 2011
June 27, 2011
Mobile App Roadmap added to Oct 2011 RPG & DB2 Summit
February 18, 2011
Dr. Frank Soltis Keynotes March RPG & DB2 Summit
February 11, 2010
How to Document ILE RPG Apps using a free tool by Paul Tuohy

RPG-Oriented Sessions

RPG on the Move: Mobilize Your i

Choices and challenges in the world of mobile applications

Mobile applications are the hot topic of the day and your old RPG green-screen skills and tools are just not going to make the grade.

In this session Jon and Paul discuss some of the factors you have to consider when embarking on the development of your first mobile applications.

Topics to be covered include:

  • Design considerations for mobile - from F-keys to touch sensitivity
  • Platform options - iPad? iPhone? Android? Blackberry? Tablets?
  • Local processing or server/browser based?
  • Can you do it with RPG? And what are your other language choices

Speaker: Paul Tuohy and Jon Paris

An Overview of HTML, CSS and Javascript

The web can be a daunting place for the traditional RPG programmer. The layout of a web page is usually more decorative (and challenging to design) then the traditional 5250 screen. But you don’t need to be a graphic designer in order to code and develop web page you just need to know what the right tools are and how to use them. This session shows the traditional RPG programmer how to use some of these basic tools to develop and maintain web pages.

Speaker: Paul Tuohy

Subprocedures Basics

Susan doesn't write subroutines any more. Come to this session to find out why.

Using subprocedures, you can create your own callable functions to be as powerful as IBM's built-in functions. This session will introduce you to the basics of writing subprocedures so that you can begin to build more powerful, modular applications. We will introduce the syntax and coding techniques for subprocedures by converting an existing subroutine to a subprocedure. Then we'll create a new subprocedure from scratch. Finally, we will look at how the syntax and coding techniques change slightly to externalize your subprocedures to make them more easily reusable via ILE Service Programs.

Speaker: Susan Gantner

RPG Tricks and Techniques

This session covers tricks and techniques for the RPG IV programmer.

Come to this session and learn some of the things that you may not have known about

  • The H Spec
  • Compiler Directives
  • The D Spec
  • Sorting Arrays
  • Using dynamic memory allocation
  • Using integers
  • Using indicators
  • Triggers
  • Constraints
  • Record Locking techniques
  • Other bits and pieces

Speaker: Paul Tuohy

RSE/RDP/WDSC 101 - Jump Start: The Basics

Have you become convinced that it's time to take a look at using RSE - the Remote Systems Explorer, which is part of RDP and WDSC? This session will provide you with the first steps you should take in making the transition from SEU and PDM for RPG development to this modern productive toolset.

Susan is both an RSE user and a fan. She'll cover tips for installing and getting started with the tools and some customizations that Susan finds essential. She'll also include information on keyboard shortcuts, handy third party plug-ins, and more. You'll be a more productive programmer in no time!

Join Susan for an in-depth look at how to get a quick start to using RSE to replace SEU for your System i development. After all - you have nothing to lose but your application backlog!

Speaker: Susan Gantner

Embedded SQL in RPG Programs

Many RPG programmers have used interactive SQL as a tool to quickly browse data or to create test data scenarios, but have stopped short of embedding it into their RPG programs. Come to this session to learn why, when and how you may want to use SQL in conjunction with RPG. We will cover the basics of embedding SQL into RPG, including using SQL cursors and a few tips on getting good performance from your SQL applications.

Prerequisite: This session assumes you are familiar with the basics of the SQL language, such as the SQL SELECT and UPDATE statements

Speaker: Paul Tuohy

Processing XML with RPG

In this session we'll look at the enhancements made to the RPG compiler to enable RPG developers to process XML natively from RPG programs. We'll first have a brief overview of the features added in Version 5 that are critical to understanding the XML support that came in V5R4.

One of the main features of the release is the new XML support. Whether you are using XML for web services or data interchange, dealing with XML in RPG is definitely challenging. This support brings welcome relief in the form of new native RPG IV language support that greatly simplifies parsing XML within your RPG programs. In this session we'll discuss the two types of XML parsing support offered and the new operation codes that provide that support.

Speaker: Jon Paris

Getting Started with APIs from RPG

APIs confuse or intimidate many RPG programmers. The API documentation, when you can find it, is rarely written in a way that's clear to RPG developers. This session covers the basics of what APIs are, how to find them in the Information Center, how to read the API descriptions and some of the common techniques needed to use them.

Speaker: Scott Klement

The Hidden Talents of the D-Spec

The humble D-spec has been a part of the RPG IV language since its inception, but many of its features remain undiscovered by the majority of RPG programmers.

For example did you know that:

  • You do not have to give names to fields
  • You can force specific fields into a Data Structure simply by listing their names in the DS
  • Group fields are a powerful tool for grouping and sorting data
  • RPG's *INnn indicators can be mapped to a DS and given names

These and many other related techniques can add powerful new weapons to your RPG toolkit. Join us and find out how.

Speaker: Jon Paris

Programming with PHP: An Introduction for RPGers

PHP - the most popular scripting language on the web - has now landed on System i. Millions of web programmers use PHP to create interactive, dynamic web applications quickly and easily, and now you can join them!

Just like RPG programmers, PHP users tend to focus on "getting the job done" and the simplicity and power of the language reflects that design perspective. PHP also incorporates a straightforward object model that greatly assists procedural programmers ease into the world of Object Orientation.

This session will introduce you to the basics of programming in PHP on System i by drawing comparisons with the RPG IV language we all know and love. We will also introduce you to some of the other powerful features of PHP such as web services, email, and database access. As you will see, PHP is both fun and easy to learn

Speaker: Jon Paris

A Pattern for Reusable RPG Code

You've learned all of the concepts of ILE, and this has given you a lot of new options. When you go back to the office, you find it's hard to use them! They just don't fit into the way you're accustomed to writing software. In your mind, you have a pattern for how programs should be written, and to use ILE effectively, you really need to learn a new pattern. This session discusses the new pattern of writing good, reusable ILE code.

Speaker: Scott Klement

Integrating RPG with the Web

I've written some business logic in RPG. Now how do I make it available through a web interface? It seems like there are a million ways to web-enable an RPG program, and choosing the right technology to do so is a daunting task.

The April 2008 issue of System iNEWS magazine provided a service program containing RPG business rules, and showed how to write a web front end and call that service program from three different web development languages (CGIDEV2, PHP, and Java). So readers can get a feel for the differences between them.

This presentation summarizes what you'll find in that issue, and will hopefully help you along the road to deciding on a technology for your own apps.

Speaker: Scott Klement

Top 10 Things RPGers Must Know

A lot has changed in the computing world since RPG IV was introduced, so come learn how to bring modern development tools and techniques to bear in your RPG applications. Uncover the top ten things every RPGer should be doing to ensure that he/she remains an asset to their company. Understand the critical techniques, tools, and best practices you should be using when developing your RPG applications. Then, get advice on the tools and capabilities that your RPG applications should be exploiting, and see illustrations of all the key points.

Speaker: Susan Gantner

RSE/RDP/WDSC: 102 - Beyond the Basics

Now that you have waved goodbye to SEU and you're an RSE (Remote System Explorer) user, what more do you need to know beyond the basics covered in the "RSE Jump Start" session?

Some of the topics Susan will cover include:

  • Automating coding tasks by using Wizards, Templates and Snippets
  • Two ways to use split-screen editing
  • What is caching, why do I care, and how can I control it
  • What are Projects and how (and why) might I use them?

This session assumes you either have attended "RSE/RDi/RDP/WDSC: 101 - Jump Start - The Basics" or that you have some experience using RSE in either WDSC or RDi or RDP for editing RPG code.

Speaker: Susan Gantner

RPG Droid - Developing your First Google Android Application

I recently switched from a Blackberry to a Motorola Google Android (aka Droid) for my mobile device. While sitting in an airport waiting for a delayed flight I decided I would see how much work was involved in creating a simple Android application from scratch. Turns out it only took about 45 minutes and that included downloading the entire Android development environment! That got me excited because I realized I could not only develop something that ran on the Droid platform but also that it could easily communicate with RPG on IBM i using the RPGUI open source framework.

This session will guide you through setting up the Droid development environment on your PC. Then we will develop a "hello world" Droid application and run it in the provided emulator – this means you don't need to own a Droid phone to test this out! Lastly we will walk through a full working example showing how to have the Droid phone talk to RPGUI via HTTP.

Why would you want to learn how to write Droid applications? Because the Google Android platform is fast becoming one of the most popular mobile device platforms in existence. More and more people are using their mobile devices for things normally done from a laptop or desktop. This means your customers or other internal employees (i.e. C-level executives) will soon start expecting you to offer them the capability to communicate with your data through mobile devices.

Speaker: Aaron Bartell

Open Access for RPG

An RPG announcement hasn't generated this much buzz since the introduction of RPG IV in V3R1 - 15 years ago! RPG Open Access is what has everyone talking.

Open Access for RPG (OAR) is here. Using this support, ISVs and/or programmers just like you can extend the RPG language by writing Open Access "handlers." Handlers are programs (or procedures) which get control when a program performs any file I/O operation (READ, CHAIN, etc.) to a particular file.

Barbara Morris will explain the details behind using Open Access for RPG and how it expands on the capability of Special Files. In this session, you'll learn how the extra information provided by OAR enables far more flexible and powerful I/O handlers than the Special File technique.

You'll hear about some exciting things that some ISVs have done with Open Access to web enable RPG logic. But the primary focus of the session will be on how you can also write your own OAR handlers to simplify all kinds of application functions.

If you are not familiar with the concept of using Special Files, you may find it helpful to attend "Using Special Files to Simplify Your RPG" prior to attending this session.

Speaker: Barbara Morris

Sure You Can Have The Keys

I got a wild hair the other week and decided to buy domain www.SureYouCanHaveTheKeys.com because I am on a mission to prove to IBM that all these Java tools they keep coming out with aren't giving my RPG shop what I need to keep my business at the highest level of the market competitiveness - too many layers of technological bureaucracy to do simple business applications.

My mantra is there is very little RPG can't do. So why not put that mantra to the test by creating an application for Android and web?

Picture this: Your child gets their first Android phone, and you would like to know where they are and what they do with the family vehicle, so you install a small application that uses the phone's GPS capabilities to feed coordinates to an IBM i server on the internet. The IBM i server is running Apache and RPG to receive the data into DB2. All the while the parent logs into a web interface, built using only RPG on the server side, and review, in near real-time, where their child is located by watching a GoogleMap. Pretty cool, eh?

This session will guide you through the steps necessary to develop both the Android and server side RPG code to accomplish the project. All tooling utilized to create the project is free and open source!

Speaker: Aaron Bartell

Using JavaScript Frameworks with RPG to Create Mobile Apps

When considering mobile device solutions for IBM i, developers are faced with a number of questions:

  • What technology choices are available today for mobile device programming in general, and what works well with IBM i?
  • How can I set up my system so that my mobile apps can leverage existing RPG business logic?
  • What is the learning curve for building these apps, and how does an RPG programmer go about learning HTML/CSS/JavaScript?
  • What kind of "gotchas" are lurking when diving into the world of mobile app development?

This session will explore these questions and review popular HTML5 and Javascript framework technology options widely in use today for mobile device programming.

Speaker: Scott Salisbury

Do-It-Yourself Web Reports!

A key medium for the dissemination of information is the report. Unfortunately, on our server of choice, reports must either be printed or viewed while still in the spool-queue. Neither is very satisfactory and is at odds with the current industry trend towards modern interfaces. There are some techniques available whereby existing RPG report programs can be easily retrofitted to render data in a browser.

This presentation will progress from turning a green screen report program first into a plain HTML document and then onwards to a feature rich esthetically pleasing and colorful HTML document. To achieve these results, the reader needs only a rudimentary knowledge of the Integrated File System (IFS) and only a cursory knowledge of HTML.

Speaker: Trevor Seeney

Exception Error Handling

Learn all about the various options for error handling in RPG IV.

This session explains:

  • Trapping operation errors
  • Monitor Groups
  • Program and File Information Data Structures
  • ILE Error Handling Options

Speaker: Paul Tuohy

Introduction to AJAX for RPG Programmers

Although it has been around for a number of years Asynchronous JavaScript and XML (AJAX) has suddenly become a hot topic. What is all the fuss about? What relevance does AJAX have for the RPG programmer?

AJAX provides a means of having a web page communicate with a server, either synchronously or asynchronously. Combined with CGI programming techniques (CGIDEV2 is used in the presentation), you now have a means of dealing interactively with a web page i.e. changing the contents of a web page without having to re-write the whole page.

And best of all, it is already installed on every PC, all you have to do is use it!. In this session you will learn:-

  • The background to AJAX
  • How it works
  • Examples of how to use it

Speaker: Paul Tuohy

RPG and the IFS

How to get started using the Integrated File System from your RPG programs. The IFS is typically used for reading and writing "PC-style" files on the iSeries, and is an important tool for integrating with other computers or business partners.

Speaker: Scott Klement

An RPGer's Adventures in Webland

At System i Developer we like to practice what we preach. The company web site is designed for and is served from a System i. An application is used to manage conference information which, in turn, is used to generate web pages. There are also interactive web pages that communicate directly with RPG programs (e.g. selecting your session grid and repeat sessions).

This session shows you how the Summit web site was built and how the following items played a key part in the development of the web site:

  • Design Decisions
  • Tools Used - WDSC, Navigator, Zend Studio
  • Creating the Database using DDL (SQL)
  • Externalizing the Database
  • The public and the private web sites
  • Maintaining information (using CGIDEV2)
  • PHP
  • Generating Static Web Pages
  • Using and tuning embedded SQL
  • Using AJAX

Speaker: Paul Tuohy

What's New in RPG?

An RPG announcement hasn't generated this much buzz since the introduction of RPG IV in V3R1 - 15 years ago! RPG Open Access is what has everyone talking. But you'll learn in this session that there's a lot more to RPG at 7.1 than just Open Access - exciting as that is.

Join chief RPG architect, Barbara Morris, for a detailed tour of the latest news in the RPG language. She will also cover RPG enhancements from other recent releases, such as 6.1

Note that this session will cover a high level overview of Open Access. The details of Open Access are covered in a different session (Open Access for RPG)

Speaker: Barbara Morris

Accessing External Databases From RPG

RPGers often need to access data from 3rd party databases, such as Microsoft SQL Server, Oracle, MySQL and DB2 on other platforms. One way to do this is by using Java database (JDBC) drivers. Scott will share his experience in using this technique and show you how you can access non-i5OS databases from your RPG programs.

Speaker: Scott Klement

ILE Essentials, Part 1: Static Binding Basics

In this first part of a two-part session, we will take a look at the essential information you need to know about using ILE’s static binding. Using a simple application example, we will illustrate how and why to create modules, bound ILE programs, Service Programs and how to use them effectively. In Part 1, we will discuss creating modules, bound programs and Service Programs as well as creating and using Binding Directories.

Part 2 (a separate session) will focus on maintenance issues related to Service Programs, including Binder Language, as well as Activation Groups and scoping for overrides and shared open data paths.

Speaker: Susan Gantner

ILE Essentials Part 2: Binder Language & Activation Groups

In this second session in the double ILE Essentials series, we will take a look at the essential information you need to know about using ILE’s Binder Language and Activation Groups.

This part will focus on maintenance issues related to Service Programs, including Binder Language basics, as well as Activation Groups and scoping for overrides and shared open data paths. We will discuss which default parameters to avoid and how to save time and trouble maintaining your code.

Speaker: Susan Gantner

Re-thinking your documentation

Documentation is rarely an RPG programmer's favorite task. We view it as boring and a waste of our time. But there are ways to make documentation more interesting, usable and fun. What's more, many of the tools you can use are available free or at low cost.

In this session, we'll discuss some of the alternative approaches you might take. Items to be covered include the use of Wikis, better ways to handle screen shots, using simple video "How to" clips and more. Demonstrations of some of the suggested tools will be included.

Speaker: Jon Paris

Using Special Files to Simplify Your RPG

This session introduces a coding technique that can greatly simplify how your RPG programs interact with modern interfaces such as web services, browsers and more. It allows you to access these interfaces through native RPG I/O operations such as READ, WRITE, UPDATE, etc.). This support is enabled by using RPG's SPECIAL Files, a feature that has been around for years, but has received very little attention to date.

That attention has recently increased dramatically now that the new IBM tool RPG Open Access is here. Open Access builds on the original Special File support.

No need to wait for Open Access, though. You can gain many of the benefits today that Open Access offers by using SPECIAL Files. What kinds of things can you do? How about changing a report program to output to a browser with only a few changes to the existing code? Perhaps sending an email by simply WRITEing the data. Or processing IFS files and directories with nothing more than a READ or WRITE? Even invoke PASE functions using WRITE and getting the results back using READ!

A SPECIAL file is actually a program that receives and reacts to I/O requests on behalf of another RPG program. Once written, it can be used by any program merely by identifying it on the F-spec and coding the appropriate READs and WRITEs etc.

This session will provide you with an understanding of the basic concepts and give you a few examples to get your creative juices going on how you can exploit this capability in your shop today.

The concepts learned in this session will be especially helpful if you plan to attend the session "Open Access for RPG" which follows it.

Speaker: Jon Paris

Embedded SQL in RPG - Beyond the Basics

You have been using embedded SQL in RPG. You have mastered the syntax, tried a few selects, declared a cursor, performed an update - you may even have tried some dynamic SQL!

Time to take it to the next stage and see what you can do with embedded SQL - beyond the basics

Topics covered in this session include:-

  • Discussion of the key points in writing powerful embedded SQL
  • What tools should you use to write and test SQL prior to embedding it?
  • Controlling CRTSQLRPGI
  • SQLCA and SQLCODE considerations
  • Getting data without SELECT - GET DIAGNOSTICS and VALUES INTO
  • Mastering Multi Row Fetch
  • Handling NULL
  • Dates, Times and Timestamps

Prerequisite: This session assumes you are familiar with the topics covered in Embedded SQL - the Basics

Speaker: Paul Tuohy

The New IBM i Toolkit for PHP and More

The new open source IBM i toolkit provides access to traditional IBM i "stuff" such as programs, Data Areas, etc. from non-traditional language applications such as PHP. It is not limited to use by PHP, of course. The toolkit also offers access to traditional objects from Java, C/C++, VB, etc. applications running on IBM i or on other platforms.

Jon will discuss what functions are available in this new toolkit and provide examples of using them from PHP applications, including contrasts from the previous way of doing this from PHP.

Speaker: Jon Paris

Designing Screens and Reports with RDP

Rational Developer for Power Systems, aka RD Power or RDP, contains a new graphical DDS screen and report designer as part of the toolset. It is integrated with RSE (Remote System Explorer) so that you can use views that you use with RSE, such as Outline, Properties and the RSE source editor, while designing your DDS code.

Focusing mostly on DDS screens, Susan will demonstrate how the graphical designer works and compare and contrast it with CODE Designer - the widely used graphical DDS designer that was available as part of WDSC.

Speaker: Susan Gantner

Your business data is in RPG. Your users want Microsoft Excel. This session discusses how an RPG program can build and modify Excel spreadsheets by calling the POI Java classes.

By the end of this session, attendees will be able to:

  1. Know when to use and when not to use POI to create spreadsheets
  2. Create spreadsheets
  3. Modify existing spreadsheets

Speaker: Scott Klement

RPG on the Move - IBM/i to Smartphones

 

In this session the attendee will learn how to render IBM/I based data and metrics to ‘Smart-Phones’, such as the iPhone, iPad, Android and Blackberry. By the use of meta-tags and conditional CSS, minimalist web-pages are rendered to the Smart-Phones that fill the available screen space, but still provide the drill-down capabilities of traditional web-pages.

By this method, executives can monitor their systems and applications from their cell phones without the need to fire-up their laptops or desktops. This delivery mechanism can also be used by corporations to make data readily available to their clients.

The attendee will learn

  • Considerations for developing for the smaller canvas
    • Screen size attributes
    • Scrolling out the address-bar
  • Device Specific Consideration
    • Conditional Cascading Style Sheets based upon device
    • Transferring to a device-specific web-page
  • Rendering options
    • Tables
    • Graphs
    • Pie Charts
    • Maps
  • Geo-Location techniques

Speaker: Trevor Seeney

Externalizing Database Processing

One of the major considerations for the ongoing modernization of applications is how to make functionality accessible to multiple interfaces. But no matter how the application interfaces may change (green screen, web, client server, mobile phones etc.) or how data may arrive on the system (FTP, EDI, XML etc.) you can be sure that all of the data is going to end up in a database.

Externalized database processing provides a means of encapsulating database access. This session discusses why you may want to externalize database processing in RPG IV and how to do it.

Speaker: Paul Tuohy

Debugging Tools for RPGers

In this session, we'll cover the 2 most widely used debuggers from IBM for RPG applications: the STRDBG "green screen" debugger and the graphical interactive debugger that's part of both RDi and WDSC.

We'll look at the basics of using both, but the primary focus will be on the graphical debugger that works with RSE/RDi/WDSC. We'll look at the pros and cons of each so that you can help determine which is the best for your debugging requirements.

Speaker: Susan Gantner

RPG User-defined Functions (UDFs) & Table Functions (UDTFs)

RPG is the best language in the world for writing business rules. But what happens when you want to use those business rules from SQL? Or from a web application that accesses your business logic through SQL? DB2 for i lets you write User Defined Functions (UDFs) in high level languages like RPG. UDFs can be called from SQL statements run from anywhere, including ad-hoc queries, SQL run from web applications, and SQL run from the embedded SQL precompilers used by RPG and other languages.

UDFs can even return a table (often called a UDTF, User Defined Table Function) which lets them do the same sort of work that a stored procedure would do -- but unlike stored procedures, they can return result sets to any language, including PHP, Java, .NET and embedded SQL written in ILE RPG.

UDFs are a powerful tool for any programmer's toolbox.

Speaker: Scott Klement

Fast, Free Applications for your IBM i

Are you tired of constantly exporting and importing data for "foreign" applications running on Windows or Unix/Linux servers? Do you wish there was an easy way to keep more applications on IBM i?

This session shows you two approaches that will help you to ensure that modern applications can be deployed on IBM i easily and without breaking the budget.

  1. Exploit the huge world of open source (i.e., free or nearly free) applications and tools that you can easily implement on your IBM i system. And what's more, you can easily integrate these applications into your DB2/RPG universe.
  2. Create powerful browser-based database applications in minutes using readily available application frameworks - writing almost no code yourself. And all the data can be stored in DB2 so you can easily integrate these applications into your existing inventory.

Can it really be that cheap and easy to do? Yes, thanks to the ability to run PHP and MySQL on IBM i. In this session, Jon will discuss a number of open source applications and will also demonstrate several application frameworks to show just how quickly and easily new web-based applications can be deployed.

Keep your IBM i alive and vibrant and be a hero to your end users by responding quickly to requests for new web based applications.

You do not need to be a PHP programmer to do this. Come find out how.

Speaker: Jon Paris

Home | Conferences | About Us | System i Community | Privacy Policy | Legal Notices | Email Webmaster | Contact
System i Developer,LLC © 2010