Hacker News new | ask | show | jobs
by hipsters_unite 4492 days ago
This seems like a cool project, but Q is already a well-used JS promise library so there's a bit of a name conflict there even if the libs are aimed at very different tasks...
4 comments

And the JS promise library in turn collided with the name of Q, the array-processing language, which itself collided with the name of another programming language named Q (http://q-lang.sourceforge.net). If you're naming a tech-related thing after about 1980, the single-letter names are all taken...
Haha, well fair enough - even more reason to have checked I suppose. Maybe textQ would be more appropriate given this project's use case?
Funny enough, another commenter mentioned a similar project in Go called "TextQL."

https://news.ycombinator.com/item?id=7290739

https://github.com/dinedal/textql

This is why I should not be allowed to name things, clearly.
Nah, I don't see a problem with name collisions in small or relatively unrelated projects like this.
Any library with a really short name (<= 2 letters) should be prepared for name collisions. If they wanted to avoid name collisions, they should have chosen a slightly longer, more descriptive name in the first place. I think in this context (i.e. really short name) it doesn't really matter who was first.
It's also a single letter in the alphabet. Anyone who names their project a single letter (or two) is expecting some amount of collision. The real question is whether or not the collision is worth it.

In this case, it might be... they are trying to make a command-line tool. So in theory, you'll be typing the command often, meaning that a short name is preferable.

But honestly, it would have probably been a better idea to use a more descriptive name.

Hi, i'm q's creator (HN made the name q uppercase, but it's actually a lowercase q). The reasoning was that it's used as a command line tool, and used often. So "q" and not "Q" :)I'm currently preparing the debian package, and one-letter names are not allowed, so it's going to be named "qsql" there.
Given that the command argument is in full SQL notation, which must be passed quoted, saving three or four characters on the executable name doesn't really seem worth it. The shortest example they give, a SELECT/GROUP query, is over 50 characters.
It's also the name of a well known Python debugging tool[1]. Name conflicts will happen when you pick a name for shortness, not clarity.

[1] https://pypi.python.org/pypi/q

Or a APL family Programming language, marketed for writing queries. This could lead to some trouble.

http://en.wikipedia.org/wiki/Q_%28programming_language_from_...