- That's how phone numbers work, the most significant part of the number is first (<country-code> <area-code> <local-number>) so the most significant part (TLD) should come first in domain names. Users like systems that look like other systems they are already used to.
- <tld>.<domain> would help thwart phishing attacks as most users read left-to-right, so they see right away when the domain is incorrect. Compare this to "google.com.phishing.com" which tricks users because they stop reading after they see "google.com..."
- When you read or hear "go to com.myawesomedomain" you know a domain name is being mentioned as soon as you hear "com.". It is not always obvious otherwise (you have to use specific language like "browse to").
<House number> <Street>
<City> <State> <ZIP code>
Except for ZIP code, the address elements are ordered in descending specificity.
I would say its easiest if the most variable part is first, not only for autofill but for the way I think about it.
When you talk about "most significant" you mean the "largest" category. To me the actual most significant is the part that identifies the most unique thing you are typing in, and that tends to be the domain.
I actually suspect if we started with a clean slate, it would make more sense to start with "more generic/less detail" to "less generic/more detail." Urls after the domain already do that (well, organized sites, do), e.g. www.site.com/cleaningsupplies/clorox
Then we could have (expanded for example): company.google organization.charitynavigator uk.company.google xxx.whoa (for those that remember the proposal for a xxx tld)
But there's probably a technical reason for it being the way it is that I'm not aware of or something.
Of course, I realize that this is a tall ask given that you have conflicting brands around the world. Perhaps there should be some linguistically obvious [to the average non-I.T. person] way to differentiate between conflicting brands...
I feel like the most obvious should be that we should never have to negotiate security by typing HTTPS... that should be the default state, falling back to HTTP only if HTTPS was unavailable and a warning should be given to the user. The average user [indeed any user] should never have to "look for HTTPS" or "look for the padlock". The whole browser UI should be more intuitive than that - the user should be able to look at the browser window and infer that communication with that site is not secure.
I'm not sure what the address structure should be... perhaps something like(?)
ISO_COUNTRY_CODE/REGISTERED_COMPANY_NAME/SITE_NAME/PATH/TO/RESOURCE
Examples:
- UK/COMPANY/ARGOS/ABOUT-US [Brand Information Page]
- UK/COMPANY/ARGOS/ONLINE-STORE/HOME/FURNITURE/BEDROOM/KIDS/BEDS/PIRATE-SHIP-BED [Catalog Item]
- UK/COMPANY/ARGOS/STORES/ACOCKS-GREEN [For local information]
- US/COMPANY/AMAZON [Brand Home Page]
- US/COMPANY/AMAZON/STORE/ELECTRONICS/DVD/LORD-OF-THE-RINGS [Catalog Item]
- US/CHARITY/LIVESTRONG [Brand Home Page]
- CA/CHURCH/UNITED/SASKATOON [Localized Home Page]
Perhaps a global brand such as Amazon or Facebook wouldn't even need a country code...or it could be figured out by an algorithm based on the user's context: FACEBOOK could map to UK/COMPANY/FACEBOOK for a person in the UK or US/COMPANY/FACEBOOK for a person in the U.S. The user could override the location by manually typing the address. If the user's IP address belonged to Amazon in the US, then they could type in just the site and resource address and the rest of the address could be construed from their context: Typing in STORE/ELECTRONICS/DVD/LORD-OF-THE-RINGS would automatically be understood as: US/COMPANY/AMAZON/STORE/ELECTRONICS/DVD/LORD-OF-THE-RINGS. For a residential user, their IP would be assigned to the block for their country, so any sites not explicitly specified would infer a site within their own country.
If the country code isn't known, then some algorithm could attempt to figure it out. If it was ambiguous, then the user could be presented with search results by a preconfigured [or their favorite] search engine.
Anyway - as Tim Berners Lee says... it's too late now. Until someone sets about re-imagining the entire infrastructure that is today's internet, we're stuck with what we've got.
Everything old is new again.
Or how about com/ycombinator/news?
Human language is all about optimizing for context. Abbreviations, contractions, etc. For humans, most of the time the current year and/or "com" are the default context, so it makes sense to present the most significant differentiating information first. If you think about it, that's also why "www." got dropped.
With cell phones and unlimited nationwide calling plans, it's more common to find an assortment of area codes in contact lists these days. What you're describing is not actually a default context. It's just your personal area code. The person next to you might very well have a different one.
So I'm not sure what "old enough to remember" means when it's still true today. 95% of the numbers I call now are local businesses, so I only dial seven digits.
I don't know, maybe you're from the future or something.
It's only the default for new numbers. People carry their old numbers with them when they move, unlike the olden days. Bottom line, contact lists have a lot more mixed area codes now.
> 95% of the numbers I call now are local businesses
That might explain the difference of perspective here. Most people call other people on their phones, not just businesses.
Fixed that for you.
If it was done in the same direction as folders, you wouldn't even have to know anything about domains.
you know there's an actual reason for this?
com > google > www
"www" is a subdomain of "google" which is a subdomain of the top level domain "com"
historically that was a conventional way to separate services (ftp.google.com, www.google.com gopher.google.com)
But actually 'web' reveals to the graph of hyperlinks between http/html pages that let you navigate from page to page, server to server. www denotes the host is primarily a http server serving web pages.
You could argue it's superfluous these days - if you are typing it in an address bar, you hope it is a http server, and if you are typing it in a ssh prompt, you know it's your ssh server. People add it because it's a convention and some users might get confused if you don't... (it's probably a vhost anyway most of the time)
com. only serves the nameserver (NS) addresses for example.com., and if they are within the same domain, their IP addresses. It does not serve the rest of the records for example.com.
You can see this easily with e.g.:
dig -t any google.com. @a.gtld-servers.net.
vs.
dig -t any google.com. @ns1.google.com.
There is no real advantage of having it be 'www' coming from DNS...
There is a somewhat more modern problem which is that having a domain be a CNAME (the DNS equivalent of a by-name redirect) means it can't also have MX records and receive mail; the CNAME also ends up "redirecting" everything, including MX lookups. So if your web host offers yourdomain.someawesomehost.com and you decide to point yourdomain.com to it via CNAME, having you@yourdomain.com doesn't work unless yourdomain.someawesomehost.com is configured to receive mail for yourdomain.com.
google.com.www is in neither ascending or descending order.
www.google/stuff works now that we have generic TLDs and .google is a TLD, but before that it ignores the possibility of google.net and google.org. This may not be a problem for a unique trademark like google but not all domains are trademarks.