All change for HTML DB…

I read on Scott Spendolini’s Blog that HTML DB has been renamed to Oracle Application Express.

I think HTML DB was a really poor name, but I think the new name is a little confusing. A quick look on the net and you’ll see lots of people still talking about “Oracle Applications”, when referring to “Oracle E-Business Suite”. This new name makes HTML DB sounds like a cut down version of the Oracle ERP.

I would be interested to know what other names were passed around before this one was picked. Maybe, something a little clearer like:

  • Oracle Application Developer Express (OADE)
  • Oracle Developer Express (ODE)
  • Oracle Metadata Repository for the Runtime Generation of Applications Directly from the Database with no need for an additional Application Server… 10g! (OMRftGRoADftDwnnfaaAS… 10g!)

The last one does it for me 🙂



Raptor 3 (and a little bit) …

After the last abortive attempt to release Raptor EA3, we now have a new version. This one seems to have re-fixed the bits that got broken in the original version 3 release. So far so good.

It makes me wonder about the sense of releasing beta and early adopter applications to the general public. It’s a little like washing your dirty laundry in public 🙂



Content Managment Systems…

Like Andy C, I’ve been following Howard Rogers’ CMS journey with interest.

I’m always hopeful I’ll find tools that make my life easier, but as yet I’ve been unable to find a CMS tool that suits me. The biggest problem with all the CMS tools I’ve trialed is the way they use the database. Invariably, each page is generated at runtime from the contents of the database, making the database access speed a major limiting factor for sites with high number of hits. So why serve static and semi-static data from the database?

By far, the majority of my site is static content. If I want to alter the format of the site I alter either the Cascading Style Sheet or 4 simple template files. I don’t revisit each page on the site. That would be lunacy. My homegrown CMS system stores the contents of all my pages in the database, but rather than generating a page for each request, I generate the whole site once, including templates and include files, to flat files and only regenerate individual pages when things change. Dynamic and semi-static content, such as article ratings and RSS feeds, are located in small include files, which are automatically regenerated when necessary.

My difficulty in finding a CMS I like comes from that fact that I have most of the advantages of these CMS systems, like web editing and backup/recovery, but I also get speed thrown into the mix as a bonus.

I guess the hunt continues 🙂



Raptor 3 Early Adopter?

The Early Adopter 3 of Raptor has hit the OTN site, but I would think before you leap in.

It looks like a number of previous bugs have been reintroduced in EA3. The SQL formatter doesn’t work in any editor except the SQL Worksheet, and the debugger appears to have gone missing. I expect the support forum may fill up rather fast. Not exactly a glowing advertisment for Oracle development 🙁



Critical Update, not so critical for Tru64…

The recent press interest in Oracle security has certainly increased the profile of security within our company (about time too). Unfortunately, it’s also repeatedly highlighting the lack of support provided by Oracle.

For all you guys and girls on first tier platforms, I guess you’ve applied the latest CPU already, or are at least in the planning stages.

Not me! I’m living the life of leisure, waiting for it to be released for Tru64. Although Oracle support will not give a specific date, it currently looks like it will take 2-3 weeks. Good to know that everyone and their dog knows how to hack my systems and there is no fix available.

So currently I’m still waiting for:

  • Patch for 10g Release 1 on Tru64.
  • Oracle 10g Release 2 (10.2.0) on Tru64.
  • Patch 4751926 on Tru64.
  • EM 10g Release 2 Grid Agents (10.2.0) for Tru64.

If Oracle had any balls, they would ditch the majority of their platforms and maybe start providing a reasonable service. But they haven’t and they won’t.

Bunch of jokers!



Underworld – Evolution…

As mentioned in my previous post, I went to see Underworld – Evolution last night. It wasn’t exactly what I expected, but that’s not always a bad thing. Vampires, werewolves and Kate Beckinsale rolled together into a single film. Works for me every time. If you liked the first film then I guess you will enjoy this one also. If not, then try something else 🙂



Anonymous Comments Removed…

I’ve just deleted a couple of anonymous comments and prevented anonymous posting. I’m not totally happy about it because it seems like censorship, but I’m not going to sit in the middle and let people use my sites as a forum to slag off others.

Nuff said!

On a lighter note, I’m going to see Underworld – Evolution tonight and tomorrow I’ve got a Christmas Party. It’s one that I couldn’t fit in before Christmas 🙂



PL/SQL vs J2EE – Some comments…

Robert Vollman has a good post called PL/SQL vs J2EE. I started to write a comment, but it became too long so I decided to post is on my blog instead.

I’ll start by saying I have a very strong position on this point, as expressed in a previous post My Utopian Development Environment.

I’m ready to be shot down in flames by a J2EE guru, but this is what I observe when I look at our J2EE applications interacting with the database.

  • By far the most executed statement on our databases is “ALTER SESSION SET ISOLATION_LEVEL = READ COMMITTED”. This is executed in excess of 100,000 times an hour for one application alone. Why? Because every time the 10g application server does anything, it seems to send this first. Now this equates to the default operation in Oracle, so it is completely pointless. The developers didn’t know how to stop it so I raised a TAR with Oracle support and was told I couldn’t!
  • The way EJBs maintain there state is rather odd. When an EJB persists it’s state, using an insert or update, it immediately requeries it’s state. This turns a single operation into two database calls.
  • When the container detects a failure in a database transaction, it retries the transaction twice before bombing out with an error. I don’t know if this is configurable or not, but this is what I see.
  • Instantiating or persisting complex structures involves multiple database calls, each made individually with their own associated network traffic.

Now I’m not a J2EE developer and these observations are based on the applications I work with, but this does not add up to a scalable and performance orientated solution to data processing.

In addition, we have some data transfers that cannot go through the application layer (don’t ask!), so we have to duplication some of the J2EE business logic in PL/SQL. Same logic, two locations, disaster waiting to happen!

Googling around leads me to the conclusion that a lot of people are suffering the same problems as us. So what does this mean? Either J2EE just isn’t built for performance, or most J2EE developers don’t know how to do the job correctly. Either way, it’s like giving people a rope to hang themselves with.

My opinion? If you want it fast, put it in the database. If you want a single location for business logic, regardless of the applications accessing it, put it in the database.



Did you spot the deliberate mistake?

So yesterday, just after posting Why do I publish on the web?, I decided to change the way my website was hosted. As a result, the site was unavailable for somewhere between 1 and 24 hours, depending on DNS propagation. So I guess the post should have been called, “Why I don’t publish on the web!”

Historically the site was written in ASP and MS Access. Quite some time ago I rewrote it in PHP and mySQL, but I never moved it off the existing server, so all of that was running on Windows 2000, and later Windows 2003. Recently, a collegue started a site with the same hosting company and I noticed his was much more responsive. Turns out he was using a Linux host, rather than a Windows one. Yesterday I switched to Linux and guess what? Everything is much quicker. All the dynamic content, like the forum and the ratings system, is miles faster.

Yet another success story for Linux 🙂