Monday, January 30, 2012

The Art of Self-preservation

This post is aimed at all those poor souls that find themselves facing Oracle ADF coming from a PL/SQL background (Forms, APEX or plain old database development).
Normal First Reactions
Despair. Most of us have felt it in the beginning, and it is considered perfectly normal. The feeling of constant despair will diminish slightly over time, but relapses will be frequent.

You will feel as if you have stepped 20 odd years back in time; yes, it has to be this hard to make even the simplest CRUD application.

You will have to pass some fairly elevated hurdles; yes, you have to learn (or at least have some knowledge of) Java, JSF, Expression Language, Groovy, CSS, HTML, Javascript and last but absolutely not least ADF itself.

Start in the Right End
You (or more likely your superior) bought the sales pitch, and thought you arrived to a mature, complete development framework specifically suited to leverage your existing Oracle investments. What you got was the biggest jigsaw puzzle ever, and all the corners missing. To even attempt fiddling around with the pieces, you have to have some basic skills.

ADF is a Java framework (although Java developers would call it xml-based). Java is core. You have to learn the stuff. You will not get far without Java. It is that simple. After all, the kids all learn it at school these days, how hard can it be? The answer is like always; 10% talent, 90% practice, it will take time to be good at it.

As a starting point, I recommend Head First Java. Not only is it educational, it will also help you to realize just how bad all other introductory programming books actually are.

The Next Step
As Java frameworks go, ADF is pretty big. Full JEE stack with lots of bells and whistles, and an abundance of XML-files. The good news is that you can achieve some pretty sophisticated behavior by declaration, the bad news is that you have to know where to turn the knobs. There are a lot of knobs.

First you have to learn the grand picture of the framework;
  • The model, aka the meat, or business components
  • The other model. Err? This is the binding layer, or view backend model or some such
  • The controller thingy with task flows
  • The view, as in GUI, and not to be confused with the view object in the first model. Argh...
Grant Ronald will help you on the way with his book Quick Start Guide to Oracle Fusion Development: Oracle JDeveloper and Oracle ADF. Do not let the lengthy title put you off, Mr. Ronald understands where you are coming from, and will gently nudge you in the right direction.

Ready Yet?
Well, that depends. Do you want to create tutorial applications, or the real thing? You should not balk at tutorials, that is not what I am saying. It is just that real business users have never had any clue how to best work with <insert technology/framework here>, they just have needs (of which, you are of course grateful, as it gives you work).

Users do not want to have plain CRUD anymore, they want to have an extremely functional and visually appealing working environment delivered at lightning speed. Business users will push you to the edge, they are both educated within their domain, and most likely used to some seriously fast client server applications.

Nervous?

Relax...
Stay sane just a bit longer. Take a deep breath, there will eventually be a light at the end of the tunnel. Let us hope it is not an oncoming train ;-)

Shay Shmeltzer has a more elaborate (and infinitely better) approach on how to get started with ADF in this blog post.

To be continued...

