Skip to main content

What's in a name(space)? That which we call a rose...

Posted by fabriziogiudici on September 7, 2009 at 11:10 AM PDT

Well, religious beliefs apart, I'm not a man of immutable mind. Indeed I believe that you *have to* change your mind when a proof demonstrates that there's something wrong with an idea (hey, I'm not saying that it's *easy* to make me change my mind, but this is another story...).

But I didn't have any reason to change my mind about how a Java namespace should be created - and this is by far the most ancient Java belief I have, since namespaces were the first thing I learned about Java in 1995/1996.

So, if you look at my open source code, everything starts with it.tidalwave.* (which the exception of org.jdesktop.beansbinding that I inherited) - this is because Tidalwave is my container, my home on the Web. In many cases, I've also taken care of decoupling the name of a project from its namespace; for instance, jrawio is it.tidalwave.imageio.*, and Mistral is it.tidalwave.image.*. In this way I can always change the name of a project (e.g. because of marketing, or because it turns out somebody owns a trademark on one of my names) without breaking compatibility with the code.

Still, it appears it's not enough - the choice about jrawio namespace has been questioned a few days ago on the dev mailing list:

What if you sell tidalwave? The FLOSS licensing guarantees the openness, but the product name then will become absurd.

What if you discontinue tidalwave?

It's the same silly story with GlazedLists, where all of glazedlist[s].[org|com] are available - but they choose to use a name of a supersmall company whose primary business is selling guns and ammo - because that was where it got its initial funding when the primary author was some kid in highschool. (

I must confess I've never thought of it. Tidalwave is my own, one-man company, basically it's a

Related Topics >>


pointless questions

Well, as soon you continue committed with open-source and technical learning, the namespace really doesn't matter.. and to keep linking the classes to your host domain seems fine...

remember that: "commitment" .. it is all about code right ?

if you change your code to enhance your code quality or to enhance the chance other people to benefit from it, congrats.. that's the right choice.. but if you think in changing it just to satisfy other people beliefs or questions, without any code improvement, what is the point on that action? to be "correct" .. or "third oppinions compliant" ? blargh :) it really doesn't matter :) IMHO

For several years people question our JUG about Java, Java life-cycle and a possible end of Java.. why not to include other technologies, to change our name, our logo.. to change everything preparing to an eventual Armageddon ? Blargh II :) no, no, no.. we don't change for doubt and fear, we change for better.. and if Jav adies some day, our JUG goes together.. and a new baby will born then with all the changes the non-believers wants.. not before that :) .. just to exemplify..