[Twisted-Python] Sub-project Naming

Michal Pasternak michal at pasternak.w.lub.pl
Tue Apr 20 14:39:05 EDT 2004

Ed Suominen [Tue, Apr 20, 2004 at 10:09:59AM -0700]:
> "Always, always, always use good, unabbreviated, correctly-spelled
> meaningful names." - http://c2.com/cgi/wiki?MeaningfulNames
> As I've posted on the twisted.web list and ranted on #twisted,  I feel very
> strongly that the proposed subprojects for twisted should  have meaningful
> names that convey their function and relationship with each other. On the
> #twisted IRC channel, Itamar talked about the use of tmlabs as a prefix for
> the subproject names. This makes perfect sense to me. What would you rather
> see in a list of packages, this:
> TimmysToy
> Lowdown
> Dot
> or this:
> tmlabs.web
> tmlabs.news
> tmlabs.dns
> Which is easier for the uninitiated user or potential user of twisted to
> comprehend? Do you want to convey information in a name or hide it?

Well, I am pretty uninitiated, so I'll describe how the things are from my
perspective. The answer is:

That depends.

I know, what does serializer do. I hardly had any idea what does "Jelly" do,
when I've seen that name for the first time. On the other hand, when I've
learned it, I prefer the name "Jelly", it is easier to use, than
"TwistedPickle", "TwistedSerializer", "SamePickleOnlyPortable". Is "Jelly" a
meaningful name for a serializer? I really doubt that, perhaps that's
obvious for native American/English people, not for me. Anyway, since I
understood it, I like it. That's one thing.

Here goes another: I know, what DNS mean and what does it stand for; I have
no idea what "Twisted Dot" is. Of course, I could learn it ("dot" is more
meaningful name for a dns, than "oak", for example - there's already such
product, and it does dns in python, btw). Also it is easier to create a cool
webpage graphics logo for "Twisted Dot - the DNS server" (you could just use
dot.kde.org slogan ;), than just for "Twisted DNS server". Perhaps it could
be called "tmlabs.dns", but then question arises:

	What is tmlabs.dns?
	[ ] DNS client
	[ ] DNS server
        [ ] DNS client library
	[ ] DNS server library
	[ ] All of the above
	[ ] None of the above
For example, currently phrase "use conch" is meaningless without the
context; it should be either "use conch server" or "use conch client". And I
really, really, really have no idea if naming server/client in a different
way would be a good thing.

Another thing... I don't really known if vendor-name-as-prefix is a good
idea. I like "twisted.*" more, than "tmlabs.*" ;)

More information about the Twisted-Python mailing list