>> "Why don’t we use this format for locating Git resources?"
Because everyone is already doing what your article is telling them to?
I'm sure there's a point to the article, but I found it strange that this call-to-action style post showed numerous examples of how this is already being followed, but only one - completely fictional - example of not following it.
It's a great discussion. Although URLs work quite well, they are not uniform[1], do not necessarily represent resources[2], and are used for other purposes than location[3]. Thus, there is room for both sides to be right: usually, you should treat a URL as everyone else does, but sometimes, it's smarter not to.
[1] What is uniform about them? They mean different things, depending on the context in which they are accessed. http://experts-exchange.com/whatever returns different content, depending on your user-agent, your /etc/hosts, your firewalls and network filters, and so on. Granted, they satisfy a strict technical sense of the word "uniform", but that meaning shouldn't be conflated with its english meaning, as it is in this article.
[2] "Unlike many URLs, the mailto scheme does not represent a data object to be accessed directly." Section 3.5, http://www.ietf.org/rfc/rfc1738.txt
[3] The ":password" part of many protocols is authentication, not location.
So, that leaves '3', which is not exactly secure and most applications that can use it will also happily ask for a password from the user in interactive mode when it isn't supplied.
All I can figure is that some portion of the young hacker crowd grew up with such ubiquity of URLs that they never reflected on the meaning of the name. Or bots.
URLs are a subset of URIs, the differences are subtle for the most part you can ignore the existence of URNs and pretend URL == URI but it is useful to understand how they relate and that there is a difference.
I typically use "github:jrockway/foo.git", not "ssh://git@github.com/jrockway/foo.git". SSH invented its own format; it didn't reuse regular URLs. (Complicating matters, perhaps, is my .ssh/config file, which eliminates the need to specify the username and hostname in the host part.)
Comments
>> "Why don’t we use this format for locating Git resources?"
Because everyone is already doing what your article is telling them to?
I'm sure there's a point to the article, but I found it strange that this call-to-action style post showed numerous examples of how this is already being followed, but only one - completely fictional - example of not following it.
With the number of upvotes it is getting I am wondering if I'm missing something.
There must be some amazing revelation in there somewhere.
You and I both, especially since it's a repost http://news.ycombinator.com/item?id=1230768
It's a great discussion. Although URLs work quite well, they are not uniform[1], do not necessarily represent resources[2], and are used for other purposes than location[3]. Thus, there is room for both sides to be right: usually, you should treat a URL as everyone else does, but sometimes, it's smarter not to.
[1] What is uniform about them? They mean different things, depending on the context in which they are accessed. http://experts-exchange.com/whatever returns different content, depending on your user-agent, your /etc/hosts, your firewalls and network filters, and so on. Granted, they satisfy a strict technical sense of the word "uniform", but that meaning shouldn't be conflated with its english meaning, as it is in this article.
[2] "Unlike many URLs, the mailto scheme does not represent a data object to be accessed directly." Section 3.5, http://www.ietf.org/rfc/rfc1738.txt
[3] The ":password" part of many protocols is authentication, not location.
[1] experts-exchange is abusing the urls, the fact that they are not 'rest-ful' does not detract from the URL scheme but from experts-exchange.
[2] Mailto is a URI, not a URL. 1738 has long been superseded. http://shadow2531.com/opera/testcases/mailto/modern_mailto_u...
So, that leaves '3', which is not exactly secure and most applications that can use it will also happily ask for a password from the user in interactive mode when it isn't supplied.
Good catch, the dupe checker didn't catch it because of the 'blog' in the original link.
My two cents:
$0.01 People are upvoting based on the title and not the article itself
$0.02 It could be some knee-jerk reaction to the removal of the http:// part of URLs in Chrome. It's then a fear-driven upvote.
All I can figure is that some portion of the young hacker crowd grew up with such ubiquity of URLs that they never reflected on the meaning of the name. Or bots.
Let's help them along a bit then with some real info instead of this watered down errm... stuff:
http://www.faqs.org/rfcs/rfc1738.html
Which has since been superseded by
http://www.faqs.org/rfcs/rfc2396.html
and in turn by:
http://www.faqs.org/rfcs/rfc3986.html
I think that's where we are right now, I might be wrong.
Happy reading.
Incidentally, the article refers to URLs, instead of URIs:
http://en.wikipedia.org/wiki/Uniform_Resource_Identifier
URLs are a subset of URIs, the differences are subtle for the most part you can ignore the existence of URNs and pretend URL == URI but it is useful to understand how they relate and that there is a difference.
I typically use "github:jrockway/foo.git", not "ssh://git@github.com/jrockway/foo.git". SSH invented its own format; it didn't reuse regular URLs. (Complicating matters, perhaps, is my .ssh/config file, which eliminates the need to specify the username and hostname in the host part.)
ssh didn't invent that format. It's the rcp format, which is older than URLs. It's hard to reuse something a decade before it exists.
Well, yeah. That's why it's wrong to criticize the article by saying that they made up the example. They did not.