So, we now know how long it took and what all it took to come out in the way it is right now. Once it was out there and the frenzy growing, there was bound to be some misinterpretations, some misconceptions and some "I can't believe its".
Lets take a quick look at some misconceptions:
- An extension of html
- Just another, "easy" programming language
- Actually, a universal language for all platforms
- Darn slow for serious applications on a specific platform
- Applets - oops! Security Issue
An extension of html
I would often hear some three-four years ago that Java was an extension of HTML. Java and HTML are far from being anything close to each other. HTML is a scripting language, it describes the layout, structure and presentation of a web page and Java on the other hand, a programming language. The only common factor between the two is there are HTML extensions for placing Java "applets" on a web page.
Just another "easy" programming language
Whatever might be the general notion about computer programming, it is not an easy run-of-the-mill task. One needs a special aptitude to do it. Now, do not get me wrong, I am not saying it is rocket science: but you have to understand writing code for fun is different than serious application programming expected to perform in a particular fashion. Java is not as "easy" programming languages, as many perceive. You may not be required to know all functions and constants listed in the Java Application Programming User's Guide, yet you would need some basic ones to put it to real work.
Actually, a universal language for all platforms
Could well become a reality, and most of the vendors want this to happen but for Bill Gates' pride. Many applications like word-processors, photo-editors, web browsers already are working perfectly on desktops using the advantage of the speed of the processor and the native user-interface library and well, have been ported to all of the 'important' platforms anyway.
Darn slow for serious applications on a specific platform
Whatever the language be, no matter what kind of application, it usually takes time to decipher and detect a mouse-click, one of the user-interface interactions. As a matter of fact, many programs spend most of their time on things like mouse-clicks. To prevent such a thing with applications written in Java, something called JIT (just in time) compiler was brought into being. On many operating systems JIT is available, and now all you need is run the bytecodes through it and boom! Most of the performance issues are gone. For computationally intensive work such as encryption, given its ability to keep up with the data rate of a network connection, Java is great for network-bound programs. It does not matter whether C++ is faster, fact is Java is easier to program (no pointers to handle) than C++ and definitely, portable.
Applets - OOPS! Security Issue
"Applets - Man they are such a big security issue, they are vulnerable to attacks." Where? On what? How? - Probably on one specific browser that has had its own vulnerabilities and failures. When you have a section of researchers trying just to find flaws and to defy the strength and sophistication of the applet security model, you are bound to have reports of failures in the Java security system. No doubt when something as big as Java arrives on the scene, it is got to be controversial for a while and definitely negatives are publicized. Change is the only thing constant, yet so difficult to acknowledge. Right? I, as a professional person having a first hand experience of Java and the other "widely used" technologies can assure you there never was ever even one application or system compromised. And I will not get into how many of virus attacks, literally millions, are carried out on great and widely used applications like email tools, word processors, and the most wonderful of all "macros". Do we need publicize the abuse through active-x controls that can be achieved? Matter is, it is so apparent that we don't even bother to go there.
A'ight fellas, this is it for now and though there are many more myths like Java eliminates the need for CGI scripting; with Java one can replace a computer with an Internet appliance; I guess I am going to try to explain you more about what Java is and can do rather than tell you what it is not and what it cannot do. Fair enough I guess.
So until next time, when we get Java-ized again,