Skip to main content

APEX Discussed on Reddit

This thread (language NSFW) on Reddit discusses Oracle's decision to sue Google - and APEX gets some discussion about 2-3 pages down!

Unfortunately, most of the comments are just plain wrong.  I understand that people are entitled to their opinions, but when things are misstated, that's another issue entirely.  I think this is proof that most developers - Oracle and non-Oracle - simply don't know what APEX is and what it can & can't do.

Comments

Morten Braten said…
Sigh... yes, there are some pretty clueless comments about Apex in that thread (and the readers of this blog probably already know that, but I need to vent and I can't be bothered to post a comment on Reddit):

* "You cannot have more than 10 tables shown on the same page." [Just plain wrong, did this guy pull a random number out of his behind?]

* "You cannot change the template for your pages after creating your project." [Again, wrong. Guess he gave up before he found the select list called "Page Template".]

* "The source code ends up in a database, so version control becomes a nightmare." [Nah. PL/SQL packages and the application export script are plain text files. Last time I checked, most version control systems could handle plain text files just fine.]

* "Point and click programming... shudder". [Ah yes, why would I save time by pointing and clicking, instead of spending my time writing reams of "real" code?]

And then there is this guy who complains

"[Apex] is needlessly limited. I am not trying to develop a database app, I am trying to solve a given problem."

And goes on to explain that:

"In my experience, succesfull applications have a tendency to grow in unexpected directions. If you use apex, you have severily limited your ability to grow your application, because it cannot ever become anythin other than a database application. In other words, it might not so much be a problem with apex as a way to develop database applications, as a problem with the very concept of a database application."

It would really help if he gave some examples of the kinds of conceptual problems he fears running into, instead of some vague, unspecified future threat.

Because it turns out that his real problem was rather more prosaic:

"...what we did with apex was not particularily fancy. But we did have major problems with one page that was intended to basically show data from a single table (view actually), in tabular form."

I'm sure someone on the Apex discussion forum could help him out with that one...

In my experience, the vast majority of companies can solve their common business problems with data-centric business applications (a.k.a. "database applications"). And for this type of application, Apex is great. If the customer already has an Oracle database, and you happen to be proficient with SQL and PL/SQL, that makes Apex a perfect tool for you.

Go Apex! :-)

- Morten
Scott said…
The "unexpected directions" comment was my favorite. Sure, there will be unanticipated features and things that you didn't think of, but I've never had a CRM system, say, end up being a video game or GPS system.

A little planning goes a long way - with APEX or any other technology.

- Scott -

Popular posts from this blog

Custom Export to CSV

It's been a while since I've updated my blog. I've been quite busy lately, and just have not had the time that I used to. We're expecting our 1st child in just a few short weeks now, so most of my free time has been spent learning Lamaze breathing, making the weekly run to Babies R Us, and relocating my office from the larger room upstairs to the smaller one downstairs - which I do happen to like MUCH more than I had anticipated. I have everything I need within a short walk - a bathroom, beer fridge, and 52" HD TV. I only need to go upstairs to eat and sleep now, but alas, this will all change soon... Recently, I was asked if you could change the way Export to CSV in ApEx works. The short answer is, of course, no. But it's not too difficult to "roll your own" CSV export procedure. Why would you want to do this? Well, the customer's requirement was to manipulate some data when the Export link was clicked, and then export it to CSV in a forma...

Manipulating Images with the... Database?

A recent thread on the OTN HTML DB Forum asked about how to determine the width & height of an image stored as a BLOB in an Oracle table. I mentioned in that thread that I have some code to manipulate an image stored in a BLOB column. This is particularly useful if you’re going to let users upload images, and you want to re-size them to display as a thumbnail. Thanks to Oracle interMedia , it is trivial to manipulate the width, height, and other attributes of images stored in an Oracle table. I’ve created a sample application here which demonstrates Oracle interMedia and HTML DB in action. Feel free to have a look. You can download this application from HTML DB Studio as well. Basically, this application allows you to upload images and perform an operation on the image as it is inserted into the PHOTO_CATALOG table. There are two places where some PL/SQL code is required: an After Submit process on page 2, and a procedure to display the images. Here is the PL/SQL for the After...

Refreshing PL/SQL Regions in APEX

If you've been using APEX long enough, you've probably used a PL/SQL Region to render some sort of HTML that the APEX built-in components simply can't handle. Perhaps a complex chart or region that has a lot of custom content and/or layout. While best practices may be to use an APEX component, or if not, build a plugin, we all know that sometimes reality doesn't give us that kind of time or flexibility. While the PL/SQL Region is quite powerful, it still lacks a key feature: the ability to be refreshed by a Dynamic Action. This is true even in APEX 5. Fortunately, there's a simple workaround that only requires a small change to your code: change your procedure to a function and call it from a Classic Report region. In changing your procedure to a function, you'll likely only need to make one type of change: converting and htp.prn calls to instead populate and return a variable at the end of the function. Most, if not all of the rest of the code can rem...