Skip to main content

Is JAS ruining the Java learning experience?

Posted by cdibona on March 2, 2004 at 1:52 PM PST

While I'm certainly not the first person to comment on it, one of the things that deflated my usual new-language euphoria was the vast collection of acronyms that Java brings with it. I'm not going to spend much time complaining about this, as I know how banal and trite that is , but it struck me as being a definite road block to the usually enjoyable experience of learning a new language.

My background is in C, Perl (and the lamentable Pascal before that), Python, and a variety of other languages. The last programming language that I had that eureka enjoyment of was probably python, after writing a program with an excessive amount of exception handlers that game me what amounted to a VM system for my application. It was very fun. Before that was a SQL-caching system for PHP that works across multiple heads, it allowed me to appreciate what a language is capable of and how development for it can go. In both cases the languages were very accessible and easy to get started with.

You might expect me to slam Java at this point in the article, but I'm not going to do that. I enjoyed a lot of new-language euphoria with Java when I first experimented with it many years ago, and I'm rediscovering that fun now. I don't need to explain to O'Reilly/Java.net the joys of learning that kind of thing. I'm a simple person in a lot of ways, I take great joy in Object Orientation and in the cool things you can do with carefully crafted objects (all hail encapsulation of data and code), but I don't want to digress from the thrust of this entry.

Specifically, I wanted to say that the Alphabet soup of java makes approaching it a bit intimidating. JXTA, J2SE, JINI, EJB, JBOSS, JMX, JVM, JCP, J2EE, JAAS, JCE, JCL (Psyche!), JIDL, JIT, JMS, JRMP, etc.... Most aren't such a big deal, but the circular nature of a lot of these (where the definition of one requires the expansion of another) is a bit much at times. Like everything else, the things that annoy you at first rarely stick as real problems for a language over time. For instance, the white space thing in Python is part of the language that I don't even think about anymore but was a bit annoying at the first and now I kind of appreciate it in a weird way. What were your pet gripes about Java in the beginning? What are still there? More productively, what gripes turned into the things that enamor Java to you now? Oh, and JAS stands for Java Alphabet Soup...

Next Entry: The elephant in the room.....