TL;DR; If you are a boss, try out APEX and ORDS today. If you already have an Oracle database, it costs you nothing extra and the upsides for you and your business are tremendous.
Highly Scalable (and easy to understand) Architecture
Stateless – Much of the scalability of APEX comes from its stateless nature. The API calls to the Oracle APEX engine use the standard Oracle database connection pool. This means that once an API call is processed and the response is sent back to the browser, the connection is returned to the database connection pool and can be used by any other request. The database sessions are only active when performing a request, otherwise, the they are inactive and do not consume any database resources. This allows APEX to handle tens of thousands of users simultaneously.
Stability & Innovation
Hold on a minute, that doesn’t sound very stable. What I haven’t mentioned is that the APEX development team is world famous for providing upgrades that do not break your existing Apps. One of the ways they achieve this is by allowing apps to run in previous versions with ‘Compatibility Mode’. This means that in most cases, you can do the upgrade and then switch on new functionality in individual apps, as and when you need it. There are stories every month of APEX users who have upgraded from APEX 3 (released in 2007) to the current version without anything breaking. Can you imagine doing that with any other development framework?
If you had experience of APEX from version 4 (or before), boy are you in for a treat. Applications built with APEX look as good as any other framework and are quite frankly a joy to use. We are long past the dystopian days of automaton workers using systems they are forced to use. When people use Enterprise systems these days they expect more. While you may feel like dark mode is a fad, Apple is about to release it across all of the Operating Systems. Believe me, your Enterprise users will be using dark mode soon enough. Wouldn’t it be great if your development platform could make dark mode happen at the flick of a switch? APEX has your back. Dark mode is already available in APEX Builder and will be coming soon as an end user theme style. It goes much further than that too. APEX’s Universal Theme delivers UI components that would otherwise consume hundreds of hours of custom development. For a peak at what is available, check out the Universal Theme demo App https://apex.oracle.com/ut
Finally, with accessibility concerns finally being taken seriously, it is good to know that the APEX team has baked accessibility checks right into the product. They even have accessibility tested themes available. Check out this video for more details on Accessibility in APEX.
Oracle REST Data Services (ORDS) has two roles in an APEX world. One is to service APEX pages to end users and the other is to host REST based web services. The ability to host REST based web services based on SQL and PL/SQL is extremely powerful. It allows you to provide external systems secure access to the data in your Oracle database. This can be useful for integrations and even for hosting web services to be consumed by native mobile applications. See our post on ORDS for details.
APEX comes with a number of features to facilitate consumption of any REST based web services. For example, Web Source Modules provide a wizard-based approach to configuring components that allow you to create reports and forms directly on web services. This extends the reach of APEX outside the database and prevents un-necessary syncing of data to and from other systems.
Authentication can be a complex proposition. If you store usernames and passwords yourself you really need to know what you are doing. The last thing you want is for your user account data to be compromised. It is generally far safer to outsource this task to a trustworthy identity provider such as Okta or Auth0. You could also outsource this task to platforms your users already use such as Office 365, Google and even Facebook.
By providing the ability to create custom authentication schemes, APEX has always provided flexibility in authenticating users. Custom authentication schemes allow you to create code that could use just about anything to authenticate a user. Since APEX Social Sign-In was introduced in APEX 18.1, APEX authentication has reached a whole new level. You can now setup declarative authorization schemes for OAuth-capable identity providers and APEX handles calling the necessary web services to authenticate your user. Taking Okta for example. Okta can now be your source of truth for handling all authentication in your company. All of your other systems (Email, ERP and your APEX Apps) can then use Okta to authenticate your users. See our post on APEX Social Sign-In for more details.
Features and Utilities
To name a few:
- Out of the Box Authorization
- Multi-Language and globalization features
- Sending Emails
- Email Templates
- Extensible plugin framework with hundreds of available plugins
- Building and parsing JSON
- Excel and CSV parsing
- Zipping and Unzipping files
- JWT Handling
- String manipulation utilities
- and many more…
The benefit of having these utilities bundled with APEX are that fixes and enhancements are handled by Oracle and released with each new version of APEX. In contrast, having these types of utilities spread out amongst a number of providers means you get fixes when they feel like. It also means that as those providers drop by the wayside you are left having to merge new libraries into your applications.
Equally at Home On-Premise and in the Cloud
The APEX architecture lends itself well to running in the cloud and there are numerous options for hosting APEX in the cloud.
PaaS - There are turn key PaaS solutions (e.g. Exadata Express from Oracle) that host the entire APEX and ORDS architecture at a very reasonable price. All you need is a credit card and a browser to get started. See our post on using APEX to extend Oracle ERP Cloud.
IaaS - You can also install APEX and ORDS yourself on infrastructure from just about any cloud provider. This allows you complete flexibility to size the environment as you wish, but you will need to perform much of the maintenance (backups, upgrades etc.) yourself.
Low Code and High Productivity
APEX has always been known for allowing developers to build useful, scalable applications in a very short period of time. Over the past year and a half, more and more features have been added to establish APEX as a top contender in the low code pace. These features include wizard-based development of web service integrations and pre-built components that can be added to existing applications or used to build brand new applications. APEX is already at the stage where you can build fully functional applications starting from the upload of an Excel spreadsheet. These kinds of features are allowing APEX to break out of the IT department and into the business. It is here where (handled the right way), citizen developers can become productive with APEX with just a small amount of oversight from IT.
Leverage Existing Talent
No Cost Option of the Oracle Database
I purposely left this item to last because in my opinion, APEX and ORDS stand on their own against any enterprise-ready development platform. Having said that, if you own an Oracle database license you really should be using APEX and ORDS because it isn’t going to cost you a penny extra. In addition to the no extra cost for the software, you will also need very little additional hardware. A VM with 4GB of RAM and 15GB disk is more than enough to host ORDS, which is the only other component you need.
Jon Dixon Co-Founder JMJ Cloud.