I can contain my annoyance no longer. I've watched comments,
blogs, and industrial news come and go; I've had sleepless nights and
gone off my food.
My argument? The name "Java 2 Standard Edition" should be
changed to "Core Java," from a marketing point of view. If there is
one thing I've noticed over the last year or so, it's the growing
belief that J2EE (the not-so-core Java) doesn't need the "Standard
Edition," and I don't see much in the way of an explanation as to
what's required to get all this technology working.
While at JDJ I've been standing on a soapbox and yelling
about reading API docs and learning, teaching, and helping others.
Now I get the feeling that part of the problem lies with Sun and how
they encourage developers to download and learn the core principles
of Java properly.
Since a lot of software development is Web based, the core
API gets overshadowed by its bigger, well-dressed brother. J2EE
drinks fine wines, goes to expensive restaurants, and drives nice
cars. J2SE is merely forgotten, left in the corner to do the dishes.
It's a modern-day Cinderella. Scott McNealy told everyone about Sun's
10-million developer expectation at his JavaOne keynote. All very
nice, but if we don't really know which development kit to use to get
our "Hello World" working, then there's a serious failure in
communication that needs to be addressed.
I think we better look at the word "core"; the dictionary
definition is: "The most important part of anything." I'll go as far
as saying that the current development kit is at a stage where you
could, if you wanted, create a decent application without external
libraries from SourceForge or the Jakarta Apache project. The core
API has logging, regular expressions, and XML handling. It's come of
age; it's grown up a bit but it still feels like a misunderstood
teenager.
Sun should put more emphasis on the core aspect of the Java
language. In my opinion, this emphasis is missing at the moment while
they are trying to win the hearts of the enterprise community (easy
to see why they do that; that's where the money is). All very well,
but it makes it difficult for new developers to understand the basic
concepts of Java. If you point developers in the right direction,
they tend to pick up the concepts and get on with it; confuse them
and they tend to drop everything and moan. Don't tell me it doesn't
happen - I see the lists, read the blogs, and listen to the
conversations.
I've been talking to Alan a lot about getting back to basics
in what we cover in the J2SE section of JDJ. The quality of the
articles we have published is excellent and many more good articles
will follow, but I noticed a lack of articles on core principles and
working with the basics. As always there's an open invitation for
anyone who wants to put something together to please send in a
proposal (http://grids.sys-con.com/proposal). I know we've covered
all the basic stuff before, but the API has changed and it's worth
going over from time to time. There's no harm in a refresher.
I'm not in the area of Sun bashing, but I do think they need
to revisit how they communicate their products, and how they
encourage teaching the concepts (the Java Tutorials are looking a bit
long in the tooth, but are still worth their weight in gold). If
Scott McNealy can shout about Java as well as he does, then I'm sure
there's something we can all learn from him when it comes to selling
our wares on the Internet.
I just hope the dream doesn't become an "all talk and no
action" problem that Sun will come back to in 12 months time, still
trying to figure out why the developer numbers haven't increased as
they had hoped.
About The Author
Jason Bell is the senior programmer for a B2B portal. He's also a
keen supporter of people reading the API docs before asking
questions. In his spare time he's involved with building RSS
development tools.
jasonbell@sys-con.com