Oracle APEX

Application Express

Official link to my certification on Oracle University Oracle APEX Cloud Developer Certified Professional (OCI)

Check out my Certifications and my Portfolio

An elegant Data / REST Flow Diagram I created

PowerBuilder Compilers – Deployment Breakdown Structure

An Executive Dashboard in Power BI

Check out my elegant Screenshots

My favorite Apps & Games

ORACLE APEX

(Some of this info is not found anywhere – I figured it out myself from using APEX, extensively, over the years)

I was certified in Oracle Forms & Reports (Developer 2000 / D2K) back in 1996 (deprecated now) that has these limitations. D2K –


A COMPLETE PLATFORM, 100% BROWSER-BASED!!

Oracle APEX is the MOST-USED, enterprise, Low-Code,  100% Browser-based , FREE, limitless (NO limits on the number of apps, developers or users), COMPLETE, 4GL, RAD Platform with powerful components, a built-in SQL Workshop to manage database objects , RESTful APIs, REST Synchronization, Automations, Globalization and more... APEX is a  modernized version  of Forms & Reports that eliminates the limitations of Forms & Reports with declarative programming, storing the application logic in APEX schema tables as metadata and needs nothing more than a  BROWSER  to develop, maintain and run apps (NO need to install any client software or browser plugins) – from anywhere, anytime – even on a tablet or smartphone. APEX Low-Code development platform enables us to build HIGH-QUALITY, mission-critical, scalable, secure, stunning, enterprise apps with world-class features 20x faster  using 100x less code  – that can be deployed anywhere.

As per a study by Pique (a third-party), APEX is 38x faster in development using 20x less code compared to ReactJS.
44 minutes -vs- 3.5 days (working 8 hours a day) –

Source – blogs.oracle.com/cloud-infrastructure/post/radically-faster-and-simpler-application-development-using-the-new-apex-service

Study – oracle.com/a/ocom/docs/pique-solutions-apex-vs-reactjs-study.pdf


A typical APEX application source-code comprises of –


Click on the images below for more info...

NO SERVER-SIDE LANGUAGE!!

APEX does  NOT have a server-side language overhead  such as Java, C#, Python, PHP, etc. and hence, NO files to compile or deploy – just COPY metadata from one environment into another to deploy the apps (app/metadata sizes are really, really TINY). Because there are NO files to compile or deploy, app can be run immediately to see the changes. This facilitates quick back-n-forth changes, iterative development and execution with instant gratification. We can develop and make changes to APEX apps with the user sitting right next to us and telling us their requirements, literally. Because of no server-side language, ALL the processing occurs in the database and pages are served blazing fast with just one Request and one ResponseWITHOUT jumping through servers and hoops – with ZERO latency and BLAZING performance!


NO NEED TO LEARN ANYTHING NEW!!
POWERFUL COMPONENTS!

APEX uses just SQL and PL/SQL on the server side –  NO need to learn anything new  – we can  LEVERAGE  our existing PL/SQL knowledge to create full-blown, stunning apps using powerful, built-in components – data/streaming dashboards, charts, reports, data-entry forms, RESTful APIs and more and also consume RESTful APIs. Users can derive variations of reports from existing reports (after doing filter, sort, group, format, color-code values based on data, re-arrange columns, show/hide columns, pivot, chart, etc.) and re-Save them – at RUNTIME – as NEW Public or Private reports/charts that persist subsequent updates (it is just metadata) which are all a  HUGE savings  of time and money – in addition to the  HUGE savings  from Low-Code! In an upcoming release, users will be able to change the Column-Labels, Column-level granular Help and more at RUNTIME that would persist subsequent deployments. Creating a secure RESTful API to fetch data can be as simple as a SINGLE line of SQL statement! That's all – nothing more.


LASER-FOCUS ON BUSINESS LOGIC!!

