Friday, October 21, 2005

J2EE and ADF for Forms Developers workshop in Sydney

Yesterday I attended the "J2EE and ADF for Forms and Designer Developers workshop" by Sue Harper in Sydney (or at least the talk bit, though not the hands-on component).

Firstly, I'll declare my bias. I like Forms Developer (mostly). I like PL/SQL. I hate Reports Developer, but thats neither here nor there. However there seems to be a push away from Forms towards some form of Java-derived front end. Forms doesn't get the glamour press; the 'I had all these systems and solved my integration problems by running Java/XML/whatever over the lot" type press. It probably makes it harder to sell and I don't think Oracle are really trying to sell it. I think they should, and on the basis that having your application developed by your database (PL/SQL) developers, you'll get an application that runs better against the database. And you'll tie yourself into that database....Sorry, make that 'leverage your investment'.

That's what I don't like about the Java push. IT shops will look at "we need Oracle developers for the database and Java developers for the front end". There aren't enough good Java/Oracle developers to cover both bases. There's probably not even enough competant Oracle developers, they are still 'expensive'. But Java developers are being churned out of colleges, universities etc and they produce something pretty.

At a recent project, the PM wanted to show the end users the progress being made by development. It wasn't a matter of waving around a big bunch of code printouts or telling them how many batch routines had been written. They were shown the screens, and just the screens. When push comes to shove, pretty wins. And when the Java developers are saying the database is just a datadump and that everything can be written in Java, the database developers are going to get the pointy end of the stick.

And that's my beef with JDeveloper. I don't want to be told that, when you need a tricky bit of record validation, go and find a Java developer to write it and gradually you'll pick up enough so that you don't have to ask them as often. I've got a lot of PL/SQL experience, and some in C, Perl, COBOL and a couple of other languages. What I want is a PL/SQL to Java Rosetta Stone. This is how you translate PL/SQL collections to Java, this is how you call database procedures or SQL through Java, and so forth. That will give PL/SQL developers the knowledge to write Java.

Because my experience of Forms is that, while some Forms are simple base-table selects/insert/updates, the ones that aren't simple are the ones you spend the most time working on, and they contain lots of PL/SQL. And honestly, if I can't develop that in JDeveloper when I can in Forms, then I am not able to sell myself as a practical JDeveloper resource.

I wasn't able to stay around for the actual hands-on portion. That wasn't a great disappointment to me, as it isn't the way I'm comfortable learning. I'm distrusting of a rehearsed 'press here, drag this and its done' walkthrough. It reminds me of my first Oracle training for Forms 4.5 (or maybe 5.0), developing the normal DEPT/EMP style Forms. I want to try something tricky, with validations, changing defaults depending on this or that and so on. So I'll try JDeveloper on something, time permitting.

