Top Banner
Profound.js Future of open source development on IBM i Alex Roytman Profound Logic
25

Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Mar 13, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Profound.jsFuture of open sourcedevelopment on IBM i

Alex Roytman

Profound Logic

Page 2: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• The most exciting technology ever to be brought over to IBM i

• Brings the platform forward in a way like nothing else ever did before

• Platform won’t be viewed as legacy by anyone again

• In many shops, it’s going to save IBM i

What is Node.js?

Page 3: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Outdated green-screens

• Finding IBM i developers to work on your applications

Addresses these concerns perfectly:

Page 4: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Server-side JavaScript

Node.js

Page 5: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Simple, portable, powerful high level language

• It’s everywhere

– So much open source, examples, education, tools for it

– Most popular language today

– Perfected for use by browsers first

– Millions of developers, transferrable skill

• JSON is inherent to JavaScript

• Interpreted and great for prototyping

• Stable, performant, great for production

JavaScript

Page 6: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Node.js widely used by Enterprise

Page 7: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

And now on IBM i

• Runs in PASE like other open source technology on i

• But Node doesn’t have to run in its own silo

• Can act like an ILE language (can run under same call

stack and environment as RPG, COBOL, and CL)

Page 8: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Node.js was built to be extensible and adoptable

• Start out with a blank slate

• Bring in packages that extend Node.js

How can Node act like an ILE language?

Page 9: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Node ships with Node Package Manager

• Uses a public registry of packages

• Packages often depend on each other

• Usage stats for each package gives it a social aspect

NPM – Node Package Manager

Page 10: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Various packages:– Web Services Capabilities

– PDF, Excel, Image generation and processing

– Email

– IoT, AI, BlueMix, Watson API, Cloud, Cognitive

– Encryption / Security

– JSON, XML processing, Web, Mobile Tools

– Integration: drivers and API to access data on any other system

• More than ½ million packages

• More than 2.5 billion downloads per week

Some staggering NPM statistics

Page 11: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• NPM provides a package for everything

• What if there was a package that …

– Made Node.js act like an ILE language

– Provided all capabilities of RPG

– Made learning curve for RPG developers a matter of hours / days

How can Node act like an ILE language?

Page 12: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Profound.js Framework

• Profound.js Connector

• Profound.js Converter

• JumpStart

Profound.js

Page 13: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Free NPM Package that gives Node.js RPG-like capabilities

• Top-down transactional business programming

• Support for all IBM i data types

• Various API to work with these IBM idata types

• Built-in support for Rich Display or HTML interfaces

• Visual Designer Tool for building interfaces

Profound.js Framework

Page 14: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Very simple to use API for DB2 Access, Data Areas, and other system resources

– Record Level Access

– SQL

– Support for overrides, QTEMP, and other IBM i concepts

• Call any IBM i Program or Command directly

– Pass any IBM i parameters

– Works even with interactive 5250 commands and programs

• Be called by any IBM i Program directly as an ILE object

– Object Level authority and traditional IBM i security in place

– Receive any IBM i parameters

– Display HTML or Rich UI in the midst of 5250 or RPG OA program

• Call any System API like a simple JavaScript function

• Call any Service Program procedure

Profound.js Connector

Page 15: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

• Extremely accurate

• Think of it as a more holistic version of free format RPG

• One to one relationship between RPG and Node.js

• Simplifies code (especially fixed format concepts)

• Modularizes your code automatically

• Finds and removes dead code

• Creates REST API out of any program

• Agile approach used– Convert one or multiple programs at a time

– All dependencies still work

Profound.js Converter

Page 16: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Transactional business programming

Page 17: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Transactional business programming

Page 18: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Defining variables or fields

Page 19: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Calling programs / commands

Page 20: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

User Interface

Page 21: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

User Interface - Subfiles

Page 22: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Databases – Record Level Access

Page 23: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Databases – Embedded SQL

Page 24: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Profound.js Demo

Page 25: Agile Modernization with Profound - Gateway/400 · 2017-09-14 · –IoT, AI, BlueMix, Watson API, Cloud, Cognitive –Encryption / Security –JSON, XML processing, Web, Mobile Tools

Copyright © 1999-2017

Questions & Answers

Our Web Site:www.profoundlogic.com

Profound.js Microsite:www.profoundjs.com

Contact me: [email protected]

company/profound-logic-software

profoundlogic

@ProfoundLogic