As Developers, we want to  LASER-FOCUS  on business logic alone – including automatically connecting to the dB – without having to learn anything new, perform any repetitive, low-value or mundane tasks – and APEX provides ALL of that, precisely! APEX supports Server-side and Client-side Conditions to configure pages, menus, items, columns and more at granular level. APEX has 2,000+ Pages and 8,000+ Settings which it enforces on the instance, workspace, application, pages, menus, components, items, columns, logic, computations, validations, processes, branching, AJAX Callbacks, security, session, auth and more implicitly, which are humanly impossible to enforce in Code-based applications, precisely.

APEX is the SHORTCUT to doing Full-Stack Web Developmentwithout learning Web development 😊


AUTOMATIC CODE GENERATION, HUGE SAVINGS!!

APEX  auto-generates  all the HTML, CSS, JavaScript, AJAX, security, navigation menus, login dialog, administration... (a  SUBSTANTIAL   amount of work) and automagically manages granular security at the application/page/action/column/item/button-levels, session state, concurrency, data persistence, page/column-level help, validations, responsive design, navigation and more so we can  LASER-FOCUS  on business logic using just the age old SQL and PL/SQL which will NEVER get disrupted or replaced by other languages, libraries or frameworks – unlike Code-based platforms, very often (which could introduce middle-tier vulnerabilities like hackers, viruses and more). Due to responsive design, NO need to maintain separate Web and Mobile teams. APEX apps can be installed as Progressive Web Apps (PWA) on any device (computers, tablets and smartphones) with many advantages.


AUTOMATIC & CONTINUOUS MODERNIZATION!!

APEX generates MOST modern code for very  high-quality UI  and keeps the apps CONTEMPORARY, up-to-date and  FUTURE-PROOF  with continuous, automatic, effortless and seamless modernization with updates from the APEX Team so they  NEVER  become outdated – unlike Code-based platforms, inevitably because they are in a constant state of FLUX due to market disruptions (newer technologies, libraries and frameworks replacing the existing ones). In Code-based technologies, most clients cannot afford to update/modernize the outdated UI as it involves investing a considerable amount of time and money to hire new talent, update the app, re-test, support and more WITHOUT reaping any extra functionality gains from the UI Modernization Initiative and so, their apps remain OUTDATED for over 20 years. APEX does NOT have this pervasive issue of getting the UI outdated - EVER, as the UI gets modernized by the APEX Team and we get the updates continuously, seamlessly and FREELY – by just upgrading the framework. On other Low-Code and High Code-based platforms, we need a paid, dedicated UI/UX Designer to implement high-quality. On Oracle APEX, high-quality is implemented by the Oracle APEX Team for us for FREE!

It goes without saying that APEX web apps created in 2005 are still running now, we can import an old APEX app from 2005 into the latest version of APEX and it works fine (just as it did 20 years ago) whereas Code-based web apps don't survive past a few years without breaking and needing updates to the code resulting in unplanned costs (even a update to browser or server-side language could BREAK a Code-based web app). Oracle APEX Team is renowned for their competence in that they did not have to rewrite any of APEX's code ever since it was released over 2 decades ago.


FROM RETRO TO MODERN UI (CONTINUOUS & AUTOMATIC MODERNIZATION)

Retro looks of APEX apps and IDE back from 2006 (a great UI at that time 😊). Notice how the APEX Team modernized the APEX IDE and also our APEX Apps, over time... automatically! The magic of Oracle APEX!

The above Login dialogues is my custom page with background slideshow, transparency, FX...

For more of my Login background slideshow animations apex.oracle.com/pls/apex/r/apexpert/portfolio

I've coded 600+ lines of custom CSS and JavaScript code on the following pages to make them look more beautiful and interactive... with additional buttons, toolbar, tooltips, info in the footer, themes and such.

Check out their demos on my Portfolio page.

LOW-CODE vs CODE-BASED TECHNOLOGIES

CODE-BASED: On large, multi-year modernization projects, the technologies/libraries/frameworks chosen will be loooong  DEAD  (for a "few" times) even before the project is finished as the chosen frameworks get replaced by frequent market disruptions. For reference, there are more than –


