To be honest I really do think the name as long as it is
not completely outlandish and contains the word Java is not a
problem. Ideally it would have been great if the ultimate
technology name could start with Java, but I know exactly how
difficult that will be to get Oracle to agree too unless there
remains some nominal level of JCP involvement. I really do
think EE4J is actually a decent name on its own right.
However, it is clear the use of the javax package for new
and existing specifications is also very important to the
community. Is the decision on that really as final as has been
suggested by a few folks a few different places? If not, what
can the community do to help sway that decision in the right
direction?
“You
keep using that word. I do not think it means what you
think it means.” — Inigo Montoya, The Princess Bride, on
Vizzini’s use of the word “inconceivable”.
On Thursday we announced that
the draft top-level project charter for
Eclipse Enterprise for Java (EE4J) was available for
community feedback. Since that time, we haven’t received
any feedback on the charter, but we have certainly had a
lot of passionate feedback on the choice of name. If I
could, I would summarize the bulk of the feedback that
we’ve seen as “…EE4J is a pretty good acronym, but WTF is
Eclipse doing in the name?” A lot of that feedback is
based on some incorrect assumptions about what the EE4J
name means. Which is totally my fault, because my initial
blog post did not provide any context for how EE4J will be
used, and not used, as a name and a brand. Hopefully this
post will correct that.
Before I begin, I have to mention that a very large
caveat on everything that follows. This post is based on
my best guess on how things are going to work out, with
the information I have at this moment. However, there are
a significant number of agreements that have to be
discussed regarding names, trademarks, and so on that have
not yet been completed. It is possible that the future
will not unfold as I think it will. So with that said….
EE4J is not the
brand
I think that many people are assuming that EE4J will
become the brand that replaces Java EE. Wrong. Java EE is
a certification mark. To label something as “Java EE”, you
need to get a license from Oracle and pass the TCKs. There
are many implementations of Java EE such as WebLogic,
WebSphere, JBoss, and Glassfish. EE4J is the name of the
top-level project at the Eclipse Foundation. As such it
is the umbrella under which the source code and TCKs for
Glassfish, EclipseLink, and (hopefully) Eclipse
MicroProfile will exist.
We are months away from even starting to define the
specification process that will be used in the future.
However, when we do I expect that this new process will
create a new certification mark which can be properly
considered the new “Java EE” name. We will be engaging
with the community in the selection of that name.
The existing
project names will continue to be used
I have seen some comments along the lines of “…it’ll
be weird to install Eclipse Enterprise for Java into
IntelliJ”. I’m actually pretty sure that what people will
be installing is more likely to be called something like
Eclipse Glassfish, or Eclipse MicroProfile.
Again, EE4J is the name of the top-level project at
Eclipse. The projects within EE4J will continue to have
their own identity, just as they do today. The committers
and the PMC for EE4J will be deciding what artifacts they
will be releasing and whether anything actually ships
under the name EE4J. Maybe they will, maybe they won’t.
But only time will tell.
The solution
space is smaller than you think
Anyone who has ever built and maintained a large
piece of software knows that naming is hard. Naming widely
used technologies that take on a brand identity and which
require trademarking are harder still. Selecting the EE4J
name had to solve a number of real world constraints:
- We wanted it to contain the word Java, but it also
had to comply with the Java trademark guidelines. Oracle
is the only entity that can use the word Java at the
beginning of a name. Which meant that using “for Java”
was pretty much a fixed requirement.
- Whether you call it JEE, J2EE, or Java EE for the
entire life of the enterprise Java platform “EE” has
been in the name. Continuing that tradition provides
some clear benefits in terms of continuity and brand
recognition. For what it is worth, we basically selected
the acronym first and then backed into what the letters
in the acronym might mean.
- The name has to be available to be trademarked. We
actually ran full legal trademark searches on a couple
of alternate names, and EE4J was the clear winner in
terms of availability.
Summary
Hopefully this post provides some context for the
naming choice that will help people understand what EE4J
is, and is not, as a project name, brand, and trademark.
As Mark Little of Red Hat said in his post earlier today,
There’s a lot of pent-up passion and energy around
Java EE and it would be so much better if individuals
focused that on the charter at this point than complaining
about the name. Yes, I understand that some people feel
the name is important to the success of this effort but I
can tell you all that there’s a lot more to choosing a
name for a foundation or massively successful project than
just … choosing the name.
The passion and commitment of the people in the Java
EE community is amazing. Working with this community and
welcoming you all to Eclipse is an opportunity and a
responsibility that all of us at the Eclipse Foundation
take very seriously. The future success of EE4J and the
enterprise Java platform is going to be determined by
whether we can get you talented, smart, and passionate
Javaistas to contribute to the projects and the
community.
I am looking forward to JavaOne next week, and hope
to see many of you there!