Tag Archives: Oracle APEX

The Future of PL/SQL

A question that comes up very often when I advise individuals and organizations about how to use Oracle technology is “What is the future of PL/SQL?”.

The answer is that PL/SQL is not growing, but not going away either. Because it is used in the Oracle database, and the Oracle database is a fixture of enterprise systems world-wide, it will outlive you. High-performance batch processing has to happen close to the data, so PL/SQL will continue to rule in this area. But everything else we are doing in PL/SQL can be implemented in other layers, other tools, and other programming languages.

That’s why it has a yellow horizontal arrow on oratoolwatch.com and has had for a while.

The Market for PL/SQL Programmers

The value of a skill depends on the relationship between the number of people with the skill and the number of jobs requiring that skill. For PL/SQL, the amount of work is constant, but the number of people with PL/SQL skills is declining.

The Future of PLSQL

Right now, PL/SQL is not a highly paid skill, as the following yearly salary data (U.S.) from indeed.com shows.

PLSQL salary

However, PL/SQL programmers are leaving the profession – they become managers, change to a different technology, or retire – and new people are not joining (yet). When was the last time you saw a young PL/SQL programmer?

By 2020, the salary of PL/SQL programmers will have gone up as the scarcity sets in. By 2024, PL/SQL programming will have become a highly-paid specialty (like COBOL is today), and the salary increase will tempt new developers into the field.

What Does That Mean for Managers?

If you are an IT manager, you are likely to have enough PL/SQL programmers today. But it will become increasingly difficult to replace them. In poker terms, you have the choice of either calling or going all-in with PL/SQL.

If you call (stay in the game without raising), you should consider PL/SQL a specialized technology allowed in two places:

  • In existing applications already based on PL/SQL
  • In new applications for batch processing of database data

If you go all-in, you should use PL/SQL wherever feasible in order to maintain and expand the PL/SQL  competency of your team. PL/SQL can do integration, call web services, write files, and you can build user interfaces with PL/SQL and tools like Application Express (APEX).

What Does That Mean for Developers?

If you are an individual developer, this means:

  • If you don’t know PL/SQL, don’t bother learning it (yet)
  • If you do know PL/SQL, you don’t have to learn something else. But look for an organization that’s all-in on PLSQL.


Edit 2016-08-05: Please also read Steven Feuerstein’s response to this post.


UKOUG Tech 14 in Liverpool

I’ll be going to the UKOUG Tech 14 conference in Liverpool in December to give one of my favorite presentations: “APEX or ADF? From Requirements to Tool Choice”. I’m also leading the Development Tools roundtable, which is always lively at the UKOUG conference. If you want to discuss your options as a developer in the Oracle world, UKOUG Tech 14 is the place to be.

APEX or ADF? From Requirements to Tool Choice
APEX or ADF? From Requirements to Tool Choice


New publication for Oracle professionals

OTech Magazine Winter 2014If you are working with Oracle software as a developer, DBA or application server administrator, you should read the new OTech Magazine.

The Winter 2014 issue is almost a book: 136 pages of high-quality technology articles by some of the leading experts in their respective fields.  My contribution is the article “From Requirements to Tool Choice” about how to choose the right Oracle development tools (ADF, APEX, or Forms).

And did I mention it was free? Head over to OTech Magazine and feed your brain.

I am sailing…

Next week, I’m off for the OUGN Spring Conference that the Norwegian Oracle User Group arranges on board a cruise ship sailing from Oslo to Kiel and back. This event gathers the Oracle A-List, including Tom Kyte, Cary Millsap, Bryn Llewellyn, Mark Rittman, Markus Eisele and many others – it’s an honor to be part of such a lineup.

My presentations are:

  • Ten Secrets of Successful ADF Projects
  • APEX or ADF? From Requirements to Tool Choice

I’ve heard that there are still a few spaces available…

Oracle OpenWorld Submissions – The Full Monty

Here one day before deadline, I have entered almost my entire current catalog of presentations for consideration in the Oracle OpenWorld 2013 agenda. One new for this year: “Worst Oracle ADF Project Ever” 😉

