Open discussion of IT Business

Enterprisey IT Journal

Subscribe to Enterprisey IT Journal: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Enterprisey IT Journal: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn

Enterprisey IT Authors: Skytap Blog, Application Security, Lori MacVittie, Andy Klee, Yakov Fain

Related Topics: Java Developer Magazine, Enterprisey IT Journal

Java Developer : Article

Mentality Shift: from a RAD tool to Java and back

A blog by Yakov Fain

Mentality of programmers depends on a  programming language or tool they use. Should they even try to learn what's under the hood in a particular framework?

Ten years ago I've been programming in PowerBuilder. This is a RAD tool and it does a LOT for you automatically. Creating a simple CRUD application there is a matter of one day (hello from the 90th, RoR). Anyway, I did not care HOW PowerBuilder did it under the hood.

Then I switched to Java and started to spend all time programming this "under the hood stuff".  I've learned how to MANUALLY program servlets, JSP, EJB, et al.

Last year, I was working on a project that was using WebLogic's Workshop 8.1 (not a good tool), which was also providing a lot of auto-generated functionality. But after so many years of writing everything manually, it gave me an uneasy feeling: the tool was instantiating some objects (if I remember correctly they were called handlers) internally, without even providing the Java source code for that. One day we started getting sporadic NullPointerExceptions caused by these internal objects. That time I felt very insecure - nothing depended on me (in my PowerBuilder life this would be perfectly fine - my mentality was different). Tech support guys kept asking me to reproduce the error, but it's really hard...Neither level 1 nor level 2 support was able to help me with their own framework

These days Java has fifty frameworks that do the same thing as Struts. This is insane. A couple of days ago I ran into an online posting by a Delphi programmer who wants to switch to Java Web development. He’s asking if he should study Echo 2 or Wicket framework. He’s not even planning to learn the basics such as Servlets and JSP. He does not even want to understand how Java Web applications work under the hood. Yet another wannabe framework coder. Yet another dispensable commodity. This was your choice, but do not complain when you lose your job because there are legions of programmers in India having the same or better understanding of what’s going on in a Web application and can do this job for a half price.

Now I'm using another RAD tool called Flex 2 from Adobe. It has an XML-based declarative language called MXML that gets compiled into the object-oriented ActionScript 3, which in turn gets compiled into a bytecode and runs in Flash Player, which is a virtual machine. But the good news is that mxml compiler has a special option to keep the generated ActionScript code. Plus, the source code of Flex framework itself is available as well. This gives me some confidence and understanding of what's under the hood, and I can debug it if need be.

The moral: use a framework or a RAD tool to make your day-to-day life easier, but know how it works internally...just in case

More Stories By Java News Desk

JDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.