After many long days and nights sifting through the largest pile ever of excellent session proposals our selection committee is happy to announce the following sessions and speakers for PUG Challenge Americas 2016!
- Programming with the 4GL
- Reporting/Business Intelligence
- The Database
- 3rd Party Integration
- Complementary Technologies
- Development Tools
- Roadmaps and Info Exchanges
Jerry Rulli, Colleen Smith, Progress
We're not sure -- but it will be good!
Programming with the 4GL
- 252: Case Study: Application Modernization
Rob Marshall, Progress Software
In this session we will explore a actual application modernization Proof of Concept (POC). We will use a traditional ABL character-based application, with no use of the AppServer, and tightly-coupled UI and business logic. The development result used REST services and a Web-based, single page application. This POC covered a number of screens and the result was dramatic. Found out what was done, lessons learned and the process we followed and why
- 253: Proper care and feeding of an index
Michael Lonski, Allegro Consultants, LTD.
The core of Progress is the database and the core of accessing the database are its indices. Knowing the in's and out's of the DB engine index rules can make or break an application's performance. With the increase in dynamic programming models, the ability to properly select indices and , more importantly, prove which ones are being used is paramount.
From the COMPILE listing to the INDEX-INFORMATION method to new OpenEdge 10 logging features, learn how to predict and prove index usage and take back control of your applications. Attendees are guaranteed to leave this session with long held beliefs challenged and a new, more accurate understanding of OpenEdge index behaviour.
- 380: A Smple Aproach to Modernize WebSpeed with Kendo UI
Jordi Sastre, Progress Software
- 401: UnLOCK the Transaction Enigma
Paul Guggenheim, Paul Guggenheim & Associates, Inc.
Transactions and record locks are an integral part of the OpenEdge ABL. If you are new to the OpenEdge environment, you will learn how a transaction and record locks are intertwined, and how to write efficient applications that maximize record concurrency while minimizing record locking. The attendee will acquire a thorough knowledge of what pitfalls to avoid and best practices to use in building a successful OpenEdge application. Several pertinent examples will be provided which will prove invaluable to an emerging OpenEdge developer.
This session is for developers new to OpenEdge. No experience is necessary.
- 484: Give Your Project a Spark
Dustin Grau, Progress BravePoint
There is no shortage of frameworks in play within the ABL community for assisting you to build a full-featured application. So it may be a surprise that Progress Services would like to add one more - with a twist. Our modernization methodology, known as the Modernization Framework for OpenEdge, will help you to not only lay the groundwork for a fully-featured ABL back-end out of the box but more importantly will prepare you to join in the Common Component Specification effort.
While Progress engages with the community to draft the formal specifications for interoperable components, this session can help explain what the project effort consists of and how to incorporate this framework to make you compatible with those future components. Intended for developers wanting to expand their abilities within the OpenEdge side of a REST project, and prepare for the coming Common Component Specifications.
- 568: .Net from Progress Not GUI for .Net
Tom Bergman, Ovid Technologies
For quite some time now, we've all been exposed to features and wonder of GUI for .Net. This presentation will show you some interesting uses of .Net that do not involve the user interface. Ever want to resize or change the format of an image? Talk to Oracle or MSSQL? Communicate via HTTP? Use Active Directory? Use math functions not available from the ABL? Use regular expressions? Compress data before it goes to the DB? Find or kill a Process ID? Create an appointment on an Exchange server? All of these and more are possible, and in many cases simple, from within Progress using the Progress .Net bridge. And these just barely touch on the possibilities within the .Net framework and third party .Net components. This session is for Progress developers. No knowledge of .Net is required or assumed.
- 612: Moving On Up: Migrating Your Webspeed Application to PASOE
Peter Judge, Progress Software
Progress Application Server for OpenEdge (PASOE) has supported running WebSpeed for a little while now. Come see how you can migrate your WebSpeed application to take advantage of everything that PASOE has to offer - from enhanced security to a unified application server runtime - and how to extend and enhance it with the new OpenHTTP programming model.
- 660: Integrating your OpenEdge Application with the SFDC REST Bulk APIs using .Net WebClient
Gerry Winning, Wolters Kluwer HLRP
Calling the SFDC REST API is easy from the OpenEdge ABL, once you acquire a basic set of knowledge that can be difficult to assemble on your own. In this session, you will learn the basics on how to integrate your OpenEdge Application with Salesforce.com calling their Bulk and REST APIs.
We'll start with a brief overview of SFDC API, including the requirements of integrating with SFDC. We will then walk through a set of examples that explain authentication/authorization requirements, calling the SFDC web APIs using the .Net WebClient, and how to get the JSON/XML/CSV results into an OpenEdge temp table. After this session, you will have and understand this small set of classes that will allow you to easily access the SFDC APIs from your OpenEdge application.
- 674: Why use the ABL? Why is the Progress 4GL More Productive than Alternatives?
Alan Estrada and Bill Wood, Progress Software
Join Bill Wood and Alan Estrada from the OpenEdge ABL team and be reminded of the power of the Progress OpenEdge ABL. We all know deep down how helpful the ABL is in building large-scale, multi-table, transactional applications. This session will look at some of the language features in the ABL that make it so useful, and compare and contrast to using 3GL combined with SQL. With this talk we also intend to empower you with technical illustrations and examples for debating critics in the selection of ABL for use with future projects.
- 798: Common Component Specification - a deep dive into the specs
Mike Fechner, Consultingwerk
It's now a year after the Common Components Specification project was launched by Progress Software and the community. The first specifications are available now - so it's time to start implementing based on those guidelines. Day one CCS member Mike Fechner will dive right into the available specs and explain details about the expected runtime behaviour and interfaces of the components. Expect to see lot's of ABL code! The presentation will demo examples of simple and more extensive implementations.
- 806: OO-Oh
Mike Fechner, Consultingwerk
To CAST? TYPE-OF? Interfaces? Inheritance? Statics? Reflection? Feeling dizzy already? Well knowing how to write a class and add methods to it, is not enough to master object oriented programming. Why do I need more objects to replace even a simple procedure? This session will answer those questions and cover these basic OO principles and explain them based on practical examples in OO-ABL code. Source code guaranteed.
- 832: What's New in the ABL in OpenEdge Release 11.6
Fernando Souza, PSC
This session provides an overview of the enhancements to the ABL that are available in our latest release - OpenEdge 11.6. These features include support for ABL enumeration types, OOABL reflection as well as many other topics.
- 871: Facing the Challenges of modernizing legacy OpenEdge code and concurrency control
Oscar Perez Cedron and Sophy Nathalian, Apero Solutions
For the past few years, Apero has been on a journey to update and modernize our legacy ERP to incorporate a new Rich User Interface and a solid Service Oriented Architecture (SOA) for business logic using OpenEdge Web technology. Aperos goal was always to tryt and re-use as much of our existing ERP ABL legacy code. In order to do this, we have created a solid Service Oriented Architecture (SOA) using OpenEdge Web service technology that implements a generic entry point for CRUD operations on OpenEdge database tables. Our resulting application framework now takes care of multi-user concurrency for users adding, editing and deleting record being accessed through the traditional green screen UI, browser based RUI and mobility applications calling the same business logic. In this session, we will outline how we streamlined this process allowing for a single service handling the business logic and multiple user interfaces accessing the data.
- 881: 4GL Code Performance
Paul Koufalis and Peter Judge, White Star Software and Progress Software
Is your idea of code performance QA searching for WHOLE-INDEX in a compile-xref? If yes, sign up for the workshop RIGHT NOW. Sign up twice! The Sunday workshop will give you hands-on experience with a whole universe of tools available to help diagnose and correct performance problems with your 4GL code. This session will race through the workshop material for those who could not attend Sunday or who just can't get enough talk about 4GL performance improvement!
- 891: Benchmarking Network Data Transfers
Paul Koufalis, White Star Software
My OpenEdge database is on server x. My 4GL client (_progres, prowin32, _proapsv...) is on workstation y. How do I get data from x to y...FAST?
There have been a number of presentations on the various start-up parameters, coding techniques and best practices when it comes to transporting data across the network. This presentation skims over the theory and goes straight to the results: what's fast and what isn't. Using ProTop Free, promon and other monitoring tools, this presentation will show you the cause and effect relationships between coding practices, client and database start-up parameters and the resulting execution times.
- 961: A Modernization Platform for the Web
Shelley Chase, Progress Software
- 962: Fantastic OpenEdge Web Applications in 11.6
Shelley Chase and Bill Wood, Progress Software
With WebSpeed added to PASOE, OpenEdge is delivering a superior platform for writing web applications. We will discuss how to use WebSpeed in the Pacific Application server as your backend of choice for REST/JSON applications. Examples will be given using Telerik mobile, Kendo UI, and JSDO's backed by WebSpeed. We will look at a generic service accessing all database tables, and one also invoking OpenEdge Business Entities in WebSpeed.
- 1012: Feeling Secure in an Insecure World
Progress Team (moderated by Brian Bowman), PSC
In this session you will hear ideas of what you can do to make your existing OpenEdge application more secure. Listen to multiple OpenEdge developers talk about some of the little things you can do today with minimal to no changes to your application. We will talk about easy things to implement around your database and hard things to implement with your application. Topics covered will be things like client principal, restricting access, authenticated systems and known/trusted code-paths. You will come away with a better understanding that there are things you can do today to be more secure.
- 277: OpenEdge Analytics360: New and Planned Features
Michael Marriage, Progress
We've been working hard to add new features and functionality into Analytics360, the business intelligence and data analytics solution from Progress. In this session, we'll explore various UI/UX options and review the expanded functionality within our data forecaster (Predictive Analytics). Take a tour of our ETL tool, including our ability to reuse existing business logic by calling ABL code directly from Analytics360. Finally, we'll share a little of what's to come.
- 875: Report modernization on a budget: A fresh look at PDFInclude
Paul Bouscaren, Outlook Park Holdings, LLC
PDFInclude has been available to the Progress community for some time as a free tool for enhancing report output through the generation of real Adobe pdf-format documents using this tool which is written exclusively in native Progress 4GL. In this session we will look at what can be done with it 'out of the box' and how to integrate that functionality with your application to beautify your reports. We will also look into why the forms feature is not performing so well and what must be done for that. I'll demonstrate how the output can be sent to your favorite device to be viewed with Adobe Reader.
- 214: The OpenEdge DBA Checklist, Things an OE DBA ought to be doing
Tom Bascom, White Star Software
People often ask what tasks an OpenEdge DBA should be performing...
- 215: A Migration Story: From Big Iron to a "Commodity Server"
Tom Bascom, White Star Software
This real-life case-study of the migration of a 1,500+ user system from Solaris to Linux will examine the question of how large a user load a Linux Server can support. We will explore the reasons for the migration, the tools used to benchmark and validate the target system, discuss tuning adjustments and changes, the methodology used to ensure a successful migration, share the results of this project and talk about where projects like this might go in the future!
- 224: We have found Nirvana with Online Dump and Load
Mike Furgal, Progress Software
Need to plan downtime for a dump and load. Not anymore. OpenEdge 11 with Table Partitioning lessens the need for a Dump and Load. If one is required, however, when properly configured it can be done online with zero interruption to the application. In this session you will learn more about Table Partitioning, the Online Dump and Load concept, and watch an Online Dump and Load Demo.
- 231: Tales Of The Secret Bunker 2015
Gus Bjorklund, Mike Furgal, etc, Progress Software
There are lies, damned lies and benchmarks. The intrepid band of benchmarkers returns once more, with the results of testing recent release of the OpenEdge RDBMS on Linux. Come to this talk to find out what they discovered. Get some hints and tips you can use to optimize your OpenEdge on Linux setup.
This year's topic: Dump and Load Optimizations.
- 420: 99 Ways to Crash a Database
Nectarios Daloglou, White Star Software
A somewhat tongue-in-cheek discussion of some of the dumbest, most dangerous, suicidal things I and other senior DBAs have seen out there in the OpenEdge world. Join me for an entertaining and informative hour of DBA horror stories and how they were (or could have been) avoided!
- 450: DataServers:Best Practices and Performance Considerations with OpenEdge 11
Sachin Garg, Progress Software India Developement Center
Many a time it has been observed that an application is performing slow due to the lack of best programming techniques. Even DataServer applications can meet the same fate in the absence of best practices. Therefore, when writing applications against the DataServer, there are lots of good features and a deployment mechanism that should be considered for enhanced application productivity. This session will take you through the gamut of DataServer features, configuration and some of the best coding practices that will enable application developers to write better applications and understand the DataServer technology better.
- 583: DBAnalys to the rescue
Dmitri Levin, Alphabroder
The session will be about database performance issues discovered using dbanalys. We will show how the database possible performance issues could be uncovered by looking at dbanalyes alone. We will also look at synergy -- how combining results of different performance VSTs ( _TableState, _IndexStats ) with dbanalyses will show us amazing views into performance and pin point issues. We will also discuss database fragmentation, its effects and how to fight it. Database chains, create/toss limits, etc.
- 827: Case Study: Table Partitioning
Gus Bjorklund, progress
Table Partitioning is a major new feature introduced in the OpenEdge 11.4 release. In this session, you will see how to set up Table Partitioning within the OpenEdge RDBMS, and how long each step typically takes. We will partition some existing large tables and the data within them. All the scripts, SQL, and 4GL programs will be provided.
- 895: DBA Best Practices
Paul Koufalis, White Star Software
Are you new to the Progress DB? Or have you been doing the exact same thing since version 6? Don't you wish someone would just tell you the super-secret-startup-parameters? Well you're in luck! Come and find out what the veteran DBAs in the consulting world are doing and how it's changed over 20 years. You'll learn about structuring, starting and stopping, managing , monitoring and maintaining availability of your database environments.
- 948: Captain, Where Should I go? What Should I do?
Dan Foreman, Progress
One of my favorite lines from the movie Titanic is, .So what does that have to do with Progress?. This presentation will show you the basic steps of how to troubleshoot the issues such as: 1) My database is slow. 2) Whats the problem? My database is frozen. 3) What do I do now? My database has crashed. 4) What should I do next?
You will come away from this session with a basic checklist of things to check that will help you identify the root cause and fix the problem.
- 975: Who, What, Where, When, Why and How
Adam Backman, White Star Software
Database Dump and load is one of those things that we know we should do or have to do some time but when to do it is sometimes murky. This presentation will cover what to look for within the database that could indicate it is time to do a dump and load. Once you figure out that you need to dump and load you might as well do the best you can so you can avoid doing another one any times soon.
Who does the dump and load?
What do you need to consider before and during the process?
Where you put things in you dump and log?
When do you do the dump and load?
Why do a dump and load?
Bonus: How to make your dump and load as fast as possible?
- 1009: SQL Debugging
Chandra Sekhar, PSC
There are occasions when you have to deal with situations like database crashes, slowdown of your database or other database glitches. The reasons can range from a poorly 'designed database' and poorly written/generated 'SQL queries' to a system that is improperly configured for the workload. This session covers step-by-step guidelines for diagnosing and troubleshooting these common database problems with respect to OpenEdge SQL Server and how to take corrective actions to fix these problems. This session also covers various methods which help in troubleshooting.
- 1011: SQL Tuning
Chandra Sekhar, PSC
Do you know in how many ways you can configure your OpenEdge database? Each instance of OpenEdge database setup will have its own operational requirements. Attend this session to learn how to fine-tune your database so that it operates efficiently as per your requirements. In this session, we will be covering important SQL specific configuration parameters and environment variable settings that every DBA of an OpenEdge database should know. Similar to OpenEdge database server, there are various configuration options available for the SQL database ODBC & JDBC drivers. This session also covers some of the important OpenEdge ODBC/JDBC driver side configurations.
3rd Party Integration
- 681: Customer Case Study: Moving Progress DBs and environment to the Microsoft Azure Cloud
Michael Guerra, Wolters Kluwer Health Learning, Research and Practice
The Back Office Development team, for Wolters Kluwer Health Learning, Research and Practice (HLRP), was mandated to move the Progress Windows development environment, which included our development Progress DBs, to the Microsoft Azure Cloud. This presentation discusses the Microsoft Azure infrastructure and the hurdles that we needed to overcome.
Wolters Kluwer Health Learning, Research and Practice (HLRP) provides lifelong learning, research and practice information solutions for healthcare practitioners, researchers and students. We provide high-quality content and workflow solutions in the medical, nursing and allied health segments to institutions and individuals globally.
Windows Server 2012 R2
Using Progress 11.6
DB Size 160G
Windows Server 2008 R2
Using Citrix to access Development tools
Windows Server 2012 R2
- 382: Have You Seen OpenEdge Management Lately?
Roy Ellis, PSC
Have you seen OpenEdge Management lately? OpenEdge Management has had many improvements over the last several releases. OpenEdge Management has added a modern UI, new remote management, expanded OpenEdge database management, new graphing and more! If you want to know what OpenEdge Management is or learn whats new since the last time you considered OpenEdge Management then this is the talk for you.
- 392: Why Progress Application Server for OpenEdge?
Roy Ellis, PSC
Have you heard about the new fangled Progress Application Server for OpenEdge (PASOE) but dont know why you should care? Well this talk will explain PASOE and give you a deeper dive into how it works. We will discuss configuration and migration. Then we will discuss the many reasons why PASOE is worth considering.
- 586: Building a SaaS Satellite App for an Existing OpenEdge Application in Less Than 60 Minutes
Dr Ganesh Iyer, Ganesh Cherivirala, Progress Software
OpenEdge customers are often required to build satellite apps that complement their core OpenEdge business application (ERP systems, Employee Management apps, etc.) Inthis session, watch as we build a SaaS satellite app for an existing OpenEdge application in less than 60 minutes using the power of Progress Rollbase.
- 652: Sitefinity 101
Denis Kyashif, New Venture Software
Sitefinity is an amazing Web Content Management and Digital Marketing Platform that provides many capabilities that boost productivity and customer engagement. We will take a look at Sitefinitys main features and peek under the hood to understand how Sitefinity is customized and deployed.
- 810: Angular JS for OpenEdge programmers
Marko Rueterbories, Consultingwerk
- 844: Pulling Back the Curtain on Application Modernization
Tim Kuehn, TDK Consulting Services Inc
A high-level presentation on the various aspects of an application modernization project - why it's needed, the information gathering phase, selecting the implementing technology, architectural refactoring, and actual implementation. This session is intended for both managers and developers.
- 926: Managing Change: A Comparison of ABL and Business Rules
David Atkins PhD, Progress
Through hands on demonstrations this session will compare and contrast 'equivalent' ABL and Corticon business rules implementations of a particular business logic scenario. Step-by-step logic changes will highlight the quality and productivity benefits of Corticon's rule integrity checks which provide rapid impact analysis of changes to logic. The demonstrations will also provide examples of how various ABL language constructs can be modeled in Corticon business rules.
- 981: TypeScript for OO Developers
Julian Lyndon-Smith, whogloo inc
After years of OO presentations, tutorials and training we are now skilled OO 4GL developers. Huzzaah.
And then we hear about angular. And nodejs. And we feel left out, again ;)
Don't worry - it's not all doom and gloom. Microsoft have given us a free, opensource lifeline (yes, Microsoft ..)
It's called Typescript, and it's so cool Google have dropped their own AtScript and adopted Tyepscript.
So, just how does this fit in with OO 4GL ?
Well, this presentation will take all that you know about OO4GL and show you how simple it is to use the same techniques to write nodejs code using OO classes.
We'll cover the build tools required, best practices, and several examples of real-world usage, along with plentiful hints and tips on how to get started with Typescript.
Once you have got to grips with Typescript, you can then use the power of node to integrate and extend your 4GL application with nodejs (see the "to node or not to node" for a complementary presentation on using node with the 4GL)
- 986: Docker II - Judgement Day
Thomas Hansen, whoGloo, Inc.
You may have heard of Docker and containers one of the coolest and fastest growing technologies out there.
You may also have been trying to work out how to use Docker with OpenEdge or even seen our presentation from last year on how to get started.
In this presentation we will give you an update on where Docker has come so far and show you how to use Docker and OpenEdge for development, testing and deployment with real-world examples from an application that is being run completely using Docker across multiple servers.
- 989: Docker III - rise of the machines
Thomas Hansen & Julian Lyndon Smith, whoGloo, Inc.
Docker has grown quickly to become much more than containers. Docker Engine, Machines, Compose, Swarm what do they all mean and how can you use them?
With this presentation we will explain these concepts and then show a cool demo of how we can create a Swarm of Machines on hosts in different parts of the world, running an OpenEdge application moving the active instance of the application from one machine to another without stopping the application or losing connectivity.
- 1229: Roundtable TSMS 11.6 - Sneak a Peek!
Jeff Ledbetter, Roundtable Software
Roundtable TSMS 11.6 is just around the corner and we have added some cool features! Come to this session to learn about the new Shelf feature, enabling automatic repository back-ups of your work-in-process code changes, and improved collaboration with the Lab. This session is for current Roundtable users, or anyone else looking to know more about their SCM options for OpenEdge development.
- 258: Hybrid Mobile: It's Not about Cars!
Ricardo Perdigao & Jean Munro, Progress Sofware
Discover how quickly and easily you can build a hybrid mobile app that works with your Progress OpenEdge database! The session demo will use the ScreenBuilder that is included in the Telerik Platform for OpenEdge.
- 263: Progress Developer Studio Journey through OpenEdge 11
Srinivas Kantipudi, Progress Software
An entirely new Progress Developer Studio for OpenEdge (PDSOE) has emerged in the last few years starting with therelease of OpenEdge 11. PDSOE is a complete tool that supports the whole ABL application development life cycle, and is easy and intuitive. We integrated all tools into PDSOE and introduced features such as Project types, REST, Servers support, ABLUnit and Profiler. This session will walk you through all of the amazing features introduced in versions 11.x categorized by ease-of-use, productivity and completeness.
- 270: OpenEdge Developers Kit Subscriptions
Kevin Aspindle, Progress
The OpenEdge Developers Kit (OEDK) offers you and your development team the ability to sharpen your competitive edge by providing access to the latest Progress technology and supporting information. Through OEDK paid subscriptions, developers gain access to a complete set of Progress development and deployment products, so that you can be sure you are developing and testing your business applications with the most reliable and best performing Progress tools, platform, and server technologies.
Find out about the subscription plan choices and see a demonstration of how to use the customer self-service portalto get just the licenses you need for your OpenEdge development tools and deployment testing environments.
Whether your business is building OpenEdge applications or you want to know more about the technology behind the scenes, OEDK offers the tools and information to expand your Progress resources, helping you keep control of your development costs and more effectively and efficiently utilize Progress technology.
- 364: Customizing PDSOE Per Your Needs
DivyaTheja Pachipula, Progress Software
Progress Developer Studio for OpenEdge (PDSOE) provides a host of capabilities with configurations and options to simplify OpenEdge application development. You get the best results when features are customized to drive maximum performance and a seamless development experience. Attend this session to understand the different customizations provided by PDSOE and how you can benefit from these during team development or while working on multiple/huge projects.
- 661: Proparse: Analysis of ABL Source
Gilles Querret, Riverside Software
Few ABL applications are well documented, presenting substantial risks in maintenance and enhancement. The most common source of knowledge about the application is senior staff and that knowledge can be lost when these people are no longer available. Proparse, an open source tool, can scan ABL source with full syntactic understanding and a rich supply of options to inquire on properties of the code. Proparse thus provides a mechanism by which to research and document many aspects of ABL code, greatly supplementing our ability to perform maintenance and enhancement with confidence.
- 799: REST In Piece - Mastering the JSDO with a dynamic ABL backend
Mike Fechner, Consultingwerk
- 873: Standardizing OpenEdge Application Frameworks through Community Authored Specifications.
Tom Kincaid, Mike Fechner, Shelley Chase, Christopher Longo Peter Judge, Paul Moberg, Mike Jacobs, Progress, Consultingwerk, Quicken Loans
The Common Component Specifications effort is a standardization process for Progress OpenEdge Frameworks. It consists of over 40 companies working together to produce specifications for OpenEdge application frameworks.Many of the specification leaders and team members have decades of experience with OpenEdge and developing and delivering OpenEdge Frameworks. This talk will provide an overview of the Common Component Specification process and provide a technical walk through of the Architecture Specification which was finalized in February. Finally it will discuss time lines for compatible implementations of the Common Component Specifications and status of other specification efforts.
- 886: Git your source code under control - for free!
Chris Hawkins, ASA Automotive Systems, Inc
Git is the very popular source control tool developed by the Linux creator, Linus Torvalds. Just like Linux, it is free and open source. Git is now over 10 years old, continues to gain in popularity and is now practically an industry standard. Because of Gits popularity, most other development tools have an integration to Git (including Eclipse). Attend this session to get an introduction to Git and see how it could help your development. Git guarantees the integrity of your source code, merging of changes for multiple developers, either locally or across the world. See how we use Git to support many customers on multiple release versions of our software. I will also show some of the very useful tools built around Git and options for hosting Git source repositories.
- 1004: Source code analysis for OpenEdge
Gilles QUERRET, Riverside Software
After a first release in March 2016 and a few months of beta testing, this session will present the first OpenEdge code analyzer based on the famous SonarQube platform. Technical debt, code complexity, unit tests coverage, code duplication, metrics, parsers : all those concepts will be explained, and youll learn how you can continuously analyze OpenEdge code using the open-source plugin for SonarQube.
- 239: Workshop on SSL/TLS configuration in OpenEdge.
Sharath Gabbeta, Kumar Navneet, Progress Software
In this workshop we will cover:
1.Creation of digital certificates and basics of SSL/TLS communication including one way and two way SSL handshake.
2.Configuration of OpenEdge clients and servers components to make them secure and non-vulnerable to MITM attacks that comes with POODLE vulnerability.
3.How OpenEdge components can make secure connections with External Software applications.
4. More security comes with some cost like performance and inability to connect to less secure clients/servers. In such case you will have to choose from various options that lie in in front of you.
5.Hands-on exercises on SSL tools like sslyze, OpenSSL etc
6.This workshop will have some failing scenarios where you will have to apply what we discuss in this workshop to troubleshoot and fix the problems
- 299: Monitoring OpenEdge Applications with BPM
Jawahar Surapaneni , Satyam Dhavala, Progress Software
Would you like to gain the benefits of Business Process Management for your existing OpenEdge Applications without the re-engineering effort and at the same time like to modernize your existing OpenEdge applications? Attend this workshop "Monitoring OpenEdge Applications with BPM"
where we walk you through monitoring your legacy OpenEdge Applications by enriching the exception handling capabilities and then modernize your OpenEdge Application in to a fully automated Business process
- 415: Climb aboard the ProDataSet Train Workshop
Paul Guggenheim, Paul Guggenheim & Associates, Inc.
If you have been putting off learning ProDataSets but still want to learn about them, here is your chance. ProDataSets are one of the major developments in the OpenEdge ABL. Whether you are building an application that uses the advanced UI, browser based, object oriented or procedural-based, they are useful for a number of reasons. The beginning developer will learn how to define complex business logic inside a ProDataSet, create data mapping between the ProDataSet and the database, and associate hooks for custom event procedures.
A generous set of code examples will be supplied and demonstrated. Don't miss this opportunity to get up to speed quickly in this versatile yet powerful technology. Attendees should have a good background in OpenEdge and feel comfortable with temp-tables, queries and browses.
4.Populating a ProDataSet
a.8 steps, attaching and detaching data-sources, fill method, etc.
5.Maintaining ProDataSet Changes
7.Row-State attribute and function
8.Accept-changes, Accept-row-changes methods
9.Reject-changes, Reject-row-changes methods
10.Saving data from ProDataSet to the Database
12.Skip-List Option on Save-Row-Changes
13.ProDataSet Record Change Conflict support
14.Sharing Dataset between procedures and sessions, bind option
15.ProDataSet Thin Client features create changed Prodataset, merge changes
16.ProDataSet AppServer Update Strategies
17.Grouping changing into one commit
18.Advanced queries and logic
- 436: Workshop - Understanding OpenEdge SQL query plans and troubleshooting
Chandra sekhar, Progress Software
Do you know how to interpret execution plan of a SQL query or how to display the query plan? Do you know the different tools or methods to diagnose and fix a poorly performing query? This hands-on workshop will help you in understanding simple to complex SQL query plans and will also let you work on some methods to differentiate between a good query plan and a bad one. This workshop should also let you work on some tools and tips on how to diagnose a poorly performing query.
- 622: SpeedScript to Stylish UI with PAS for OE WebHandlers
Irfan Pasha Syed, Progress Software
Starting from OpenEdge 11.6, Progress have enabled support for WEB Transport. In-addition to running the older Webspeed code in a Multi-session Agent, users can also develop applications in a new Object model called OpenHTTP which provides support for all the recommended HTTP Verbs which was missing in WebSpeed. In this Workshop, we will show you how to develop WebHandlers in PAS for OE, enabling security for Web Applications and then using Stylish UI like KendoUI + AngularJS as a front end for the ABL Applications. To make this workshop fun, we will be playing with all these new stuff to develop a Human Resource application called as HRWeb.
- 781: Implementing Horizontal Table Partitioning
Richard Shulman, Progress Software Corporation
Horizontal Table Partitioning is a feature in OpenEdge 11 that can significantly increase performance. Come to this workshop and learn what it is all about. You will take a normal database and migrate it during the workshop to one that utilizes Horizontal Table Partitioning.
You will learn the method to determine what tables are most likely to benefit from table partitioning then learn how to implement and test the effectiveness of the change(s).
The nice part about this feature is that the application does not require changes in order to use it, it is done on the backend. As a result of this, it is an option for companies that have a lot of data and want to get a performance gain without significant re-engineering.
- 876: 4GL Code Performance Workshop
Paul Koufalis and Peter Judge, White Star Software and Progress Software
Is your idea of code performance QA searching for WHOLE-INDEX in a compile-xref? If yes, sign up for this workshop RIGHT NOW. Sign up twice. This workshop will give you hands-on experience with a whole universe of tools available to help diagnose and correct performance problems with your 4GL code.
Lab 1: Using VSTs (15 + 20 min)
- _UserTableStat + _UserIndexStat
Lab 2: LOG-MANAGER QryInfo (15 + 20 min)
Lab 3: C/S (15 + 30 min)
- Effect of Mm, prefetch*
- If possible, localhost C/S versus real C/S
Lab 4: zqil (10 + 10 min)
- See output in db.lg file
Lab 5: Network effects
- ABL code / caching
Data size / volume
Lab 6: unnecessary work
- Passing deep copies without reason
- No code > some code
- Error handling (use new)
- Reinventing wheels (or, let the c-code in the AVM do work for you)
Lab 7: Profiler
- 940: Hands on Business Rules
David Atkins PhD, Progress
This hands-on workshop is for both newbies and more experienced 'Business Rulers'. Corticon newcomers will be stepped through the basic process of modeling simple rule logic, deploying those rules as decision services and then utilizing that externalized logic from ABL code. For those with some past Corticon experience the workshop also includes numerous advanced optional exercises that showcase some of Corticon's latest and greatest features. All in an interactive environment that provides ample time for brainstorming of ideas and use cases as well as answering questions...
- 999: Responsive Application Design with Star*Nova
PSC - TBD, Progress Software
This workshop will use the productivity features of Star Nova to build a responsive web application to modernize a prototypical module of a System of Record desktop application. You will be led through the development of the Business Entities in ABL, defining the service interface for the data sources using a data service catalog. We will deploy the ABL code to a Progress Application server for OpenEdge. On the client side, we will use the Visual Designer to generate our web application from the data service catalog definitions with full CRUD capabilities. Finally we will demo the application running with live data.
Progress and Customers,
Join senior members of the Progress OpenEdge Database Engineering and Deployment Products teams in an informal discussions that is always lively. Come to this session to discuss Progress' current product plans, provide input on feature enhancements that you would like implemented, and help set the priority of when new features are needed. Tell us what you like and don't like. This session covers everything related to the OpenEdge database, platforms, installation and the various deployment products that you need to roll out an application!
Progress and Customers,
Join senior members of the Progress OpenEdge product group in an informal discussions that might get lively. Come to this session to discuss Progress' current product plans, provide input on feature enhancements that you would like implemented, and help set the priority of when new features are needed. Tell us what you like and don't like. This session covers everything about the 4GL, Progress Developer Studio, Application Servers and so forth.
Paul Connaughten/ Mei Swank,
Tech support would like to take the opportunity to introduce our knowledgebase. Progress customers have been taking advantages of our KB for long time, however, they may or may not aware of the best way to search or utilize the knowledge, also they might not be aware that we are listening to any feedbacks to our portal so we could improve our practice.
We want to use this session to establish the beginning of a communication channel so we could work together towards improving the knowledge sharing experience and better help our customers
- 236: Integrating & Troubleshooting SSL/TLS Connections with Various OpenEdge Clients and Servers
Arun Kumar Mohapatra, Mike Jacobs, Progress
Security is the area that makes software administrators most anxious. In this session we will:
- Introduce SSL/TLS communication in OpenEdge
- Review recent features that make OpenEdge more secure
- Explore what we have done to mitigate recent vulnerabilities like POODLE
- Explore support for SHA2 in OpenEdge
- Investigate various issues that can occur in production
- Learn from use-cases that we have gathered from customers and Tech Support queries
- Watch a demonstration of a failing scenario and see the fix using SSL tools
After this session you will find yourself comfortable in analyzing and debugging failure scenarios using the SSL logs. And as you walk out of the room you will feel a little less nervous about security, or should we say, a little more secure!
- 482: OpenEdge and Telerik Analytics
Bill Wood, Progress Software
- 580: Integration with organizational and personal workflow Case study of a mature application
Arthur Fink, Arthur FInk Consulting
Successful systems need more than modern technical integration between components. They also need to establish functional integration that mirrors workflow, or that creates new and more successful work patterns.
MessagePro began as a system that combines a hospital telephone switchboard, patient and staff databases, and a coverage tracking system, with connections to various messaging and paging applications. Incoming phone calls for medical staff and patients are answered by TAPI or SIP under Progress control. Integration with patient data via HL7 lets operators identify patients, including those that cannot currently receive calls or messages. The Progress database manages detailing tracking of staff covering for each other, or just unavailable for certain time periods. Messages are sent via other connected systems, with provision for notification when messages are not delivered, or are not attended to promptly. Most of the transaction functionality can be accessed via Webspeed from nursing stations throughout a hospital. The system includes our own replication tools, because major hospitals require 24 x 7 operation, and must be able to continue working in disaster environments, and when one of several partner hospital is disabled.
Rather than seek out just the latest and fanciest technology, we took a practical engineering approach to system design, with primary emphasis on the usability and integrity of the system as staff work to keep patients and callers, and doctors and other medical team members in touch with up to the minute accountability.
- 657: Business Applications of the Future - Top 5 Technology Trends
Sunil Belgaonkar, Progress Software
In this presentation, we will introduce and discuss upcoming technology trends in the business applications market including omni-channel user experience, Internet of Things (IoT), in-memory databases, Hybrid Transactional/Analytical Processing (HTAP), Micro and Mini services, Docker, and more. Anyone interested in a quick overview of the major technology trends for building the best business applications to meet the future market requirements should attend this session. This session will also provide an opportunity for you to get involved and provide input/influence into Progress's direction on these topics.
- 791: Node.js and OpenEdge - From the Beginning
Robert Prediger, web4biz Consulting
Node.js is the rising star in the web world. HTML5, mobile apps, web sockets, there are a lot of things changing. Meanwhile a web user interface is able to do the same job than a native one. A reason to throw your Progress applications away and switch? No it's not. But it would be perfect if we could combine these with Progress techniques.
In this session we will go in a few Node.js modules, showing different methods to communicate with OpenEdge.
We will show simple applications in Node.js, working with a Progress backend.
- 819: How We Did It: A Review of OE, Systems and PCI for a Mid-Size Catalog Retailer
Tim Alten, AmeriMark Direct LLC
This session will review the design and architecture of systems supporting a PCI compliant mid-size catalog retailer with multi-tier, multi-client accesses including Ecommerce. We'll look in detail at system and database setup on a core AIX host with 3 types of flash storage. We'll review how critical data was isolated and secured to protect customer information and aid in PCI compliance long before TDE. We'll review how various clients access data and how the overall design aids security and performance. A variety of statistics and performance metrics will be included.
- 901: Securing Legacy Applications: Is it worth the effort?
Michael Solomon, Solomon Consulting Inc.
You have a completed legacy application and are told to make sure it is secure. How do you find security problems? And what if you find that it isn't very secure? Can you add security "after the fact?" Or will it be more effort than it's worth? In this session we'll talk about identifying threats in existing software, and how to mitigate those threats in the most effective ways possible. You'll learn about mitigating threats using both development modifications and operational controls, and how to determine the best approach.
- 906: Better than thinking like a hacker: Threat Modeling - A Practical way to develop Secure Applications
Michael Solomon, Solomon Consulting Inc.
Microsoft learned that the best way to develop secure applications is to find and fix security issues before they hurt you (or your customers.) They use threat modeling throughout the software development process. You can leverage what Microsoft (and many other organizations) learned by learning how to threat model. It can be fun, too. In fact, in this session we'll introduce threat modeling concepts as a game that you can play and learn to find (and fix) more security issues before your customers receive dangerous code.
- 911: So you've had a disaster. Now what?
Michael Solomon, Solomon Consulting Inc.
Your organization has encountered a disaster. Your primary database server is toast. Now what? Do you have a plan? Do you know how to follow it? How long will it take before you can continue with your business? Are your backups enough? In this session we'll talk about more than just backups and recovery plans. We'll cover the reality of rebuilding a business from ashes. Are you ready? You should be!
- 955: Progress System Tables
Dan Foreman, Progress
Virtual System Tables offer a very flexible and powerful way of monitoring Progress databases activity, record locking, user I/O, and more either locally or remotely. Unfortunately the lack of adequate documentation makes it difficult to do serious work with VSTs. This session covers what you won't find in the Progress documentation such as performance issues with VSTs, undocumented VST characteristics, the VST Schema, and how VSTs work. There are other tables in the Progress Database that are not virtual and serve a variety of functions such as the MetaSchema, Query Optimizer, SQL permissions, and much more. This session will also give an overview of these tables and show how they can be useful to developers and database administrators.
- 994: OE Roadmap
Brian Bowman & Rob Straight, Progress Software
Interested in what new features are being investigated by the OpenEdge team for possible implementation over the next 2 years? Attend this session to see what the future holds!
- 1017: What is My Application Doing? Monitoring with OE BPM
Jawahar Surapaneni, Satyam Dhavala, PSC
Would you like to see into your application and be able to understand how you can monitor your application with OE Business Process Management (BPM)? This session will show you how you can use OE BPM to monitor your existing application and start the process of modernization from a more intelligent spot. This is a shorter discussion and demonstration of the workshop that will run on Sunday.
- 1201: DBAppraise
Tom Bascom, Adam Backman, Paul Koufalis, Nectar Daloglou, White Star Software
- 1202: Can Sexy be Easy: A Top-Notch UX on a Progress App in 14 Minutes
Sean Devlin, Servoy
Build and deploy a top-notch UX on top of a Progress app in 14 minutes.
Followed by a journey from where you are now to a Cloud-based, HTML5 business app:
Picking your front-end Kendo UI, Twitter Bootstrap, Angular, Google Material design, html5 and beyond.
Reusing your ABL: JSDO, SQL, REST, API's how to pick.
Cloud considerations: implementing multi-tenancy, delivering customizations and one single version of the truth.
- 1205: Statusbin: Mobile Status Reporting Using Simple Text Files
Robert Bucciferro, ERP Consulting
Developing mobile applications is not easy. It's even harder when you don't know how. The learning curve is steep and who's got the time? But you.d really like to get reports in the hands of your mobile users. Statusbin is a new mobile reporting platform that provides a way. Developers can use their existing skill set to create and deliver engaging and flexible mobile reports. Reports begin life as ordinary text files which are easy to create using Progress ABL. Learn how the whole process works. Want a preview? Download Statusbin from the App Store and view the samples.
- 1210: Building Frameworks That WORK
Mike McMillan, Intui-Tech
Intui-Tech established in 2006, has been servicing partners in numerous industries, as an important component of their daily operational needs. Businesses such as finance, manufacturing, transportation, retail and wholesale have all depended on Intui-Tech's expertise and commitment to guide client's adoption of frameworks saving development teams' valuable resource hours.
Anticipating future technologies, in 2007 Intui-Tech began developing a backend framework that would support any client's technology needs using one single XML/JSON API to expose all business functionality with ease while supporting all client types. Intui-Tech's complimentary framework for ADM2 and GUI for .NET increases productivity tenfold. Developers produce faster and easier than any other offerings available today.
Recently, Intui-Tech is seeing the benefits of the initial backend framework with it being used once again, to create a robust browser-based framework. Several years of Intui-Tech's R&D has illuminated other technologies based on their limitations. This new framework is being developed on the Telerik platform.
- 1212: Progress Managed Database Services
Mike Furgal, Progress
See what it is like to continuously manage 1,800 databases. This sessions will discuss the technologies that are involved to accomplish this task, how work gets done, what are common problems seen, and who the team is that does this incredible feat. Learn how customers have been able to focus on their business instead of the operational environment and how this could fit in at your company.
- 1215: Reporting/BI If You Can Only Have One Tool
Mike Main, Cyberscience Corporation
See how real Progress users are applying Business Intelligence to increase profits, lower costs, find new opportunities, streamline processes and gain an edge on the competition. Cyberquery, from Progress partner Cyberscience, is in use with thousands of Progress databases worldwide. It is also best-of-breed for consolidated reporting and Big Data too. Over 35 years of experience are behind this solution to empower IT users, business users and senior management to get the information they need. Ad hoc reports, production reports, analytics, charts, graphs, KPI.s, data visualization and dashboards. -- They are all part of what Cyberquery delivers. Attend this session and discuss real reporting from actual Progress users. See firsthand what high performance reporting/BI can do for you.
- 1220: Application modernization using the SmartComponent Library
Mike Fechner, Consultingwerk
The SmartComponent Library framework is known for being the perfect framework for implementing new functionality based on the Progress products focusing on developer productivity, choice of user interfaces and UX. The framework also provides a large number of features that facilitate the modernization or migration of existing OpenEdge applications. In this session you will receive an overview of the SmartComponent Library framework and its productivityboosting features, see some of the newly added features such as mobile and web user interfaces based on Telerik's products and learn about some of our modernization features.
- 1225: Roundtable Info Exchange
Roundtable and Customers, Roundtable Software
Calling all Roundtable TSMS enthusiasts - customers, prospects, fans, and even cynics! This is the time to meet, exchange ideas, and provide feedback for what's new for Roundtable TSMS. (If you are not sure what that is, we will show you.) This is also the time to learn how others are leveraging the solution to the fullest to manage the entire software development lifecycle. You understand that application development goes far beyond source code control.Use this opportunity to meet others who share your vision!
- 1227: Aurora Analytics
James Stein, CornerStar
CornerStar's Aurora Analytics is a full-featured Reporting Solution for the Progress community. The simple yet powerful design uses Progress ABL as the query language allowing for native connections to Progress databases. At the same time the .net front end creates a seamless user experience incorporating the richness of a Windows front end. The .net client does not require any software installation only access to the appropriate application server. Once a data source is activated the end users can build, customize and save their personal views with no intervention from IT. It truly begins to approach the reporting ideal of self-service reporting where users can create the reports they need without negatively impacting the system and IT can deliver a solution that makes them look like superstars.
- 655: Pro2SQL: BI and Reporting Solution
Greg White, Progress Software
Your critical data resides within the OpenEdge database. Currently, many powerful BI/Reporting tools do not easily interact with the OpenEdge database. Pro2SQL eliminates this issue by allowing replication and transformation of Progress data to SQL Server or Oracle. By utilizing Pro2, powerful tools that previously were out of reach become viable immediately. In this session we will focus on OpenEdge Pro2SQL. With over 200 customers replicating 600 Progress databases into SQL, this tool is tried and true. Come learn more about this exciting technology and how you can leverage it in your business.