Sunday 13 January 2019

An Interview With Joel R. Kallman

As an Apex developer you won't go very far without hearing the name Joel R. Kallman. Joel is the Oracle's Director of Software Development for Application Express. He is a long time contributor and friend of the Apex community and has participated in many conferences and workshops. Best of all, he is always willing to assist developer as a passionate evangelist of Apex.
I recently had the opportunity to pose a number of questions to Joeal and wanted to share his responses with you. Joel, thank you so much for taking the time for this and for sharing some key information.

Q :         For those who may not know, what is your role as it relates to Oracle APEX?

A:          Good question.  APEX is something that Michael Hichwa (Vice President, Database Tools) and I started back in 1999.  Mike is the inventive and creative one, and I just happened to be employee #1.  He architected the first framework, and I concurrently wrote the first application in this framework, proving and pushing the framework.  Starting from a blank slate, in 3 months time, we developed and deployed a Web Calendar application for all of Oracle (used by 25K people, at the time).  This framework became HTML DB and then ultimately Application Express (APEX), and is used by thousands of customers worldwide.

Today, I am responsible for both the product development and product management of Oracle APEX.  I’m blessed to have a very hard-working, focused, experienced and professional team, and all of us contribute to Oracle APEX.

Q:          What you consider some of the more exciting new features in Apex release 18.1?

A:          A lot of this is presented in our blog post announcement:  https://blogs.oracle.com/apex/announcing-oracle-apex-181.  Probably the two biggest features are Application Features and the enhanced REST support.

For many years, our team has developed and delivered productivity applications as part of Oracle APEX.  Some examples include Group Calendar, Project Tracking, Survey Builder, etc.  In the development of this “fleet” of applications, we found
 ourselves desiring the same features over and and over again – they were common features that someone would want in any APEX application.  So we extended the concept of what you could create from the APEX application builder, and elevated it to higher-level features to be added to your application.  It can consist of multiple pages and components which are employee in an app.  Some good examples include user access control, activity monitoring, user-selectable UI (theme), and user feedback.  Just by checking a box during application creation time, you can include very high-quality, polished application features which we use ourselves.  These features can also be added to existing applications.

APEX 18 is also a dramatic leap forward in the support for remote data sources over REST.  APEX has always had support for REST Web services, but in many cases, the support was programmatic.  In APEX 18, there is now a completely declarative interface to remote data sources over REST.  You can create Web Source Modules (a new shared component type) in APEX 18, and Web Source Modules can be the data source for reports, charts and calendars.  Anyone can use this functionality today on the free site https://apex.oracle.com.  I wrote a recent Oracle Magazine article which includes an interesting (and fun!) step-by-step tutorial.  https://blogs.oracle.com/oraclemagazine/beyond-the-database.

APEX 18 also “unifies” the REST Services with Oracle REST Data Services (ORDS).  There used to be a separate repository for the REST Services that you could create with APEX.  ORDS, which is the next generation of REST Services for the database, had a separate repository.  In APEX 18, these are now unified, and the REST Services that you can create in the REST Workshop of APEX 18 can also be edited via SQL Developer or even in the ORDS-supplied PL/SQL API

Q:          What has been the feedback from the Apex community on release 18.1?

A:          There has been tremendous uptake of APEX 18 by our customers.  It has proven very reliable and stable, and there have been very few upgrade issues from prior versions of APEX.  And in many cases, the applications themselves are faster too.

Q:          Release 18.2 followed quickly after 18.1. Is there anything key to release 18.2 that we ought to know about?

A:          The biggest thing you should take note of is the “cadence” we wish to achieve with APEX releases.  Gone are the days of these very large, monolithic releases of APEX.  Instead, we are opting for a release of APEX every 6 months.  There are a number of more modest features that went into APEX 18.2, but it gets us and our customers in the process of this frequent release process.  To accommodate this, we also made great strides in APEX 18.2 with the near-zero downtime APEX upgrades.

Q:          Some people were running applications in Apex 5.1 and using the compatibility mode to run applications created in older Apex versions. Will these still  work after upgrading?

A:          We still support the same level of compatibility modes as we have done in the past.  However, ideally, people should not rely upon these forever.  The compatibility mode is an opportunity for you to have your applications run in a legacy mode, but there is a very good reason why we introduced a change in behaviour.  With this said, there are many customers who directly upgraded from APEX 4.2 and APEX 5.0 to APEX 18 with literally zero issues.

Q:          I know  that John Snyders has upgraded his IG Cookbook, but can you highlight some of the improvements and new features?

A:          There is new “Copy Don” support, which can be used to copy data from one row to other rows.  There is integrated “Copy to Clipboard” support for a row or cell range selection.  There are new Dynamic Action events which directly support Interactive Grid, namely Mode

Q:        Are JET Charts still the same in this release, or are there new features theras well?

A:          The version of Oracle JET which is included with APEX is updated with every release of APEX.  This allows us to include new data visualizations in APEX, as well as remain on a supported JET release.  In APEX 18, we upgraded to JET 4.2.  And that had the additional effect of upgrading the version of jQuery and jQuery UI included with APEX 18 (jQuery 2.2.3 and jQuery UI 1.10.4).  All native functionality of APEX has been upgraded to work with these newer libraries.
In terms of new charts in APEX 18, we have introduced Gantt Charts, Pyramid and Box Plot.

Q:         Have customers encountered any issues with upgrading that might help us to know?

A:          Nothing really significant.  We always keep the Known Issues of a release up to date, as customers report issues which we believe have broad relevance to the community.  https://www.oracle.com/technetwork/developer-tools/apex/downloads/apex181-known-issues-4478237.html

Q:         Why was there such a dramatic lead in release numbering from Apex 5 to Apex 18?

A:          This was solely to be consistent with the rest of the product naming and numbering with all other products & services from Oracle.  Oracle provides a vast number of service offerings on the Oracle Cloud, and instead of having large, lengthy release cycles, there are releases every quarter, and in many cases, numerous times in a quarter.  Oracle switched to this yearly product numbering for all Oracle Cloud Services.  Other products available both on-premises and on cloud went to this same numbering (e.g., Oracle Database, Oracle REST Data Services, SQL Developer).  We changed the release numbering of APEX to be consistent with this.

Q:         The Oracle Application Express Statement of Direction indicates that there will no longer be patch set releases such as 5.1.4. Does this mean that we will have to wait for the next major release to see issues resolved that developers have identified?

A:          Not particularly.  Between cycles, we will release a cumulative “Patch Set Exception bundle” on My Oracle Support.  We did this for APEX 18.1 and are doing so for APEX 18.2.  We won’t include every bug fix in the patch set bundle, but we will include those which we believe impact a large number of customers.  The upside to this frequent release cycle is you may see new features sooner.  In the past, we could never alter translations or UI in a patch set.  But we can do this in full releases.  So this will ultimately result in us being able to deliver highly sought after functionality sooner.

Q:         So without playing all of your cards, what lies ahead for Apex?

A:          The APEX statement of direction for APEX 19.1 is available at https://apex.oracle.com/sod.  In general, though, things have never looked brighter for the APEX platform or community.

By the way, if you have a moment, you may wish to listen to the recent APEX podcast with Executive Vice President Andy Mendelsohn (this podcast is recorded by the community, and not us).   http://apex.press.


Again, my thanks to Joel.

No comments:

Post a Comment