If you would like me to speak at one of your events, the following are the presentations I currently have prepared – feel free to email me at sten@vesterli.com. If you don’t have budget for speaker travel and accommodation and plan to ask the Oracle ACE Program for support, note that you must ask me to give two presentations, and you can only have two ACE Directors at your event.

Worst Oracle Application Development Framework Project Ever
If it can go wrong, it will. This humorous presentation presents “horror stories” from various projects of misunderstandings, architectural blunders, coding errors and downright bad luck. With the knowledge from this presentation, you will never make the same mistakes and will have only successful Application Development Framework projects, on time and on budget.

What a Server Administrator Needs to Know About ADF
Developers have deployed an Oracle Application Development Framework (ADF) application onto the WebLogic server. It’s eating up database connections and performing horribly, and everybody is looking to you to tune it. This presentation will explain the structure of an ADF application, how it uses database connections, what you can do to tune it, and what you can tell the developers to change.

What Beginners Need to Know about ADF Performance
By default, Application Development Framework (ADF) applications usually perform well, due to the many best practices implemented in the framework. But in the few cases where you are not getting the performance you are looking for, you have dozens of tuning settings and parameters. This presentation will cover the tuning options available in Entity Objects, Entity Associations, View Objects, View Links and Application Modules, focusing on the important AM settings and avoiding passivations. It contains a live demo using automated load to illustrate the mechanisms of Application Module pooling so the participant to see and understand how these parameters work.

From Requirements to Tool Choice
As Oracle developers, we used to have only a hammer (Oracle Forms), so everything looked like a nail (a job for Oracle Forms). Today, we have both Application Express (APEX) and Application Development Framework (ADF), so we have to make a choice. More important than the discussion of Java vs  PL/SQL is whether your application is user interface driven or data driven. A data-driven application is one where the data structure determines the user interface. These applications are well suited for a wizard-driven, browser-based approach as used in APEX; A user interface driven application is one that starts from a set of requirements to support a work process. This is easier to implement with the flexible architecture of ADF.

Life After Forms
Are you wondering about the evolution of your existing applications based on Oracle Forms? This presentation will discuss and demonstrate the most common options: Modernize your Forms and integrate in web application or portal; Build ADF Business Components based on your Forms and then building an ADF Faces web application on these components; Building an Oracle Application Express application, using the Forms Conversion capability of APEX to jumpstart development. This presentation will give the audience a good overview of impression of the capabilities and effort needed for each approach in order to make an informed decision about the future of their Forms applications.

Forms to ADF – Live!
This live presentation shows how to take a Form from an existing Oracle Forms application and develop corresponding ADF Faces screens. The form is first demonstrated and examined in Oracle Forms. Then, ADF Business Components corresponding to the base table usages in Forms are built using the wizards in JDeveloper. A user interface corresponding to the Forms application is built using ADF Faces with drag-and-drop design in JDeveloper. The presentation also highlights some of the places where a Forms application and an ADF Faces web application are irreconcilably different. The presentation is intended for developers who want to see in real life (not PowerPoint) how to start building ADF applications to replace existing Forms.

Top Ten Secrets of Successful Oracle ADF Projects
There is more to developing applications with Oracle Application Development Framework (ADF) than just the page building and coding. This presentation will teach you all the other things you need to know to make your enterprise ADF project a success. Topics covered include: The component catalog; Expectation management, Proof of Concept; Structuring workspaces, projects and code; Using templates and framework extension classes; Version Control and Build tools; ADF Logging. After having attended this session, the participant will understand the tasks and tools necessary to complete an enterprise ADF project successfully.