This has probably come across very negative, and is also probably unfair. I don't see that the J2EE approach is technically better than the Forms approach for the environments I've worked in or can see myself working in. But I feel it will may well get used there and I can't afford to be shut out. I hope I'm wrong and can stay with Forms. [My last experience of a Developer Day was about four years back. It was WAP this, WAP that and them telling us that we'd be developing everything to run on a mobile phone. I heard more WAP on that day than I'd heard before or in the four years since. Though I'll admit that today, I can at least see that sometime in the next five to ten years I will probably work on something that can be used on some type of mobile device.]

We'll see in six months or a year's time whether I've changed my tune about J2EE and JDeveloper. Convincing your friends about an issue, they'll give you the advantage of the benefit of the doubt. Convincing the enemy is always more of a challenge.


Reading back on this, I haven't given justice to the emphasis in the presentation on using the appropriate technology and the potential for integrating Forms and J2EE. That's an area which I need to look into more.


Anonymous said...

Forms is not just smells funny.

Anonymous said...

Thanks for your comments on the ODD...shame you couldn't stay for the hands on as it was specifically written to show many of the features of how JDev and ADF make development much easier. Regarding "I don't want to be told that, when you need a tricky bit of record validation, go and find a Java developer" - well fundamentally you have a different scripting language (PL/SQL vs Java) so I don't think anyone is expecting you to build and enterprise application and NOT know any java - the point is that ADF and JDev provide a productive layer of abstraction so that if you want to do record validation, the framework gives you nice easy hooks to drop in your code (and yes its java code but the basics IF..THEN..ELSE is not that difficult).
We'll be publishing the workshop on OTN in the coming weeks so maybe you'd like to try it and see that infact it isn't that complicated at all.

Noons said...

Can't agree more with some of the feelings expressed by Gary.

One reason I didn't attend the session is that I'm sick of hearing the tired old mantra of how "J2EE is going to make it so easy to develop anything".

Yet EVERY SINGLE J2EE project I've followed in the last 4 years has been an unmitigated disaster after another. Quickly masked by liberal applications of management/supplier BS.

Meanwhile, I've seen two complete and successful Forms projects in that period. Call me biased, I go for facts and results, not marketing BS.

We've all been told recently that JDev's latest release is a good replacement for Toad. Sorry, it ain't: run a query on a table with an object type . You can see the results in Toad, you see nothing in JDev. But hang on: which product is the one keyed to the OO-brigade? Ah yes: JDev. Coulda fooled me...

And so on. It's very easy to make empty claims about the suitability of this or that product or technology to replace another.

It's a totally different thing to actually DELIVER something that indeed works. JDev is no replacement for anything as of now, although it's getting there. And J2EE is far from even approaching Forms functionality and ease and speed of development.

Sorry, but 4 years of hearing the same old tune is just too much! Oracle J2EE-heads: deliver something that can indeed replace Forms in a usable manner and doesn't ned years of learning curve.

Otherwise, shut the heck up and let the user and development community work with a USABLE product/technology. OPAL comes to mind.

Anonymous said...

Nuno - first of all - I'm not a J2EE head - my background in Oracle is firmly based in development and specifically with Oracle Forms. J2EE is relatively new to me as well so I consider myself to be a close profile to the community we are addressing.

I'm sorry you didn't attend the workshop. If you had you may have experienced some of the new features as well as learned our future plans which might have given you a better insight (for example, we have never indicated that JDev is a replacement for TOAD, its has many "Toad like" features but you may be getting Jdev confused with Project Raptor which IS targetted more towards TOAD.

You mention only failures but I've worked with many customers who have succesfully developed and deployed J2EE applications (and these people were Forms focused companies/developers). Again, if you had come to the workshop we could have shared some of the experiences (good and bad) of these customers).In terms of our ability to deliver - well there is nothing in our strategy to the Forms/Tools audience we don't adhere to ourselves. We have 9000+ developers using Jdeveloper and ADF to build Oracle Applications. Many of whom are Forms developers. Infact, our developer profile for Oracle Applications is more biased towards Forms developers than Java developers and these guys are the people building the successful versions of Oracle Applications....We are focused on making these 9000 developers successful and productive.

As a final point, you close by saying we should "shut the heck up" - personally I think thats really uncalled for since blogs provide a community of information exchange - regardless if you agree or not "shut the heck up" really is not very constructive. If you think these tools are unusable then bring your specific concerns to an open forum where we can disucss, debate and even look at resolving these issues to make the tools and platform productve to you so you CAN be succesful.

This is what many of the delegates have found at the workshop by being able to learn about our goals, try the tool, and discuss their experiences with Oracle's Product Management and developer teams.

Noons said...

I couldn't care less what you are or did, Grant. The comment was directed to the people in Oracle responsible for this J2EE rubbish. Not you. But if you class yourself in that group, then it is for you as well. I don't have PC constraints and I like to call a spade by its name.

As for JDev and TOAD: it was openly said in this year's ausoug conference that it was aimed as such. The demo we saw was very nice and looked good. Except for the bits where JDev aborted: great stability! Then we download it, give it a twirl in a real environment and the darn thing can't even display the contents of a type column? WTF?

Yet, now it's called "raptor" all of a sudden. Must be another one of those "statements of direction"...

My problem with this whole rigmarole at Oracle is: the Java people have had freehand on this comnpany for more than 5 years now. What have they got to show? Half finished products, statements of direction,
about a dozen conflicting and incompatible "technologies for the future", bugs galore and a pile of vague rubbish that goes by the general name of "fusion".

So, my comment stands: deliver something that people can use for normal day to day small project development work - as opposed to vague and false "cast of 9000 developer" projects and other offshore-sponsored lunacy.

*Then* you can talk. Until then, please keep the "positioning" statements where they belong!

Name ONE of your "success" stories in Australia in the last 4 years. Careful: I follow the market here and I *KNOW* who is doing what. As opposed to wishful thinking and "positioning statements". Fully finished project that has not had its target "redefined" halfway. One. Please.

Besides: you do NOT have 9000 developers working on a single J2EE. You might have an offshore supplier who *claims* to have 9000 developers on-hand. There *is* a difference there. Don't try that sort of semantic rubbish with me, you got the wrong guy for that!

And your "focus" is nothing else but another vague marketing statement.
Fusion is nothing else RIGHT NOW than a statement of direction.

You know PERFECTLY well it is totally impossible to sustain a J2EE container with the number of tables needed for Peoplesoft and Financials.

I challenge you to provide here or anywhere else concrete proof that you have been able to start a J2EE environment with 25000 tables using EJBs. You cannot do so. For once admit the truth, instead of providing even more vague marketing rubbish.

You want "constructive" comments? Start by talking to the moron Java heads and getting some sense into their brains. They started this, they should be the ones to become "constructive".

So far all they have done is claim how good they would be if everybody else got out of their way. Excuse me, but that line of argument went out of fashion with the original Apple.

Open forums for this discussion? Where? All we have is "canned environments" sponsored by politically correct companies or offshore services providers who "toe the line". Everytime you folks get a whiff of controversy, you vanish or change the venues. Here is a proposal: put up a blog for open talk about this. Sponsored by Oracle. Open to ALL. No censorship. No marketing. Publicize it. Then watch the fireworks.

You cannot seriously claim that you have never heard a dissenting opinion about all this J2EE rubbish going on. You either don't have a clue how to use the Internet or worse, you're trying to smokescreen people who have been around IT longer than you've been alive.

For once, the Java mob inside Oracle could do something really useful. Rather than "statements of position", "focuses", "fusions" and other utter marketing RUBBISH. Try *listening*?

disclaimer for the legal brigade: the opinions on this post are MINE and do NOT reflect in any way on the owner of this blog.faw