and they keep coming, Coming and COMING... every few months, disrupting the existing ones. For instance, jQuery is the MOST popular and MOST-used JavaScript library in the world on millions of websites but now losing its popularity, Angular was popular in the past, React was popular until recently and now, Vue.js is trending – only to be replaced by some other disrupting framework down the road – resulting in constantly hiring new developers, learning, implementing, updating, testing and supporting newer technologies, endlessly, which is madness. Code-based Web technologies are an  OVERKILL , take much longer to develop/test/maintain and hence are very, very  EXPENSIVE !!

LOW-CODE: APEX is a Low-Code platform and a SMART Framework that does NOT have the issue of getting disrupted, replaced and outdated because it is developed and maintained by the APEX Team who chooses the RIGHT Technology Stack (libraries, frameworks, etc), evaluates and tests the chosen libraries/frameworks before giving us updates twice-a-year. For instance, APEX uses the most popular jQuery – but if/when jQuery becomes obsolete, the APEX Team will replace it with something better with seamless transition for developers and users who won't be affected and the apps won't be broken. The half-yearly updates released by APEX Team are also tested by millions of users, testers and developers from around the world. We get to  LEVERAGE  all of this FREE work from the APEX Team and others so our apps are up-to-date and never break.


2-TIER CLIENT/SERVER vs 3-TIER CLOUD ARCHITECTURE

Oracle APEX uses the SECURE 3-Tier CLOUD architecture.


INDUSTRY CERTIFICATIONS


AUTHENTICATION METHODS

APEX provides all the secure mainstream Authentication Methods and also Custom Authentication (for anything not covered out-of-the-box) – all of these are completely open and abstract definitions of how an app must authenticate/authorize and the auth definition can be switched anytime (e.g., dB, OAuth, LDAP, Azure AD, etc). OAuth and Single-Sign-On (SSO) for enhanced security are built-in. All auth mechanisms are built-in and need absolutely NO additional infrastructure from the clients. List of 10 built-in auth mechanisms in APEX –


ORACLE'S FREE OFFERINGS

In addition to the completely FREE APEX, Oracle offers FREE and ready-to-use workspaces (along with FREE Cloud databases) on the following services that anyone can sign up and start using APEX right away to develop apps – from anywhere, anytime – using nothing more than a Browser:


APEX uses ORDS (Oracle REST Data Services) (also FREE) (formerly: APEX Listener) (installed on a Tomcat server) – a bridge for secure HTTPS Access to Oracle Database for RESTful Services. ORDS can be containerized inside Docker, if needed.

On the Always Free Oracle Cloud service, the database is stopped if not used for 7 days (we can restart it with a button click). For both the above services, an email notification is sent to us about purging of our workspace if it is dormant and not used for 90 days – we can prevent removal of our Workspace by simply following the instructions (clicking a button, logging into the workspace or upgrading to Paid service).

For APEX on the OCI (Always Free or Paid), use ATP (Autonomous Transaction Processing) type dB if you want to connect to the dB using a client app like SQL Developer (APEX does have a built-in SQL Workshop module to manage all-things-dB and RESTful APIs using just a Browser). SQL Developer also has a built-in module to develop/manage RESTful APIs.

Oracle Corporation is very  GENEROUS  – they offer the above services (and many more) 100% FREE. They also offer Oracle XE database for 100% FREE (with up to 12 GB of data storage) to use even in commercial apps – embed or redistribute. There are many commercial apps built using APEX on Always Free Oracle Cloud account on OCI and also using the free Oracle XE database with APEX front-end or some other UI technology. For instance, we can build (and sell) commercial web apps for FREE, using –


More info comparing the above two services and how to upgrade to Paid service on OCI –

dgielis.blogspot.com/2021/04/which-one-to-pick-free-apex-service-vs.html


THE PROMISING FUTURE OF APEX!!

APEX was started in 1999 and went through some name changes – Flows, Marvel, HTML DB and later renamed to Application Express or APEX.

APEX's  slick  Page Designer and IDE were  built using APEX itself  – just as many support sites on Oracle.com are, such as –


which is a great testament to APEX's powerful features. As Larry Ellison fondly says, "We eat our own dog food!".