Choose Your Weapon – An Overview of Oracle Development Tools
This presentation examines all of the most important development tools and technologies available from Oracle today, discussing the strong and weak points of each: Application Express (declarative development in web browser,  PL/SQL business logic, data-driven design); Application Development Framework (declarative development with JDeveloper, Java business logic, user interface driven design; Oracle Forms (the classical Oracle development tool, PL/SQL logic, data-driven design). The presentation is concluded with an overview and recommendation for how to choose the right tool and application development approach.

Oracle’s Cloud: Still mostly vapour

Oracle announced a number of cloud offerings at Oracle Openworld. However, as is often the case with OpenWorld announcements, we are still waiting for actual products to materialize.

The first cloud offering likely to appear as a real product is the Oracle Database Cloud Service. This is because Oracle has already been running this service for free at apex.oracle.com. The only difference I expect is that it will now have a monthly fee and the wording about not using it for production purposes will be removed.

The Oracle Java Cloud Service is still pending and we probably won’t see it until 2012.

For both of these cloud services, Oracle has apparently not worked out the pricing yet. This supports the hypothesis that Oracle felt they had to rush something with a “cloud” moniker to market at OpenWorld, but they don’t really know what their value proposition is yet. Oracle has a history of building great software products, but tends to attach “enterprise” (= very high) price tags to them, pricing them out of reach of 90% of the market. Since the technical cloud offerings should appeal to the wider market, it will be interesting to see if Oracle gets it right this time.

Should I use APEX or ADF?

The important discussion where to use APEX and where to use ADF tends to get bogged down in an unproductive argument about the relative merits of PL/SQL or Java. However, this is not really the most important factor that should drive your decision.

Instead, you must first determine if your application is

  • Data-driven, or
  • User interface driven

A data-driven application is one where the data structure determines the user interface. Existing Oracle Forms applications tend to fall into this category, and if you only want to do a one-to-one replacement of a Forms application, the wizard-driven, browser-based approach of APEX works well.

A user interface driven application is one that starts from a set of requirements to support a work process. This is typically the case for new application development, or where an existing Oracle Forms application is being redesigned. User interface driven applications are typically specified with detailed screen designs that are easier to implement with the flexible architecture of ADF.

If you are in Norway for the OUGN spring conference, you can hear me talk on this topic in the presentation called “APEX or ADF? From Requirements to Tool Choice”.

ODTUG Best Speaker Award

I’m honored and proud to have received the ODTUG Best Speaker Award (Presentation and Delivery) at the ODTUG Kaleidoscope 2010 conference for my presentation “What’s Hot and What’s Not – an overview of Oracle Development Tools”. Because this award is based on audience feedback, the award is actually awarded for my 2009 presentation.I gave the presentation again this year, and the slides are now available for download (What’s Hot and What’s Not). I have also uploaded the slides for my presentations “Forms to ADF – Live!” and “Forms to APEX – Live!“. There are only a few slides for these, as they were mainly given in the form of live demo.

The death of Forms?

At the UKOUG conference in Birmingham, I gave a presentation entitled “Life After Forms” for people wondering what to do about their Forms applications. The reason that people consider this is of course that the talk in the Oracle community tend to concentrate on the two new options: ADF Faces and Application Express.However, whenever I talk to Oracle customers at conferences and on-site, most are still running Oracle Forms.In order to get some hard numbers, I gathered some statistics from the OTN Forms forum. Interestingly, the number of posts on this forum show almost a completely straight line since the forums started in 1998 (see figure below). This means that the interest in Forms (as measured by OTN Forum threads) has remained constant over more than 10 years – and shows no sign of tapering off.reports-of-my-death.pngSo if you are still running Oracle Forms, you are not alone. And with Oracle promising support until at least 2017, there are no technical reasons why you should rush out and re-develop existing Forms applications.

Oracle, the applications company

Leaving the details of the individual sessions aside, the impression from this year’s OpenWorld is that of a shift in Oracle’s perception of themselves.

Oracle used to present itself as a technology company that happened to use its technology to build applications. Now, Oracle is an applications company that happens to build some technology (software and hardware) as needed for its applications.

This was evident from the main keynotes that focused almost exclusively on Oracle applications present and future. There was no mention of any news in either database or middleware – this was relegated to the smaller Oracle Develop sub-conference. Looking at the tag cloud in the official Schedule Builder, you search in vain for any mention of PL/SQL or Application Express – even Fusion Development (ADF) get only a small mention.

For a developer this means:

  1. The core products used for Oracle applications (Fusion/ADF/BPEL) will be around for a very long time.
  2. The non-core products (ODP.NET, Application Express, etc.) will live only as long as there is a significant community using them.

This does not mean that either ODP.NET or APEX is going away (both have strong communities), but it means that it is up to the developer community to keep Oracle interested in these products.