42 comments:

  1. Thanks Harvard for the insight and well written post. I'll be following your future posts with a lot of interest.

    Being a full time APEX developer I haven't seen much of ADF apart from it looking and sounding exactly like your picture :)

    P.S. If there is an oncoming train at the end of the tunnel, lets hope it's brand new APEX one ;-)

    Cheers
    Matt

    ReplyDelete
  2. Welcome back to blogging, I always enjoy reading your posts, even though this ADF stuff is rather irrelevant for me (at least for now). It does seem to confirm some of my "suspicions" of ADF, seen from the PL/SQL and Apex side of things. Looking forward to following your journey into ADF-land... :-)

    - Morten

    ReplyDelete
  3. @Morten & Matt

    Thank you, and yes: there will be more ;-)

    ReplyDelete
  4. I wish to show thanks to you just for bailing me out of this particular trouble.As a result of checking through the net and meeting techniques that were not productive, I thought my life was done.
    Digital Marketing Training in Chennai

    Digital Marketing Training in Bangalore
    Digital Marketing Training in Pune

    ReplyDelete
  5. I am so proud of you and your efforts and work make me realize that anything can be done with patience and sincerity. Well I am here to say that your work has inspired me without a doubt.
    AWS Training in chennai

    AWS Training in bangalore

    ReplyDelete
  6. I appreciate your efforts because it conveys the message of what you are trying to say. It's a great skill to make even the person who doesn't know about the subject could able to understand the subject . Your blogs are understandable and also elaborately described. I hope to read more and more interesting articles from your blog. All the best.
    Blueprism training in annanagar

    Blueprism training in velachery

    Blueprism training in marathahalli


    AWS Training in chennai

    ReplyDelete
  7. Thank you for allowing me to read it, welcome to the next in a recent article. And thanks for sharing the nice article, keep posting or updating news article.

    Data Science Training in Chennai
    Data science training in bangalore
    Data science online training
    Data science training in pune

    ReplyDelete
  8. I have visited this blog first time and i got a lot of informative data from here which is quiet helpful for me indeed. 
    java online training | java training in pune

    java training in chennai | java training in bangalore

    ReplyDelete
  9. Excellant post!!!. The strategy you have posted on this technology helped me to get into the next level and had lot of information in it.

    angularjs Training in chennai
    angularjs Training in chennai

    angularjs-Training in tambaram

    angularjs-Training in sholinganallur

    angularjs-Training in velachery

    ReplyDelete
  10. I dot net microsoft azure has a good impact azure online training hyderabad is good to learn on azure technology

    ReplyDelete
  11. Valuable post on job oriented courses. It’ll help lot of students while choosing part time diploma courses for a career growth. Digital Marketing Training in pune

    ReplyDelete
  12. thank you for sharing this blog,it is very interesting information.
    java course bangalore
    javascript course bangalore

    ReplyDelete
  13. This post is really nice and informative. The explanation given is really comprehensive and useful.

    sap fico course
    sap fico training

    ReplyDelete
  14. This is a wonderful article, Given so much info in it, These type of articles keeps the users interest in the website, and keep on sharing more ... good luck.

    best digital marketing course mumbai

    ReplyDelete
  15. It is actually a great and helpful piece of information about Java. I am satisfied that you simply shared this helpful information with us. Please stay us informed like this. Thanks for sharing.

    python training in bangalore

    python training in hyderabad

    python online training

    python training

    python flask training

    python flask online training

    python training in coimbatore
    python training in chennai

    python course in chennai

    python online training in chennai


    ReplyDelete
  16. Great learning experience with proficient trainers in Informatica. Flexible timings with hands on experience with real time scenarios.
    Best Oracle ADF Course in Bangalore

    ReplyDelete
  17. Thanks For sharing a nice post about all Course.It is very helpful and for us.
    Oracle ADF training in bangalore

    ReplyDelete
  18. The most unique and creative TIC tee I have seen in a while. My Boxer has been wearing them ever since he wasBuy Twitter accounts a pup and now is older and ready to take on the competition with a T-shirt that says: Most Unique Tecnic I Learn. It makes me laugh when I see his run-up to the dog crate and out there with his shirt off. He usually does this about three times,Buy pinterest accounts then goes back into his crate to snooze for about five or six hours before going to sleep. If you have a dog who loves to exercise and is always ready to play, then this tee would be a good choice for him. Buy Instagram accounts

    ReplyDelete
  19. I am specialized in Search Engine Optimization, social media marketing, Google Ranking, Keyword Research, Keyword Analysis, Meta Tags (keywords, title, desc) Optimization, Tags Optimization, Google Analytics, webmaster tool. I think my skills and experience will help you and your farm.100% Manual Blog Submission

    ReplyDelete
  20. Infycle Technologies, the b est software training institute in Chennai offers the Python Certification in Chennai for students, tech professionals, and freshers. Apart from the Python Course, other courses such as Data Science, Cyber Security, Oracle, Java, Hadoop, Selenium, Android, and iOS Development, Big Data will also be trained with 100% hands-on training. After the completion of training, the students will be sent for placement interviews in the core MNC's. Dial 7502633633 to get more info and a free demo.

    ReplyDelete
  21. This is an informative blog. If you are looking for a house builder that will help you to build your house. Feel free to visit Country Living Homes to know more our services.

    ReplyDelete
  22. Wonderful blog found to be very impressive to come across such an awesome blog. I should really appreciate the blogger for the efforts they have put in to develop such an amazing content for all the curious readers who are very keen of being updated across every corner. Ultimately, this is an awesome experience for the readers. Anyways, thanks a lot and keep sharing the content in future too. digital marketing course

    ReplyDelete
  23. Cool stuff you have and you keep overhaul every one of us
    business analytics course in hyderabad

    ReplyDelete
  24. Kaspersky License Key also defend your browsers from sticked substance by remove them enduringly. Kaspersky Crack

    ReplyDelete
  25. Buy Google Voice Account from us with standard price. Full support and refund with any condition. Google voice will be high quality

    ReplyDelete
  26. Buy Yahoo Accounts from us with standard price. Refund with any condition and full support. Yahoo accounts will be full workable.

    ReplyDelete