In other words, Oracle does USE their product (APEX) in their real applications, learn from the experience, improvise it and evolve it – it's not a vendor who just dishes out random software and hope that clients/users will like it.

The Page Designer is also a powerful SPA (single page app) which allows us to do many things by staying on the same page and without losing context (other great examples of SPA are APEX Report-with-Form dialog, APEX Master-Detail side-by-side with 3 or more regions, Gmail, etc.). In earlier versions, we needed to click Save for every change in the Page Designer before clicking on another region, component, item or node but now, we can make as many changes as we want, click anywhere on any components and save ALL the changes with just one click when we are ready. That's how powerful APEX Page Designer is now!

APEX comes with many powerful components with feature to create Plugins using PL/SQL, JavaScript, HTML and CSS or install any of the hundreds of existing plugins from apex.world (another support site developed using APEX) for custom functionality. In addition


APEX is used by many State and Federal government agencies and private organizations world-wide, such as –

 
And hence, APEX is  NOT  going anywhere! The completely FREE and limitless APEX alone is worth staying with Oracle dB.

Every other Low-Code platform costs $$$, dearly! And we don't know how long they would sustain in the market.

APEX is the ultimate SMART choice to modernize legacy apps and build new apps quickly and cost-effectively. For clients that use Oracle, there is absolutely NO reason not to use the completely FREE and limitless APEX which is a  COMPLETE platform  with a full spectrum of Web-development features that does everything – right out of the box. Anything else would be just re-inventing the wheel that Oracle invented for us already, decades ago. APEX can be installed anywhere Oracle runs and with any Oracle edition – cloud, on-premise, XE and used for FREE or subscribed to Oracle dB on Oracle Cloud Infrastructure (OCI) – the APEX part on Oracle Cloud still comes FREE with Oracle dB.

Oracle releases updates to APEX consistently, twice a year (versions YYYY.1 and YYYY.2). They update apex.oracle.com service first and after the changes are tested thoroughly by the APEX Team and users from around the world and all the reported issues are resolved, the version updates are pushed on to cloud.oracle.com, keeping the production apps on the OCI safe from breaking. We can defer and choose not auto-upgrade APEX for up to 90 days on OCI.


APEX RELEASE HISTORY (AN IMPRESSIVE TRACK-RECORD)

THE FUTURE OF DEVELOPMENT


(I have a lot more info to share about APEX, some of it not found anywhere, but this page would become lengthy)


NON-ORACLE CLIENTS

For clients that don't use Oracle, the best platform is JavaScript which is just a SINGLE language on both the server-side (Node.js) and front-end (some JavaScript library/framework such as React, Vue, etc.) no need to learn multiple languages BUT it still results in a server-side language OVERHEAD and a LOT of continuous learning/adopting of disrupting libraries/frameworks (that may get replaced a "few" times before a multi-year new/modernization project is over) and would not result in continuous/automatic UI modernization – like APEX does out of the box without any effort from our side as UI is taken care of by the APEX Team and without any server-side language OVERHEAD to learn or maintain (using just SQL and PL/SQL).

ORACLE APEX

Oracle APEX - Low Code

Low-Code

No server-side language (uses only PL/SQL).

No files to compile or deploy (only metadata).

Oracle APEX

Oracle APEX

Auto-generates modern HTML, CSS & JavaScript

Laser-Focus on just your BUSINESS LOGIC.

Oracle APEX - 100% Browser-based

100% Browser-based

Uses nothing more than a BROWSER for dev.

A complete RAD platform FREE and Limitless.

GETTING STARTED WITH ORACLE APEX & ORDS (listener)

UNIVERSAL THEME

A responsive, versatile, built-in and customizable user interface for APEX apps. It is designed uniquely for Oracle APEX to make it easy for developers to build beautiful, modern applications, at any scale, for any purpose, that work great on all devices.
apex.oracle.com/ut

REFERENCE https://apex.oracle.com/pls/apex/r/apex_pm/ut/reference

Cheers!

--
Shekar Reddy
PowerObject!
APEXpert!