1963: Namespace Land Rush
|Namespace Land Rush|
Title text: You can also just mash the keyboard at random, but you might end up with a gibberish name no one can pronounce.
When a new web service starts, such as a forum, a social media server or an email portal, the people who sign up get to choose their username on the service, which, in most cases, blocks future users from using those usernames. Common names such as "john" are likely to be taken quickly. This is analogous to the way that land was distributed in America, with the first to claim able to choose the best land.
This comic is a list of usernames Randall suggests should be used if they are available.
The title text is a self-reference to "xkcd"; the name of the comic is a purposefully unpronounceable phrase created by Randall. The fact that an unpronounceable name is portrayed as a disadvantageous outcome is also humorous because the comic has a section dedicated to unpronounceable usernames.
|Straightforward (Usernames that a person would use under typical circumstances)|
|<Your usual username, if any>||Most internet users will have settled on some unique handle that they try to use across all platforms. Even if this wasn't a new service, most people would try this first.|
|<Your given name>||More rare is using one's nickname or first name as their username, since the amount of common names will mean many users share a name. Thus, if you can get your given name, you will have a simple username that many others wanted, and without resorting to prefixes or numbers (i.e. Xx_MyName00_xX)|
|<Your full name>||Similar to your given name, but slightly more unique since a last name and/or middle name is added.|
|<Initial><Surname>||A common second choice if a given or full name is already in use.|
|<Surname>||Possibly available if your last name is more uncommon; names like "Smith" or "Kim" will probably be taken faster than even given names.|
|Recognizable (Usernames that would make it look like the email came from an official source within the organization named)|
|Registering the name "Google" would allow for communicating on the site (or even outside of it) with a name that appears to be an official Google account. For any of the examples in this section, you would select the names for the same reason. This has been done in the past with both humorous and nefarious results.|
|iPhone||Many services would mark messages sent from an iOS client on iPhone as "sent from iPhone".
This could make people believe that your messages are sent from an iPhone even if you don't own one.
|Similar to Google above.|
|Bitcoin||One could pose as the Bitcoin Core development group by using this handle and/or scam uninformed users interested in cryptocurrencies.|
|Obama||Impersonating the former president, supposedly to send messages as them to make them seem bad (or not).|
|Canada||Impersonating a whole country might get you in trouble.|
|NFL||The American "National Football League".|
|Garfield||In the original "GMail" service on the Internet, the G stood for "Garfield".|
|<Your city>||Impersonating the official account for your place of residence.|
|NASA||The American "National Aeronautics and Space Administration". Randall worked there as a contract programmer and roboticist.|
|<Name of person who runs the service>||Impersonating the site owner can allow you to gain the trust of users.|
|Causing Trouble (Usernames that might cause errors when mixed with the service's back-end code)|
|User||This is usually the default username for a non-administrative account. This may trick a user that this is owned by the operator of the service.|
|You||Many services display "You" as the signed-on user, so naming oneself "You" makes users think that they are you/they are signed on when they aren't.|
|Guest||Attempts to fool users into thinking that they have a guest account.|
|Account||The opposite of "Guest" (someone without an account). However, for someone with an account, their username will usually be displayed. There is an active user named "Account" on Explain XKCD.|
|Causing More Trouble|
|Admin||Impersonating to be a system administrator will let someone fool people and cause a lot of trouble. In particular, it could be used to obtain SSL certificates by demonstrating ownership of a supposedly internal address.|
|System||Pretending to be a system-controlled account - might give permissions if the server checks by name.|
|<Name of service>||Pretending to be the official account of the service. There are a lot of spammers who did this on Explain XKCD.|
|Help||Pretending to be the help account. This could led to many questions from new users.|
|Error||This may trick users to do what the user says as they could claim that it was a legitimate error.|
|Impossible to Say|
|Hyphen-Emdash||Could be read "Hyphen hyphen Em dash" or "Hyphen dash em dash". In addition, in many markup languages (such as the one used by this very wiki) one can create a larger hyphen with some variation of an "&mdash" command, which could theoretically be pronounced "emdash."|
|Dash-8hyphen-8||Could be read "Dash dash eight hyphen dash eight" or "Dash hyphen eight hyphen hyphen eight". "Hyphen eight" sounds like "hyphenate".|
|Zero0ne2numeral2||Could be read "Zero zero one two numeral two" or "Zero zero ne two numeral two" or "Zero oh ne two numeral two".|
|KrisasinHemsworth||This would be confusing to say out loud, as it would sound like the user was saying that their username was "Chris," spelled the same way that famous actor Chris Hemsworth spells his name. However, the actual username uses the name "Kris," spelled a completely different way than Chris Hemsworth's name, and the phrase "as in Hemsworth" being also part of the username, rather than a clarification of the spelling of "Kris" as would be assumed.|
|TheWord&Ampersand||This would also be confusing and difficult to communicate, as anyone trying to read the username to someone else would say "The word ampersand ampersand" which could be interpreted as "ampersand&" or "ampersand ampersand". Having the phrase "the word" in front of a symbol makes it quite difficult to communicate which variation of ampersand (word or symbol) is actually being referred to.|
|ZettaWith3Teees||Read aloud, this would lead the listener to expect a username of 'Zettta'. Clarifying that "with three tees" is text and not description would in turn make it difficult to explain the spelling of 'Zetta' with two 't's, and 'Teees' with three 'e's.|
|<Single Letters> and <Single Numbers>||These are highly valuable. The Twitter handle "@n" for example is constantly bombarded with offers and hacking attempts.|
|<Common Words>||Also highly valuable; overlaps with "Recognizable" and "Causing (more) Trouble".|
|<SQL/JS Injection>||Codes such as "Drop Table" intended to cause errors or even damage the service's back-end code. (See Comic 327)|
|ASDF and QWERTY||Since those keys are right next to each other (on English language layouts), they are often typed as placeholders.|
|Yes||This might be a Beret Guy-esque misunderstanding when filling out the sign up form. When encountering the form field "Username:" someone may type "Yes" (as in "yes, I want a username") instead of specifying it.|
|Bot and Computer||Pretending to be a bot.|
|Blocked||When users get banned or blocked, their name is often replaced by a string like this.|
|Deleted||Some services like Reddit keep up user posts and data after account deletion, marking the content as submitted by the user "[Deleted]" or "Deleted".|
|Jeeves||Might refer to Ask Jeeves (now Ask.com), a Internet Search Engine.|
|Narrator||In books, radio plays and movies it is quite common to have a narrator explain parts of the story. In an online forum however, it is not.|
|Internet||"The Internet" sometimes refers to a large group of users, the collective hive-mind if you will. However, there cannot be a single user account speaking on behalf of them, as they aren't a single entity.|
|NPC||Stands for Non-player character.|
|Password||If the user accidentally typed their password into the username field, this would be the result.|
|Permissive Character Sets|
|<Space>||Usernames containing only whitespace can not only be confusing for other people, but often systems 'trim' (remove whitespace at the beginning and end) user input. If the username was only made of spaces, after trimming it would be completely empty, which can cause a whole slew of other problems.|
|@ é |||The @ separates the local part from the domain part of email addresses. If a service decides to create email addresses for their users, they will have a hard time if they allowed the "at" character as part of a username.
é is encoded in many character sets, like Latin-1 and Unicode. In Unicode, it can even be described either "U+00E9 LATIN SMALL LETTER E WITH ACUTE" or as the sequence "U+0065 LATIN SMALL LETTER E" and "U+0301 COMBINING ACUTE ACCENT". If a system uses Unicode normalization after the check if the username is available, this might allow someone to take over someone else's account.
|“ ” " ‘ ’ ' `||Various quotation marks.
“, ”,‘ and ’ (Unicode quotes): can expose a system's inability to handle multi-byte-encodings. If they are converted to their ASCII counterparts, they might cause code injections. ' and " (ASCII single and double quotes): often used as string delimeter (causing the rest of the name to be interpreted as HTML, or worse, code. ` (ASCII grave / backtick): Sometimes used as string delimeter; Perl (which some websites are still programmed in) executes commands ("shell code") when between backticks.
|<NBSP>||Unicode character "U+00A0 NO-BREAK SPACE". Similar attack vector as <Space>, but some programming languages will not strip non-ASCII whitespace (therefore the validation will pass).|
|\ . #||The backslash is very often used for "escape sequences", that get expanded to other characters. (\n -> newline, \t -> tab character, \b -> backspace character (deletes the character to its left), etc.)
The period can be problematic in emails. RFC 2822 forbids periods at the beginning or end of the local part or more than one period in a row. In URLs, the Octothorpe (#) is used as the 'anchor'. Anything following a # will not be transmitted to the server. If a user is named 'logout#blahblah' (which might be a valid username) and the user profile is located at http://example.com/<the_username>, the server might generate the URL http://example.com/logout#blahblah. Since the URL will be truncated at the '#', any user attempting to view this profile will be logged out of the service.
|<RTL override>||The right to left override is an Unicode character which forces text after it to be laid out right to left. Thus, in left-to-right locales, it flips everything after it. This can be rather amusing if permitted. (See Comic 1137)|
|– - _ /||Includes both the em-dash and the hyphen, which are easily confused and are highly unusual for user names. The forward slash is also the path delimeter for URLs; if user profiles are located at e.g. http://example.com/user/the_username, this can cause obvious issues. Explain XKCD does not allow |
|<Any emoji>||Current databases are not set up to store emojis as characters. Explain XKCD does allow emoji in usernames. [actual citation needed]|
|","||In CSV files this separates one column or data item from another. This could cause bugs if the usernames are used as part of a CSV file since the next column on the row could be left blank filled with other data.|
|&NBSP;||The special entity in HTML (web page language) for a non-breaking space, or a space that prevents an automatic line-break at its position. When rendered as part of an HTML page without sanitization, this would only display a space. However, if the username in question is really long, this would increase the page's width (details needed).|
|</HTML>||This is trying to inject code for the web page using the user name. If the user name is not sanitized and does not have special characters encoded, this HTML end tag could end the HTML document, leading to page errors.|
|</HTML>||< and > are special character entities in HTML that represent < and >, repectively. So all together, when rendered as part of an HTML document, this would print "</HTML>" Although this would look similar to the previous </HTML> entry, it would be unlikely to cause problems as the symbols are not interpreted if encoded as special entities.|
|OkThisIsKindOfConfusingButIt's <LessThan\ForwardSlashHTML GreaterThanActualGreaterThan Symbol>Yes,ThatWasAllPartOfThe Name,ButSoIs...Ok,LetMeStartOver”||The abundance of symbols and symbol related worlds and phrases such as ActualGreaterThanSymbol would make this extremely difficult to vocally communicate to another person. This difficulty is further compounded by the parts at the beginning and end, which sound like they are part of the explanation despite being part of the name itself.|
Namespace Land Rush Cheat Sheet (Note: if an item is "quoted", it is meant literally, otherwise the reader is supposed to substitute their own information for words in <angle brackets>)
When a new service appears that lets you register a name, here are some you may want to try and get first:
- <Your usual username, if any>
- <Your given name>
- <Your full name>
- <Surname> (Bold & Slightly Unconventional)
- <Your city>
- <Name of person who runs the service>
- Causing Trouble
- Causing More Trouble
- <Name of service>
- Impossible to Say
- <Single Letters>
- <Single Numbers>
- <Common Words>
- <SQL/JS Injection>
- Permissive Character Sets
- <RTL override>
- <Any emoji>
- one or more of the following symbols: @ é | “ ” \ . # " ‘ – - _ / ’ ' `
- "," (including quote marks)
add a comment! ⋅ add a topic (use sparingly)! ⋅ refresh comments!