Thursday, October 15, 2009

Oracle Apex, Dead on Arrival?

Warning: Rant follows! The views and opinions expressed here are explicitly my own. Subjective, prejudiced and factless content ahead, best consumed with a pinch of salt (and some Tequila if you are in the mood).

Here in Norway, the Oracle community is just starting to open its eyes to Apex. I have been lobbying Apex internally in my company for quite some time now. Given the latest releases, this should have made my job easier (and the coming version 4.0 even more so). Apex has matured in many ways, but most noticeably in terms of functionality and community adoption. So what is driving me up the wall?

The long, long time ago
The major part of the customers I have worked with, started their relationship with Oracle by buying an Oracle database. To a greater or lesser degree, most have expanded their use of Oracle products. Having worked most of my time with rich back office applications in various domains and a number of development tools, I have witnessed the investments made by customers into their applications (both in terms of time and money).

Changing client technologies combined with a consistently performant database in the cellar, has made some pretty impressive database applications. Whole business processes have been modeled, implemented and evolved (and continue to evolve) in the database for quite some time now, and the companies have gained in-house database competence as a natural result.

Enter APEX
Along comes Apex, a PL/SQL based RAD tool , which actually seems to live up to the "RAD"-label and has the ability to flip code around to satisfy the most exotic  business needs. At the same time also embracing both KISS and the fat database paradigm.

In particular, companies heavily invested in database applications, often in combination with Oracle Forms clients, should see the benefits of Apex. Reuse of code, reuse of competence, and getting their pennies worth of already invested time and money. So what is stopping them?

The Case and the Choice
Based on one need or another, the business wants to expand their existing applications; what client tools are available in the Oracle sphere? There are several options, but most prominent (for the time being, anyway) is ADF and Apex. What to choose depends on a number of things, but I believe the most important in this phase is not to apply your silver bullet “just because”.

This is a topic in itself, so I will short circuit the discussion, and narrow it down to this:
A company wants to implement some back office system based on an existing database application. The application is of "medium" complexity, consisting of registration forms, case evaluation support, reporting and some integrating with other systems. About 10 concurrent users. The IT department has most of its skills in PL/SQL and SQL.

You cannot build a system based on that information, I agree. You cannot make a valid recommendation on a single tool based on that information, I agree. But this is the same amount of information available to Oracle sales representatives as well, and (in Norway at least) the answer is ADF nine out of ten times (actually, I have never heard Apex recommended, but I am giving the benefit of the doubt here).

What do they know that I do not?
How can they consistently answer ADF? Is Apex going to die soon? If I were a customer, I would shy away from Apex hearing this from Oracle itself. Heck, I might even shy away from Apex, I have to make a living too.

In many cases, I am convinced Apex is not just a viable choice, but also the best choice for the customer. But how can I justify that to the customer that Apex is the way to go, when the software vendor actually says something else? If I was a customer, I would be reluctant to use Apex, to say the least.

The road ahead
I do not know where to take it from here, hence the rant. That is the long and the short of it.

