It's not surprising that there would be namespace collisions given the thousands of programming languages there are out there and the limited number of "cool" names available. I suspect someone at Google could have merely consulted http://en.wikipedia.org/wiki/List_of_programming_languages and decided that "Go" was free.
That said, I still find it inexcusable that Adobe's over-the-top PR machine has stolen the name "flex" from a well-known open-source lexer generator... mumble mumble....
'Go' is a ridiculously short and context-less name for either project. He really doesn't have much of a soapbox to stand on and proclaim that his name is unique and unusual.
I suggest they both switch their names to something less short, I'm recommending 'Chess' or 'Checkers'.
C is also, and was in 1970, a terrible name for a language.
In fairness to K&R though, they weren't able to predict that search engines would exist and single-letter names would be a pain in the ass. It was still a terrible name though.
A more careful analysis: "C++" requires the use of the shift key for all characters, and extension below the home row and to the top row. On the other hand, the characters of "Go" are on the home row and the row above. The shift key is only required for the 1st character.
So the actions for typing "C++" are going to be [shift] [C] [+] [+]. For typing "Go" [shift] [G] [o]. The "+" keys are repeated, which makes the 2nd action faster. However, the spread between C and + is much wider than between G and O.
You need three keys or two keys and a long hand movement to type C++, but you only need two keys for 'go' - and the keys for go are alternate hands and strong fingers, but even the nearest + symbol requires a weak finger or a contortion.
Also, go is typed as a typical word more often than ++ is, so it's more habitual and familiar and automatic.
Google isn't allowed to use the name 'gmail' in germany because someone owned the trademark 'g-mail ... und die post geht richtig ab' (or something similar). So the big guy doesnt always win and an exclamation mark doesnt make a difference.
So if you feel like it, go for it. You might win. (I don't know if the word go is to common to count as a trademark, though).
I'd never heard of OS9 until they got stuck into Apple for releasing Mac OS 9 and commonly referring to it as "OS 9". And I haven't heard of OS9 since, either.
On the one hand, it's kind of hard to claim two letters.
On the other hand, Rob, Ken, et. al. really could have done a little Googling around before they chose to name their language after an existing language, no matter how obscure.
It strikes me as a little bit evil not to capitulate, particularly if the motivation not to do so is "this would really hurt our project so screw off little math guy" as opposed to "we think we are right and this name is fair game."
If the Google team thinks this is a non-issue, I'd like to hear some logic.
One is called Go, the other Go!. I don't see the problem (C, C++, C#...) - it is common for programing languages to just differ by one letter in their name.
Except that both C# and C++ are related to C. If Go! and Go are related languages, then the similarity in names is helpful. When the languages are dissimilar, the similarity of names is confusing.
This, I think, is ultimately the point of trademarks. It entirely about "property," it's also about clarity.
Well namespace clashes are inevitable; In one sense I'd want to say "let the best language win"
But this is an outlier case because the "owners" are polar opposites in both the age of the language and who they are. Google would be polite to change names but I wouldn't be surprised if they dont.
That's what the trademark system is for. If you create a programming language and don't want someone else to use the same name then register the trademark - yes that costs money (quite a bit for an individual), but then it should to stop people just registering names and squatting them.
Of course "go" is probably too generic/descriptive to be a trademark ...
Very true. But there's also a place for common courtesy and pragmatism, bypassing legal inefficiencies. Go is really not that great of a name, so there is no loss for Google to change it.
As much as I hate to defend copyright and trademarks, if the creator of go! did not trademark the name, then the responsibility lies with him. If one where to try to avoid the name of every pet project out there, it would be nearly impossible to come up with a name that someone used for a weekend of abandoned code, that was thrown out onto the net. Given that the guy wrote a book on his language, I sincerely hope that he had the forethought to trademark the name.
You certainly sound like a lawyer, but your profile says you are not.
Why do you think there are no legal ramifications? Same name, same domain... you'd have to be a lawyer to really know if there was a case to be made, right?
It'd be better to do it now and leave this little dude alone than to continue the ambiguity. Google's Go is only a day old, not too much to lose if they change the name now.
Also, maybe math guy has some money, or will find some money, and litigate, as he's already expressed his displeasure at the collision.
I think it's best for everyone if Google just man up and make the change now. In the end it will only generate more publicity for both Gos, and everyone will be happy, and the threat of unpleasant ramifications (including bad PR and possible litigation) vanishes. Fingers crossed that Google will do it, though I doubt they will.
Just commented on the comments page at the original link, but I'll post it here too.
I ran into a similar problem on an open source project I'm working on... we had a namespace collision on a twitter client, both with the name "Bluebird." Their team had a very talented designer, so I offered to change the name of my project in exchange for some artwork from them. I ended up changing the name of my project to "Buzzbird."
Surely there must be some way that Google could make a similar arrangement w/ fmccabe?
Google definitely should've researched this more, and they should probably change the name, but don't forget that this isn't as simple as just typing a new name into a text box. There's a mailing list, a compiler, repository and website names, environment variables, internal references in the code, a keyword in the programming language (which wouldn't have to change, I suppose), supporting programs other than the compiler (pretty printer, documenter, etc.), and I'm sure plenty of stuff I'm forgetting. Something as simple as a name change probably means weeks or work and almost certainly lost momentum.
If only they'd picked a name that was easier to Google, they would have found this precursor.
If McCabe's selling a book based on his language, there's a reasonable case to be made he has a commercial trademark in "Go!" for a programming language.
Maybe Google can get McCabe's permission to call their language 'Go2'. Or perhaps "Went". As in, "the name 'Go' got up and 'Went'.".
Or 'Going'. Except they should say it rhymes with 'Boing', so that it's not the present participle of the trademarked 'go'. As in, "GOing Is Not Go!"
i think this is an interesting submission, but the title is not very hacker news-ish. "Please don't do things to make titles stand out, like using uppercase or exclamation points, or adding a parenthetical remark saying how great an article is."
(this is at least the fourth or fifth time i'm calling somebody on a title in as many weeks. i'm not crazy about being the news.yc scold. but every one of those titles did indeed get changed to something more neutral by the submitter or the editors, so i think i'm within community guidelines here.)
I would be more likely to study a language that has a sensible name, has a web site that doesn't hurt your eyes and has a manual that isn't "One of the worst manuals I've ever seen in my life", http://c2.com/cgi/wiki$?GooLanguage.
It's not worse than Arc in that regard. Goo broke a lot of conventions, yes, but if you know your way around Dylan, Self, and Scheme, you will get Goo fairly easily.
Strictly speaking, no registration is required for trademark protection in the U.S. - you simply need to have used the mark.
Registration is required to bring suit in Federal court, to prevent infringement from imported goods, to claim protection internationally, and to gain presumption of exclusive ownership nationwide.
You can also use the (TM) symbol to assert your claim on the mark without having registered it.
From the USPTO website:
Is registration of my mark required?
No. You can establish rights in a mark based on legitimate use of the mark.
No. Google is very good at putting new things temporarily higher in the results. Just because it's #2 today doesn't mean it was #1 yesterday. It could easily have been #2147483647 before, but this spurt of activity creates mentions and links that has propelled it into the top of the results.
One of the papers on it is still at the top of the second page of Google search results for "go programming language" as I write this, despite the huge numbers of new pages about Google's on offering.
because one important difference between judges and compilers is, judges are generally clever enough to screen out technically correct exploitations of egregious edge cases
Hi. I noticed you also posted this on Reddit. While the old title may actually have a positive effect on the story's popularity there, it has the reverse effect here. As you can see in the guidelines (http://ycombinator.com/newsguidelines.html), putting capitals in the title is frowned upon. Moderators routinely fix submissions in this way, so it's nothing personal.
Just the normal human tendency, weak people taking stand against big guy, to prove their existance. There is no point arguing, nor do i believe google did something evil. They just did a silly mistake and are being bashed more than their share, a bit unfair, not to mention an unknown guy with his unknown language is getting free publicity.
http://lucacardelli.name/Papers/Squeak.pdf [A New Jersey approach to the GUI, 1985]
vs
http://portal.acm.org/citation.cfm?id=263754&coll=portal... [Smalltalk dialect, 1997]
Their stated goals are identical, each more identical than the other.