Any comments or suggestions would be greatly appreciated.


  1. The funny thing is that Apex hasn't died.
    Despite the best attempts to kill it by the intelligentsia that rules Oracle development tools nowadays.

  2. Apex is on the rise.
    JDeveloper is in decline (despite fusion, or whatever they call it nowadays).

    There is no stopping this.

  3. Well written article! I must say I sadly agree with you, being a fan of Apex. But for me, there's also understanding for the sales reps of Oracle. If you are in the position to advise customers from a vendors point of view, you want to maximize your own value. And the fact of the matter remains, that ADF generates more revenue probably 9 out of 10 times (completely unargumented guess btw) for Oracle.
    There's also another bump on the road to salvation, being the current generation of software architects. You either have the Designer/Forms architect, who restricts the "wow" factors of Apex as much as possible, if he's even convinced of the better value. Or you have the architect that recently took the plunge, and reschooled himself the workings of OO, middletier and SOA architectures. To make a case for Apex with such an architect, is like telling a sportscar manufacturer to make a modern horse and wagon. They're simply not interested.
    I type these architects as, the one that looks to the past, and the one that looks to the future. Either one is looking in a different direction to find arguments that Apex is not a good solution. Instead, I think that you always should look at the now, what fits the best in present time, because the future is ALWAYS uncertain, and the past is ALWAYS allready gone. So I don't think Apex will be "killed" by sales people, I hope (like Toon) it will be "saved" by realistic architects, because they have the power!

  4. Thank you for a very interesting posting. I agree with you that APEX is a much overlooked product (compared to J2EE solutions, ADF and other Java based frameworks).
    Here in Denmark a few companies are starting to notice APEX. We have 2 large clients which has taken it in. The response to the RAD features is fantastic. Users can not believe how quickly new functionality can be added using this tool.
    I have done some J2EE/ADF programming, but found that I can deliver much more much faster with APEX. I am sure that APEX will not be kept down (despite salesreps advocating ADF).

  5. My short opinion is packed into one sentence:
    Apex = Oracle DB: the best mix ever happened, so it will live as long as Oracle DB.


  6. Thank you for the comments guys, really appreciate it.

    To add some substance to the mix, there is an interesting article by Dr. Paul Dorsey here:

    I have been trough a (successful, I might add) ADF project myself (ADF BC, the whole shebang on top of Oracle EBS), I can relate to what he is saying. And nod!

    How can Oracle expect a small/medium shop to take on ADF projects? Would it not be better to promote Apex instead of not being considered at all? I just do not get that strategy.

    @Martin: Out of curiosity, how were you able to sell the product to clients? Did they check references with Oracle? In Denmark I believe you have the presence of Logica and Miracle, both companies have promoted Apex in one form or another. Maybe that helped? In Norway, there are no such heavy promoters (yet).

  7. Very good posting. As a APEX enthusiast in Norway we have experience from Oracle sales people that you get very limited help for promoting APEX. APEX is "no cost option" and no money in license income. But the biggest issue from Oracle is that APEX don't have to overcome the java development plattform (ADF, webcenter, Jdeveloper, Oracle Application server) since this could lead to customers choosing APEX instead of java plattform and then miss license income. We at work everyday trying to marketing APEX (most in Norway), we love APEX..

  8. oramonkey,

    I've pondered the same thing here (in the US) myself. Last year I posted, ApEx: Oracle Marketing WTF?.

    What I got from the responses's free. Why would a sales rep push a free product? No commission in it for them right? It's already part of the database.

    As to whether or not it's dying...I highly doubt it. Although I haven't used ApEx regularly in a couple of years, I have continued to follow it's progress. At each Oracle conference there appear to be more and more ApEx related sessions. That's a good sign.

    Also, they community is very strong led by the likes of John Scott and Dimitri Gielis, to name but a few.

    I came from the Java (J2EE) world and will not go back willingly. It's just way too easy using ApEx. It allows me to concentrate more on the data, especially in those smaller apps that tend to grow quickly.

    Anyway, that's my 2 cents.


  9. I will echo what the others have said about Apex being free (as in included in the database license), not exactly giving the salespeople any incentive to push it.

    If you look at the latest Oracle price list, (, you will see that "TopLink and ADF" costs the same as Standard Edition One (USD 5,800 for processor license). WebLogic Suite costs more or less the same as the database Enterprise Edition (USD 45,000). BPEL Process Manager (USD 60,000), "WebLogic Integration" (whatever that may be) (USD 70,000) and BPM Suite (USD 115,000) is actually (much) more expensive than the database Enterprise Edition (even if you include some of the Enterprise Edition Options, such as Total Recall, which is USD 5,800).

    So in practice, Oracle doubles (or even triples) its profit if it can sell you on the ADF/WebLogic package instead of an Apex solution.

    Once this is explained to a potential customer, he should be able to understand why Oracle salespeople keep silent about Apex while promoting the more expensive options -- even when ADF may not be the right tool for the job.

  10. Let's sum it up:
    - It's about money
    - It's about architecture (good comment Rutger)

    That was not much of a surprise.

    Funny thing is, I see these as strengths in favor of Apex:
    - It's free (or no-cost option, whatever...)
    - It's simple

    As long as Oracle doesn't kill off their database, I think the following statements hold water:
    - By placing my application logic in the database, the solution is durable, whatever may come.
    - By using the easiest tool available to expose my application, I save money NOW, whatever may come.

    So I'll keep pushing Apex when the shoe fits, vendor support or no.

    I guess the current marketing situation will continue for quite a while yet. I also got sort of a confirmation that this is a global thing, not just Norway.

    Thank you for your thoughts and comments (and keep them coming if you have any more :-))

  11. OraMonkey,

    I would add one more thing, sort of in relation to this.

    The market (i.e. jobs) specific to ApEx is scarce. After using it for 2 years solid (350 page web site) and moving on to another job, not many have heard of it. I've been at 3 companys in the last year or so (don't ask), only one of those had even heard of ApEx. The one that had, relegated it to some back office reporting (in other words, they weren't using it to it's fullest potential).

  12. Nice article! I feel in the United States there are few APEX users, which is sad. There are so many Oracle experts, but none of them cares about APEX. Is that because the companies don't care about it?

  13. Hi guys,

    No need for me to describe to you, how APEX is good and how it works for solving 95% of all of my client's business needs.

    The questions here are:

    1. Is Oracle going to continue on developing APEX? The 'Statement of Directions' say 'Yes', but do we really KNOW?
    2. Is this not a kind of product cannibalism for Oracle?
    3. How to improve APEX's reputation as an overlooked product?

    Cheers guys,

  14. I know your feelings here. I had fought the same uphill battle in my last company for years and had many successes along the way but the stigma still remains. However, when interviewing for my present job I showed them some items I was working on with my own time and they instantly caught the bug to make APEX part of their portfolio. So much so that I have some heavy hardware on the way to make it permenant. When I first started my own blog on this area I was commenting on the process to some on the Dev Team and it seemed that it made a good set of beginning articles. Great article.

    Jason A.