<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://www.explainxkcd.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TheClipboardWarrior</id>
		<title>explain xkcd - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://www.explainxkcd.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TheClipboardWarrior"/>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php/Special:Contributions/TheClipboardWarrior"/>
		<updated>2026-04-09T22:15:16Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2719:_Hydrogen_Isotopes&amp;diff=303927</id>
		<title>2719: Hydrogen Isotopes</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2719:_Hydrogen_Isotopes&amp;diff=303927"/>
				<updated>2023-01-03T03:04:09Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: /* Explanation */ Turned text list into table&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2719&lt;br /&gt;
| date      = January 2, 2023&lt;br /&gt;
| title     = Hydrogen Isotopes&lt;br /&gt;
| image     = hydrogen_isotopes_2x.png&lt;br /&gt;
| imagesize = 442x250px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Oops, All Neutrons is also known as Neutral Quadrium, Nydnonen, and Goth Tritium.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a BREAK ROOM DE BROGLIE MICROWAVE USER. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
{{W|Hydrogen}} is the simplest of the chemical atoms, usually consisting of a single electron orbiting a single proton. This comic imagines other humorous fictional forms of hydrogen.&lt;br /&gt;
The listed isotopes of hydrogen are the following:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Hydrogen isotope&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
|Hydrogen&lt;br /&gt;
|Hydrogen is the most common {{w|isotope}} of hydrogen, with one proton and one electron, shown with the electron orbiting the proton.&lt;br /&gt;
|-&lt;br /&gt;
|Deuterium&lt;br /&gt;
|Deuterium is the second most common isotope of hydrogen, with one electron, and both a neutron and proton in its nucleus. About one of every 6,760 hydrogen atoms in water is deuterium.&lt;br /&gt;
|-&lt;br /&gt;
|Tritium&lt;br /&gt;
|Tritium is the third most common isotope of hydrogen, with one electron, and a nucleus of one proton and two neutrons, for an atomic mass of three {{w|Dalton}}s. It is radioactive with a half-life of about twelve years, and is quite rare.&lt;br /&gt;
|-&lt;br /&gt;
|Ium&lt;br /&gt;
|This imaginary isotope consists of one electron orbiting around nothing. The name relates to the fact that the two heavier isotopes are named from a prefix designating the number of {{w|nucleons}} followed by &amp;quot;-ium&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|Wheelium&lt;br /&gt;
|This fictional isotope consists of a proton, electron, and neutron orbiting around nothing, shaped similarly to a wheel.&lt;br /&gt;
|-&lt;br /&gt;
|Instant Hydrogen (ready in 15 minutes)&lt;br /&gt;
|Instant Hydrogen (ready in 15 minutes) is just a single neutron. Unbound neutrons will take about fifteen minutes to decay into a proton, an electron, and a neutrino, which can then form into a hydrogen atom.&lt;br /&gt;
|-&lt;br /&gt;
|Hydrogen (Maximum Strength)&lt;br /&gt;
|This fictional isotope consists of a proton, an electron, and at least 13 neutrons. This isotope would decay immediately.&lt;br /&gt;
|-&lt;br /&gt;
|Oops, all neutrons&lt;br /&gt;
|This fictional form consists of four neutrons, a {{w|tetraneutron}}, with one orbiting around a group of three. The name is likely a reference to an American breakfast cereal called {{w|Cap'n Crunch#Variations|Oops! All Berries}}. The title text states other names of this form are Neutral Quadrium, Nydnonen, and Goth Tritium.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{notice2|The Mountain View, California Public Library is hosting an online chat with [[Randall Munroe]] Tuesday, January 31 at 11am Pacific.&amp;lt;br/&amp;gt;[https://libraryc.org/mountainviewlibrary/22032 Register here to send your question(s) to the moderators.]|image=Crystal Project Agt announcements.png}} &amp;lt;!-- pending admin request to add blurb to sitenotice --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
There are 8 drawings of atoms, arranges 4 across and 2 down, in the Planetary model. Each has a label underneath. Here, they are listed left-to-right top-to-bottom.&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton: Hydrogen&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron: Duterium&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron: Tritium&lt;br /&gt;
&lt;br /&gt;
1 electron only: ium&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron, all orbiting together round nothing: Wheelium&lt;br /&gt;
&lt;br /&gt;
1 proton only: Instant Hydrogen (ready in 15 minutes)&lt;br /&gt;
&lt;br /&gt;
1 proton, 1 electron, lots of neutrons: Hydrogen (Maximum Strength)&lt;br /&gt;
&lt;br /&gt;
1 neutron orbiting 3 other neutrons: Oops, all neutrons&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
[[Category:Chemistry]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2719:_Hydrogen_Isotopes&amp;diff=303920</id>
		<title>2719: Hydrogen Isotopes</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2719:_Hydrogen_Isotopes&amp;diff=303920"/>
				<updated>2023-01-03T02:47:05Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Fixed typo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2719&lt;br /&gt;
| date      = January 2, 2023&lt;br /&gt;
| title     = Hydrogen Isotopes&lt;br /&gt;
| image     = hydrogen_isotopes_2x.png&lt;br /&gt;
| imagesize = 442x250px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = Oops, All Neutrons is also known as Neutral Quadrium, Nydnonen, and Goth Tritium.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a BREAK ROOM DE BROGLIE MICROWAVE USER. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
{{W|Hydrogen}} is the simplest of the chemical atoms, usually consisting of a single electron orbiting a single proton. This comic imagines other humorous fictional forms of hydrogen.&lt;br /&gt;
&lt;br /&gt;
'''Hydrogen'''&lt;br /&gt;
This is the most common isotope of hydrogen, with one proton and one electron, shown with the electron orbiting the proton.&lt;br /&gt;
&lt;br /&gt;
'''Deuterium'''&lt;br /&gt;
This is the second most common isotope of hydrogen, with one electron, and both a neutron and proton in it's nucleus. About five hundredths of the hydrogen in water on Earth is deuterium.&lt;br /&gt;
&lt;br /&gt;
'''Tritium'''&lt;br /&gt;
This is the third most common isotope of hydrogen, with one electron, and a nucleus of one proton and two neutrons, for an atomic mass of three {{w|Dalton}}s. It is radioactive with a half-life of about twelve years, and is quite rare.&lt;br /&gt;
&lt;br /&gt;
'''Ium'''&lt;br /&gt;
This imaginary isotope consists of one electron orbiting around nothing. The name relates to the fact that the two heavier isotopes are named from a prefix designating the number of nucleons followed by &amp;quot;-ium&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
'''Wheelium'''&lt;br /&gt;
This fictional isotope consists of a proton, electron, and neutron orbiting around nothing, shaped similarly to a wheel.&lt;br /&gt;
&lt;br /&gt;
'''Instant Hydrogen (ready in 15 minutes)'''&lt;br /&gt;
This is just a single neutron. Unbound neutrons will take about fifteen minutes to decay into a proton, an electron, and a neutrino, which would then form a hydrogen atom.&lt;br /&gt;
&lt;br /&gt;
'''Hydrogen (Maximum Strength)'''&lt;br /&gt;
This fictional isotope consists of a proton, an electron, and at least 13 neutrons. This isotope would decay immediately.&lt;br /&gt;
&lt;br /&gt;
'''Oops, all neutrons'''&lt;br /&gt;
This fictional isotope consists of four neutrons, with one orbiting around a group of three. The name is likely a reference to an American breakfast cereal called {{w|Cap'n Crunch#Variations|Oops! All Berries}}.&lt;br /&gt;
&lt;br /&gt;
{{notice2|The Mountain View, California Public Library is hosting an online chat with [[Randall Munroe]] Tuesday, January 31 at 11am Pacific.&amp;lt;br/&amp;gt;[https://libraryc.org/mountainviewlibrary/22032 Register here to send your question(s) to the moderators.]|image=Crystal Project Agt announcements.png}} &amp;lt;!-- pending admin request to add blurb to sitenotice --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
There are 8 drawings of atoms, arranges 4 across and 2 down, in the Planetary model. Each has a label underneath. Here, they are listed left-to-right top-to-bottom.&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton: Hydrogen&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron: Duterium&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron: Tritium&lt;br /&gt;
&lt;br /&gt;
1 electron only: ium&lt;br /&gt;
&lt;br /&gt;
1 electron, 1 proton, 1 neutron, all orbiting together round nothing: Wheelium&lt;br /&gt;
&lt;br /&gt;
1 proton only: Instant Hydrogen (ready in 15 minutes)&lt;br /&gt;
&lt;br /&gt;
1 proton, 1 electron, lots of neutrons: Hydrogen (Maximum Strength)&lt;br /&gt;
&lt;br /&gt;
1 neutron orbiting 3 other neutrons: Oops, all neutrons&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
[[Category:Chemistry]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299306</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299306"/>
				<updated>2022-11-19T02:46:28Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299304 by 172.71.150.169 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299297</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299297"/>
				<updated>2022-11-19T02:45:24Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299296 by 172.71.150.169 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299284</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299284"/>
				<updated>2022-11-19T02:42:26Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299279 by 172.71.150.129 (talk) ok bro&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299274</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299274"/>
				<updated>2022-11-19T02:39:21Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299273 by 172.71.142.176 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299272</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299272"/>
				<updated>2022-11-19T02:39:01Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299270 by 172.71.142.176 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299267</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299267"/>
				<updated>2022-11-19T02:36:55Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299266 by 172.71.142.176 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299265</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299265"/>
				<updated>2022-11-19T02:36:24Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299263 by 172.71.142.177 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix [[:Category:Cueball Computer Problems|Cueball's tech issues]], she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299242</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299242"/>
				<updated>2022-11-19T02:24:55Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 299241 by 172.71.142.89 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix Cueball's computer problems before (e.g., [[2083: Laptop Issues]]), she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299236</id>
		<title>2700: Account Problems</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2700:_Account_Problems&amp;diff=299236"/>
				<updated>2022-11-19T02:21:38Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Minor phrasing edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2700&lt;br /&gt;
| date      = November 18, 2022&lt;br /&gt;
| title     = Account Problems&lt;br /&gt;
| image     = account_problems_2x.png&lt;br /&gt;
| imagesize = 538x272px&lt;br /&gt;
| noexpand  = true&lt;br /&gt;
| titletext = My password is just every Unicode codepoint concatenated into a single UTF-8 string.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a VISIBLE ZERO WIDTH SPACE. Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
[[Cueball]] walks toward [[Ponytail]] carrying his laptop. Ponytail is sitting at her desk, and turns to face him. Having attempted to fix Cueball's computer problems before (e.g., [[2083: Laptop Issues]]), she replies with dread. Cueball promises that &amp;quot;It's a normal problem this time&amp;quot;, and Ponytail reluctantly agrees to look at it. Cueball then reveals that he has included a {{w|Null-terminated_string|null string terminator character}} in one of his passwords, probably for a website. Ponytail responds in disbelief, and Cueball defends his actions by saying that the website told him to use special characters.&lt;br /&gt;
&lt;br /&gt;
In computers, every &amp;quot;character&amp;quot; is a sequence of bytes. Every byte is a sequence of eight bits. A bit is always either a zero (0) or a one (1).&lt;br /&gt;
&lt;br /&gt;
Every character is a sequence of bytes, but not every sequence of bytes is a valid character. For example, a JPEG image is also a sequence of bytes (much longer than a character). An MP3 audio file is also a sequence of bytes.&lt;br /&gt;
&lt;br /&gt;
A null string terminator is a type of character called a control character. Unlike characters which are letters of the alphabet or numbers, control characters are not intended to be displayed on the screen, and are not intended to be typed on a keyboard; rather, they are used for internal purposes in the computer program. It is thus strange and hard to understand how Cueball was able to successfully insert such a character in his password, since there is no sequence of keys he could type that would result in a null terminator.&lt;br /&gt;
&lt;br /&gt;
Null terminators are used in older, C-based languages to mark where a string ends. Every programming language has variables{{citation needed}}, which are used to store data. In C, a primitive variable can store a small amount of data, such as an integer or boolean (true or false) value. Strings (which are a sequence of characters) often need to store much larger amounts of data; too much to fit in the memory space which is available for a primitive. To solve this, C uses a system called &amp;quot;pointers&amp;quot;, in which the variable is an integer which refers to a memory location. When the string needs to be read or written, C looks up the memory location, and interprets the data as a series of characters. One problem is, because a string can be any length (big or small), C needs to know where to stop reading from memory. The null terminator is C's solution to this. When C encounters the null terminator, it knows it has reached the end of the string and stops reading. Therefore, it is important that the null terminator is not a normal character that can be typed on a keyboard.&lt;br /&gt;
&lt;br /&gt;
This has implications for security. If users are able to add or remove null terminators at will, then they can exploit C's string reading mechanisms in order to read data in a way not intended by the software programmers. If a malicious user is successful in doing this, they may be able to intentionally cause security problems on the computer, such as infecting it with malware.&lt;br /&gt;
&lt;br /&gt;
Cueball notes that his password contains a &amp;quot;special character&amp;quot;, which is a typical requirement imposed on users. However, in most contexts, &amp;quot;special character&amp;quot; means an ordinary printable character, other than letters or numbers, that can be typed on a normal keyboard and seen on the screen. Cueball's use of &amp;quot;special&amp;quot; is technically true, as null terminals do have a specialized purpose; but his usage of the word is not in keeping with the way that phrase is normally understood.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Cueball walks up to Ponytail.]&lt;br /&gt;
:Cueball: Can you help me with my account?&lt;br /&gt;
:Ponytail: Oh no.&lt;br /&gt;
:Cueball: No no, I promise it's a normal problem this time.&lt;br /&gt;
:Ponytail: Okay. Fine. What is it?&lt;br /&gt;
:Cueball: I included a null string terminator as part of my password, and now I can't-&lt;br /&gt;
:Ponytail: How?!&lt;br /&gt;
:Cueball: They said to use special characters!&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Cueball Computer Problems]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291310</id>
		<title>2652: Proxy Variable</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291310"/>
				<updated>2022-07-30T04:58:16Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 291308 by 172.71.142.89 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2652&lt;br /&gt;
| date      = July 29, 2022&lt;br /&gt;
| title     = Proxy Variable &lt;br /&gt;
| image     = proxy_variable.png&lt;br /&gt;
| titletext = Our work has produced great answers. Now someone just needs to figure out which questions they go with.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a PROXY BOT IN NO WAY CORRELATED WITH THE ORIGINAL BOT - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[Hairy]] is discussing use of a proxy variable with [[Cueball]]. In statistics, a {{w|proxy variable}} is used as a stand-in for one or more other variables that are difficult to measure. In order to be useful as such, proxy variables must be correlated with what they are intended to represent. For example, a drug might aim to reduce deaths from a slow-acting disease. But testing if it reduces deaths might take many years, so you might test for a &amp;quot;proxy outcome&amp;quot; instead, like whether it prevents loss of bone density or damage to cells, to see if the drug is making a difference. &lt;br /&gt;
&lt;br /&gt;
Hairy is dismissing the question of whether they are studying the right variable as too expensive to answer. This is deeply ironic and thus satirical, because good {{w|experiment design}} requires sufficient attention to the robustness of all the involved parts of an experiment, even if the expense may be prohibitive.&lt;br /&gt;
&lt;br /&gt;
Choosing the wrong proxy variable might make the research irrelevant, or as the title text suggests, answer the wrong question. Separating correlation from {{w|Causality|causation}} is necessary when interpreting proxy variable results to make sure the question they answer is known. Mere correlation instead of {{w|Causal analysis|authentic causation}} yields weaker results.&lt;br /&gt;
&lt;br /&gt;
==Transcript== &lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Hairy is showing Cueball a poster of a graph]&lt;br /&gt;
:Hairy: We want to study this variable, but it's too hard to observe.&lt;br /&gt;
&lt;br /&gt;
:[Cut the panel in half so you can only see Hairy and the poster]&lt;br /&gt;
:Hairy: So we're studying this proxy variable.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Hairy are standing with the poster out of frame]&lt;br /&gt;
:Cueball: Is it correlated with the other variable?&lt;br /&gt;
:Hairy: Look, we don't have the funding to answer every little question.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291296</id>
		<title>2652: Proxy Variable</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291296"/>
				<updated>2022-07-30T04:52:21Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 291295 by 108.162.246.96 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2652&lt;br /&gt;
| date      = July 29, 2022&lt;br /&gt;
| title     = Proxy Variable &lt;br /&gt;
| image     = proxy_variable.png&lt;br /&gt;
| titletext = Our work has produced great answers. Now someone just needs to figure out which questions they go with.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a PROXY BOT IN NO WAY CORRELATED WITH THE ORIGINAL BOT - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[Hairy]] is discussing use of a proxy variable with [[Cueball]]. In statistics, a {{w|proxy variable}} is one used as a stand-in for one or more other variables that are difficult to measure. In order to be useful as such, proxy variables must be correlated with what they are intended to represent. For example, a drug might aim to reduce deaths from a slow-acting disease. But testing if it reduces deaths might take many years, so you might test for a &amp;quot;proxy outcome&amp;quot; instead, like whether it prevents loss of bone density or damage to cells, to see if the drug is making a difference. &lt;br /&gt;
&lt;br /&gt;
Hairy is dismissing the question of whether they are studying the right variable as too expensive to answer. This is deeply ironic and thus satirical, because good {{w|experiment design}} requires sufficient attention to the robustness of all the involved parts of an experiment, even if the expense may be prohibitive.&lt;br /&gt;
&lt;br /&gt;
Choosing the wrong proxy variable might make the research irrelevant, or as the title text suggests, answer the wrong question. Separating correlation from {{w|Causality|causation}} is necessary when interpreting proxy variable results to make sure the question they answer is known. Mere correlation instead of {{w|Causal analysis|authentic causation}} yields weaker results.&lt;br /&gt;
&lt;br /&gt;
==Transcript== &lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Hairy is showing Cueball a poster of a graph]&lt;br /&gt;
:Hairy: We want to study this variable, but it's too hard to observe.&lt;br /&gt;
&lt;br /&gt;
:[Cut the panel in half so you can only see Hairy and the poster]&lt;br /&gt;
:Hairy: So we're studying this proxy variable.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Hairy are standing with the poster out of frame]&lt;br /&gt;
:Cueball: Is it correlated with the other variable?&lt;br /&gt;
:Hairy: Look, we don't have the funding to answer every little question.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291293</id>
		<title>2652: Proxy Variable</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291293"/>
				<updated>2022-07-30T04:51:10Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 291292 by 172.71.142.39 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2652&lt;br /&gt;
| date      = July 29, 2022&lt;br /&gt;
| title     = Proxy Variable &lt;br /&gt;
| image     = proxy_variable.png&lt;br /&gt;
| titletext = Our work has produced great answers. Now someone just needs to figure out which questions they go with.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a PROXY BOT IN NO WAY CORRELATED WITH THE ORIGINAL BOT - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[Hairy]] is discussing use of a proxy variable with [[Cueball]]. In statistics, a {{w|proxy variable}} is one used as a stand-in for one or more other variables that are difficult to measure. In order to be useful as such, proxy variables must be correlated with what they are intended to represent. For example, a drug might aim to reduce deaths from a slow-acting disease. But testing if it reduces deaths might take many years, so you might test for a &amp;quot;proxy outcome&amp;quot; instead, like whether it prevents loss of bone density or damage to cells, to see if the drug is making a difference. &lt;br /&gt;
&lt;br /&gt;
Hairy is dismissing the question of whether they are studying the right variable as too expensive to answer. This is deeply ironic and thus satirical, because good {{w|experiment design}} requires sufficient attention to the robustness of all the involved parts of an experiment, even if the expense may be prohibitive.&lt;br /&gt;
&lt;br /&gt;
Choosing the wrong proxy variable might make the research irrelevant, or as the title text suggests, answer the wrong question. Separating correlation from {{w|causation}} is necessary when interpreting proxy variable results to make sure the question they answer is known. Mere correlation instead of {{w|Causal analysis|authentic causation}} yields weaker results.&lt;br /&gt;
&lt;br /&gt;
==Transcript== &lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Hairy is showing Cueball a poster of a graph]&lt;br /&gt;
:Hairy: We want to study this variable, but it's too hard to observe.&lt;br /&gt;
&lt;br /&gt;
:[Cut the panel in half so you can only see Hairy and the poster]&lt;br /&gt;
:Hairy: So we're studying this proxy variable.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Hairy are standing with the poster out of frame]&lt;br /&gt;
:Cueball: Is it correlated with the other variable?&lt;br /&gt;
:Hairy: Look, we don't have the funding to answer every little question.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291288</id>
		<title>2652: Proxy Variable</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291288"/>
				<updated>2022-07-30T04:47:43Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 291287 by 172.71.150.29 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2652&lt;br /&gt;
| date      = July 29, 2022&lt;br /&gt;
| title     = Proxy Variable &lt;br /&gt;
| image     = proxy_variable.png&lt;br /&gt;
| titletext = Our work has produced great answers. Now someone just needs to figure out which questions they go with.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a PROXY BOT IN NO WAY CORRELATED WITH THE ORIGINAL BOT - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[Hairy]] is discussing use of a proxy variable with [[Cueball]]. In statistics, a {{w|proxy variable}} is one used as a stand-in for one or more other variables that are difficult to measure. In order to be useful as such, proxy variables must be correlated with what they are intended to represent. For example, a drug might aim to reduce deaths from a slow-acting disease. But testing if it reduces deaths might take many years, so you might test for a &amp;quot;proxy outcome&amp;quot; instead, like whether it prevents loss of bone density or damage to cells, to see if the drug is making a difference. &lt;br /&gt;
&lt;br /&gt;
Hairy is dismissing the question of whether they are studying the right variable as too expensive to answer.&lt;br /&gt;
&lt;br /&gt;
Choosing the wrong proxy variable might make the research irrelevant, or as the title text suggests, answer the wrong question. Separating correlation from {{w|causation}} is necessary when interpreting proxy variable results to make sure the question they answer is known. Mere correlation instead of {{w|Causal analysis|authentic causation}} yields weaker results.&lt;br /&gt;
&lt;br /&gt;
==Transcript== &lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Hairy is showing Cueball a poster of a graph]&lt;br /&gt;
:Hairy: We want to study this variable, but it's too hard to observe.&lt;br /&gt;
&lt;br /&gt;
:[Cut the panel in half so you can only see Hairy and the poster]&lt;br /&gt;
:Hairy: So we're studying this proxy variable.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Hairy are standing with the poster out of frame]&lt;br /&gt;
:Cueball: Is it correlated with the other variable?&lt;br /&gt;
:Hairy: Look, we don't have the funding to answer every little question.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291286</id>
		<title>2652: Proxy Variable</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2652:_Proxy_Variable&amp;diff=291286"/>
				<updated>2022-07-30T04:46:01Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 291285 by 172.71.146.97 (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2652&lt;br /&gt;
| date      = July 29, 2022&lt;br /&gt;
| title     = Proxy Variable &lt;br /&gt;
| image     = proxy_variable.png&lt;br /&gt;
| titletext = Our work has produced great answers. Now someone just needs to figure out which questions they go with.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a PROXY BOT IN NO WAY CORRELATED WITH THE ORIGINAL BOT - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[Hairy]] is discussing use of a proxy variable with [[Cueball]]. In statistics, a {{w|proxy variable}} is one used as a stand-in for one or more other variables that are difficult to measure. In order to be useful as such, proxy variables must be correlated with what they are intended to represent. For example, a drug might aim to reduce deaths from a slow-acting disease. But testing if it reduces deaths might take many years, so you might test for a &amp;quot;proxy outcome&amp;quot; instead, like whether it prevents loss of bone density or damage to cells, to see if the drug is making a difference. &lt;br /&gt;
&lt;br /&gt;
Hairy is dismissing the question of whether they are studying the right variable as too expensive to answer.&lt;br /&gt;
&lt;br /&gt;
Choosing the wrong proxy variable might make the research irrelevant, or as the title text suggests, answer the wrong question. Separating correlation from {{w|causation}} is necessary when interpreting proxy variable results to make sure the question they answer is known. Mere correlation instead of {{w|Causal analysis|authentic causation}} yields weaker results.&lt;br /&gt;
&lt;br /&gt;
==Transcript== &lt;br /&gt;
{{incomplete transcript|Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
:[Hairy is showing Cueball a poster of a graph]&lt;br /&gt;
:Hairy: We want to study this variable, but it's too hard to observe.&lt;br /&gt;
&lt;br /&gt;
:[Cut the panel in half so you can only see Hairy and the poster]&lt;br /&gt;
:Hairy: So we're studying this proxy variable.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Hairy are standing with the poster out of frame]&lt;br /&gt;
:Cueball: Is it correlated with the other variable?&lt;br /&gt;
:Hairy: Look, we don't have the funding to answer every little question.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=676:_Abstraction&amp;diff=236690</id>
		<title>676: Abstraction</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=676:_Abstraction&amp;diff=236690"/>
				<updated>2022-05-04T01:02:34Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 234258 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 676&lt;br /&gt;
| date      = December 16, 2009&lt;br /&gt;
| title     = Abstraction&lt;br /&gt;
| image     = abstraction.png&lt;br /&gt;
| titletext = If I'm such a god, why isn't Maru *my* cat?&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
The comics points out the large number of levels of abstraction working together at any given time in today's computers.&lt;br /&gt;
&lt;br /&gt;
Programs on current computers do not run &amp;quot;directly on hardware&amp;quot;. Instead, the hardware (in this case, a {{w|Central processing unit|processor}} of the {{w|x86-64}} architecture) is controlled by the {{w|operating system}} {{w|Kernel (computing)|kernel}} (in this specific case, {{w|XNU}} is the kernel used in Apple-branded devices). Many operating systems offer a standardized {{w|Interface (computing)|interface}} called {{w|POSIX}}, which wraps the services offered by the different operating systems so that applications do not need to cope with the differences between the operating systems. {{w|Darwin (operating system)|Darwin}} is the name of the core set of components on which the Apple's {{w|OS X}} operating system runs. And using this operating system, the user runs the {{w|Firefox}} web browser. However, the browser itself contains further abstraction layers: {{w|Gecko (layout engine)|Gecko}} is the engine handling the display of web pages on the screen, but in this case, it only allows a separate software, {{w|Adobe Flash Player}}, to render a video requested by the user.&lt;br /&gt;
&lt;br /&gt;
And all of this work is, in this case, done only because the user wanted to watch a funny cat Flash video on the Internet; which makes the user feel like he is a god.&lt;br /&gt;
&lt;br /&gt;
The title text refers to {{w|Maru (cat)|Maru the cat}}, a cat who became very popular on YouTube for, among other things, jumping into a box. Cueball questions his god-like capabilities by wondering why can't he own Maru.&lt;br /&gt;
&lt;br /&gt;
[[2405: Flash Gatsby| Flash was discontinued at the very beginning of 2021]]. Flash was a video player that was used to make videos play without having a dedicated website for it. It was used in games and videos, as demonstrated by Cueball watching a Flash video of a cat jumping into a box.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball is sitting at a computer.]&lt;br /&gt;
:An x64 processor is screaming along at billions of cycles per second to run the XNU kernel, which is frantically working through all the POSIX-specified abstraction to create the Darwin system underlying OS X, which in  turn is straining itself to run Firefox and its Gecko renderer, which creates a Flash object which renders dozens of video frames every second&lt;br /&gt;
&lt;br /&gt;
:because I wanted to see a cat jump into a box and fall over.&lt;br /&gt;
&lt;br /&gt;
:I am a god.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Computers]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=1807:_Listening&amp;diff=236659</id>
		<title>1807: Listening</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=1807:_Listening&amp;diff=236659"/>
				<updated>2022-05-04T01:01:35Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 234885 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 1807&lt;br /&gt;
| date      = March 6, 2017&lt;br /&gt;
| title     = Listening&lt;br /&gt;
| image     = listening.png&lt;br /&gt;
| titletext = Sure, you could just ask, but this also takes care of the host gift thing.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic depicts [[Cueball]] and [[Ponytail]] welcoming [[Black Hat]] and [[Danish]] to their house. Black Hat immediately talks to {{w|Amazon Alexa}} to order two tons of {{w|creamed corn}}. This would be quite expensive (around $10,000), and the hosts would be charged because it was ordered on their {{w|Amazon Echo}} device. It would also be a serious inconvenience, as the purchase would be quite bulky and useless, seeing as an average person would have very little use for two tons of creamed corn.{{Citation needed}}&lt;br /&gt;
&lt;br /&gt;
The caption claims that this is an effort to find systems recording conversations, such as Alexa or {{w|Google Home}}, for the security of the ''guests'', so they aren't being monitored by an always-on listening device without their consent (at least not without any consequences). However, because Black Hat is the one coming up with this it's more likely his motives are on the sadistic side, and it's more likely a warning for the hosts to turn off any voice-activated systems before having guests come over, so that the guests don't take advantage of them. (It should also be noted that such purchasing services encourage the user to set up a PIN code to stem off such exploits.)&lt;br /&gt;
&lt;br /&gt;
A concerned &amp;quot;visitor&amp;quot; may also want to test for voice-activated systems when near any persons carrying an iPhone or Android mobile device, because these are also always-on listening devices. &amp;quot;Hey Siri&amp;quot; and &amp;quot;Ok Google&amp;quot; voice activation use the same technology as &amp;quot;Alexa&amp;quot; and &amp;quot;Echo&amp;quot; detection.&lt;br /&gt;
&lt;br /&gt;
The title text says that this takes care of the &amp;quot;host gift thing&amp;quot;, referring to the custom where house guests give a gift to the hosts. However, Black Hat is making the hosts pay for it, so it can be as expensive as he wants, thus making this yet another example of his being a [[classhole]]. For more examples of this, see the [[#Trivia|trivia]] below.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Black Hat and Danish enter Cueball and Ponytail's house. They have hardly passed the door mat, with the door still open showing the road and another house outside.]&lt;br /&gt;
:Ponytail: Hello, welcome to our house!&lt;br /&gt;
:Black Hat: Thanks for inviting us!&lt;br /&gt;
:Black Hat: Alexa, order two tons of creamed corn.&lt;br /&gt;
:Black Hat: Alexa, confirm purchase.&lt;br /&gt;
&lt;br /&gt;
:[Caption below the frame:]&lt;br /&gt;
:When visiting a new house, it's good to check whether they have an always-on device transmitting your conversations somewhere.&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
*In a previous comic, [[1559: Driving]], Black Hat took also took advantage of a cutting-edge AI&amp;amp;mdash;there, a self-driving car&amp;amp;mdash;by making it drive across the country without its owner or any passenger. And already back in [[596: Latitude]] he took advantage (of course) of people who constantly kept programs running on their phones that could track their movements.&lt;br /&gt;
*Another comic about testing if someone is listening is [[525: I Know You're Listening]]. Just as Black Hat may just speak without knowing for sure that there is an active Alexa, Cueball in the old comic also just speaks out in case there is someone listening. In that case, it was addressed to real surveillance, but as can be seen in the entries below, Alexa may just end up being used like that later.&lt;br /&gt;
*Usually Cueball is paired with [[Megan]], but since Black Hat's girlfriend Danish looks like Megan but with longer hair, this makes it sensible to choose Ponytail as Cueball's partner here. They were also partnered in the next comic [[1808: Hacking]].&lt;br /&gt;
*Assuming a standard can of 14.75 oz (418 g) and Black Hat's order was in short tons the order would consist of 4339 cans. Consuming one per day it would last for approx. twelve years. But it's doubtful that the expiration date would be that long.&lt;br /&gt;
*In a recent [http://www.npr.org/2016/12/31/507670072/amazon-echo-murder-case-renews-privacy-questions-prompted-by-our-digital-footprints court case] authorities believed that an Amazon Echo may have recorded the identity of a murder suspect, leading to a debate about the privacy and safety implications of such devices.&lt;br /&gt;
*Another recent [http://www.theverge.com/2017/1/7/14200210/amazon-alexa-tech-news-anchor-order-dollhouse event] resulted in Alexa ordering several people unwanted doll houses.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Ponytail]]&lt;br /&gt;
[[Category:Comics featuring Black Hat]]&lt;br /&gt;
[[Category:Comics featuring Danish]]&lt;br /&gt;
[[Category:Food]]&lt;br /&gt;
[[Category:Artificial Intelligence]]&lt;br /&gt;
[[Category:Virtual Assistants]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=1957:_2018_CVE_List&amp;diff=236203</id>
		<title>1957: 2018 CVE List</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=1957:_2018_CVE_List&amp;diff=236203"/>
				<updated>2022-05-04T00:48:51Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 232709 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 1957&lt;br /&gt;
| date      = February 19, 2018&lt;br /&gt;
| title     = 2018 CVE List&lt;br /&gt;
| image     = 2018_cve_list.png&lt;br /&gt;
| titletext = CVE-2018-?????: It turns out Bruce Schneier is just two mischevious kids in a trenchcoat.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{w|Common Vulnerabilities and Exposures|CVE}} (Common Vulnerabilities and Exposures) is a standardized format for assigning an identity to a cybersecurity vulnerability (similar to the way that astronomical bodies are assigned unique identifiers by committees). Giving vulnerabilities a unique identifier makes them easier to talk about and helps in keeping track of the progress made toward resolving them. The typical format of a CVE identifier is '''CVE-[YEAR]-[NUMBER]'''. For example, the CVE identifier for 2017's widespread {{w|Meltdown (security vulnerability)|Meltdown vulnerability}} is [https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-5754 CVE-2017-5754]. CVEs also contain a short description of the issue.&lt;br /&gt;
&lt;br /&gt;
In this comic (released in February 2018), Randall presents a number of spurious predicted CVEs for later in 2018. Each CVE identifier is given as &amp;quot;CVE-2018-?????&amp;quot;, reflecting the fact that they have not yet happened so we don't know exactly what their CVE identifier will be.&lt;br /&gt;
&lt;br /&gt;
Following are short descriptions of all the ''vulnerabilities'' mentioned in the comic.&lt;br /&gt;
&lt;br /&gt;
;Apple products crash when displaying certain {{w|Telugu language|Telugu}} or {{w|Bengali language|Bengali}} letter combinations.&lt;br /&gt;
:This refers to a [https://techcrunch.com/2018/02/15/iphone-text-bomb-ios-mac-crash-apple/ real vulnerability] in iOS and MacOS publicized a few days before the comic was released, as well as [https://thenextweb.com/apps/2017/01/18/iphone-ipad-apple-text-ios-bug/ past] [http://www.telegraph.co.uk/technology/2018/01/18/apple-text-bomb-can-crash-iphones-single-message/ similar] iOS vulnerabilities.&lt;br /&gt;
;An attacker can use a timing attack to extploit [''sic''] a race condition in {{w|Garbage collection (computer science)|garbage collection}} to extract a limited number of bits from the Wikipedia article on Claude Shannon.&lt;br /&gt;
:The reference to using a Timing Attack to exploit a race condition in garbage collection refers to Meltdown and Spectre CPU flaws that can be exploited in a cloud server like the ones in Wikipedia. {{w|Claude Shannon}} was an early and highly influential information scientist whose work underlies compression, encryption, security, and the theory behind how information is encoded into binary digits. &lt;br /&gt;
:&lt;br /&gt;
:This is not a security problem, since Wikipedia articles are public. However, since Shannon formulated how the amount of unique or actual information some entity contains is proportional to the number of bits required to encode it, retrieving only a few bits casts a dark perspective upon the significance of the Shannon article's content.&lt;br /&gt;
;At the cafe on Third Street, the Post-it note with the WiFi password is visible from the sidewalk.&lt;br /&gt;
:Cafés often offer free access to WiFi as a service to patrons, as a business strategy to encourage said patrons to remain in the building and buy more coffee. Some use a password, so that only patrons can use the WiFi, and may display the password on signage inside. Since anybody could go into the cafe to read the post-it, and then use the network from nearby, the ability to read it from outside is, at most, a trivial problem. For systems that are supposed to be secure, writing passwords in a visible place is a major security flaw. For instance, following the [[wikipedia:2018 Hawaii false missile alert|2018 Hawaii false missile alert]], the agency concerned received criticism for a press photo showing [http://uk.businessinsider.com/hawaii-emergency-agency-password-discovered-in-photo-sparks-security-criticism-2018-1?r=US&amp;amp;IR=T a password written on a sticky note] attached to a monitor.&lt;br /&gt;
;A remote attacker can inject arbitrary text into public-facing pages via the comments box.&lt;br /&gt;
:Describes a common feature on news sites or social media sites like Facebook. The possibility for users to &amp;quot;inject&amp;quot; text into the page is by design. This is a humorous reference to the relatively common security vulnerability &amp;quot;[[Wikipedia:Cross-site_scripting|persistent cross-site scripting]]&amp;quot;, where input provided by a user, such as through a comment section, can result in dangerous content containing arbitrary HTML or JavaScript code being displayed to other users. &lt;br /&gt;
;MySQL server 5.5.45 secretly runs two parallel databases for people who say &amp;quot;S-Q-L&amp;quot; and &amp;quot;sequel.&amp;quot;&lt;br /&gt;
:Some people pronounce &amp;quot;{{w|SQL}}&amp;quot; like &amp;quot;sequel&amp;quot;, after SQL's predecessor &amp;quot;SEQUEL (Structured English Query Language)&amp;quot;. The standard for SQL suggests that it should be pronounced as separate letters; however, the author of SQL pronounces it &amp;quot;sequel&amp;quot;, so the debate persists (with even more justification than arguments about how to pronounce &amp;quot;GIF&amp;quot;). MySQL is an open-source relational database management system. The latest generally available version (at the time of writing) is MySQL 5.7.&lt;br /&gt;
;A flaw in some x86 CPUs could allow a root user to de-escalate to normal account privileges.&lt;br /&gt;
:{{w|Privilege escalation}} refers to any illegitimate means by which a system user gains greater access privileges than they are supposed to have. The most highly-sought privilege is that of the root user, which allows complete access to an entire system&amp;amp;mdash; a ''superuser''. Any flaw that would allow an ordinary user to escalate to superuser status is a critical security threat, as they then have full control of the machine. This is what most hackers seek to achieve when attacking a device.&lt;br /&gt;
:&lt;br /&gt;
:This CVE presents the less-threatening reverse situation: allowing a root user to ''de-escalate'' to normal account privileges. In fact, root users can already do this at any time; superuser privileges allow them to take control of any user account, so they can simply switch to an account which has fewer privileges than the root user.&lt;br /&gt;
;Apple products catch fire when displaying emoji with diacritics.&lt;br /&gt;
:This is a reference to a common problem of modern gadgets catching fire (usually related to flaws in lithium-ion batteries), as well as to Apple products crashing when attempting to display certain character sequences. Diacritics are the accents found on letters in some languages (eg. č, ģ ķ, ļ, ņ, š, ž). These would not normally be found on emojis{{citation needed}}. 🔥̃ is an example of such an emoji.&lt;br /&gt;
;An oversight in the rules allows a dog to join a basketball team.&lt;br /&gt;
:This probably refers to the movie ''{{w|Air Bud}}'', about a dog playing basketball. This has been a common theme in xkcd comics: see [[115: Meerkat]], [[1439: Rack Unit]], [[1819: Sweet 16]], [[1552: Rulebook]].&lt;br /&gt;
:In 2017, it was discovered that an oversight in the constitution of the state of Kansas may [http://www.kansascity.com/news/politics-government/article175956836.html permit a dog to be governor]. Shortly before this comic published, the Secretary of State's office ruled that [http://dfw.cbslocal.com/2018/02/13/dog-kansas-governor/ it could not].&lt;br /&gt;
;Haskell isn't side-effect-free after all; the effects are all just concentrated in this one computer in Missouri that no one's checked on in a while.&lt;br /&gt;
:{{w|Haskell (programming language)|Haskell}} is a functional programming language. Functional programming is characterized by using functions that don't have side effects because they can not change things accessible in other parts of the program, as in [[1312: Haskell]]. The joke here is discovering that it does indeed have side-effects, manifested via external alteration, not violating the internal alteration paradigm. It may also be a reference to &amp;quot;{{w|The Ones Who Walk Away From Omelas}},&amp;quot; a short story by Ursula Le Guin in which a utopian city concentrates all its misery into one child who is locked away in a basement.&lt;br /&gt;
;Nobody really knows how hypervisors work.&lt;br /&gt;
:[[wikipedia:Hypervisor|&amp;quot;Hypervisors&amp;quot;]] are a tool for computer virtualization. Virtualization is implemented via various combinations of hardware and/or software, which requires a computer to completely simulate another computer, with its own unique hardware and software, and to varying degrees as to whether or not the virtualization is aware of or can determine whether it is being virtualized. Many IT professionals and businesses rely heavily on various forms of virtualization, but most of the individual employees would be hard-pressed to explain how it works. Programs running on other virtual computers, or on the real computer, may be able to access information on a virtual computer in ways which would not be possible with a single real computer. Consequently, understanding how the hypervisor works is important to assessing the security of a virtual server. Meltdown and Spectre are related to this.&lt;br /&gt;
;Critical&amp;amp;#x3A; Under Linux 3.14.8 on System/390 in a UTC+14 time zone, a local user could potentially use a buffer overflow to change another user's default system clock from 12-hour to 24-hour.&lt;br /&gt;
:This joke is about arcane systems that are running Linux in exceedingly rare situations, meaning that reproducing errors would be incredibly difficult or inconvenient, and would only affect a very tiny user base (if any at all). {{w|IBM System/390 ES/9000 Enterprise Systems Architecture ESA family|System/390}} is an IBM mainframe introduced almost 30 years before this comic, which has a version of Linux. UTC+14 is a time zone used only on some islands in the Pacific Ocean (Primarily [[Wikipedia:Line_Islands|the Line Islands]]) and is also the earliest time zone on Earth. Even if all of these absurd conditions were met, the resulting vulnerability would still be relatively benign: simply changing a user's preferred clock display format. Other xkcd comics make references to such obscure computer-time issues relating to time zones and time conversions, and how many programmers find these issues frustrating or even traumatizing. &lt;br /&gt;
;x86 has way too many instructions.&lt;br /&gt;
:The x86 architecture (used in many Intel and AMD processors) is very complicated. Processors typically implement such a complex architecture using programs (microcode) run on a set of hidden, proprietary processors. The details of these hidden machines and errors in the microcode can result in security vulnerabilities, such as Meltdown, where the physical machine does not match the conceptual machine.&lt;br /&gt;
:&lt;br /&gt;
:A more complicated instruction set is more complex to implement.{{Citation needed}} The x86 architecture is considered &amp;quot;CISC&amp;quot; (a &amp;quot;{{w|Complex instruction set computer}}&amp;quot;), having many instructions originally provided to make programming by a human simpler; other examples include the 68000 series used in the first {{w|Apple Macintosh}}. In the 1980s, this design philosophy was countered by the &amp;quot;RISC&amp;quot; (&amp;quot;{{w|Reduced instruction set computer}}&amp;quot;) design movement - based on the observation that computer programs were increasingly generated by compilers (which only used a few instructions) rather than directly by people, and that the chip area dedicated to extra instructions could be better dedicated to, for example, cache. Examples of RISC style designs include {{w|SPARC}}, {{w|MIPS}}, {{w|PowerPC}} (used by Apple in later Macintoshes) and the {{w|ARM architecture|ARM}} chips common in mobile phones. Historically, there was considerable discussion about the merits of each approach. At one time the Mac and Windows PC were on different sides; owners of other competing systems such as the Archimedes and Amiga had similar arguments on usenet in the early 1990s. This &amp;quot;issue&amp;quot; may be posted by someone who still recalls these debates. Technically, the extra instructions do slightly complicate the task of validating correct chip behaviour and complicate the tool chains that manage software, which could be seen as a minor security risk. However, the 64-bit architecture introduced by {{w|AMD}}, and since adopted by {{w|Intel}}, does rationalize things somewhat, and all recent x86 chips break down instructions into RISC-like micro-operations, so the complication from a hardware perspective is localized. Recent security issues, such as the speculative cache load issue in Meltdown and Spectre, depend more on details of implementation, rather than instruction set, and have been exhibited both by x86 (CISC) and ARM (RISC) processors.&lt;br /&gt;
;NumPy 1.8.0 can factor primes in ''O''(log ''n'') time and must be quietly deprecated before anyone notices.&lt;br /&gt;
:Fantastically, this would be an unimaginable software threat, not to be confused with the even speedier, but future-bound, threat in hardware via {{w|Quantum computing}}. &lt;br /&gt;
:NumPy is the fundamental package for scientific computing with the programming language Python. ''O''(log ''n'') is [[wikipedia:Big_O_notation#Infinite_asymptotics|Big O notation]] meaning that the time it takes for a computer algorithm to run is in the order of log ''n'', for an input of size ''n''. ''O''(log ''n'') is very fast and is more usual for a search algorithm. Prime factorization currently is ''O''(''2''&amp;lt;sup&amp;gt;''n''&amp;lt;/sup&amp;gt;n)). If something can find the prime factors of a number this quickly, especially a [[wikipedia:semiprime|semiprime]] with two large factors, it will enable attacks to break many crypto functions used in internet security. However, prime numbers have only a single factor, and &amp;quot;factoring primes&amp;quot; quickly is a simpler problem, that of [[wikipedia:Primality test|proving that a number is in fact a prime]]. &lt;br /&gt;
;Apple products grant remote access if you send them words that break the &amp;quot;I before E&amp;quot; rule.&lt;br /&gt;
:Another joke on the first CVE and [[wikipedia:I before E except after C|a common English writing rule of thumb]], which fails almost as often as it succeeds. Possibly a jab at Apple's image, portraying their software as unable to handle improper grammar or spelling.&lt;br /&gt;
;Skylake x86 chips can be pried from their sockets using certain flathead screwdrivers.&lt;br /&gt;
:Skylake x86 chips are a line of microprocessors made by Intel. Some processors are soldered directly to a system board or daughter board, while others are attached to boards that plug into the system board by means of a socket (pins or connectors that make physical contact with receptacles or connectors on a system board). Some sockets, especially older ones, require force to insert or remove, and often require the use of a flat blade screwdriver or a specialized tool, but most modern ones use ZIF (Zero Insertion Force) techniques, often involving a lever or similar to tighten or loosen the friction/tightness of the contacts. No screwdriver is needed in this case. However, any processor ''can'' be forcefully removed from its socket with a screwdriver.{{Citation needed}}&lt;br /&gt;
;Apparently Linus Torvalds can be bribed pretty easily.&lt;br /&gt;
:{{w|Linus Torvalds}} is the {{w|benevolent dictator for life}} of the Linux kernel codebase. Normally it is hard to make changes because he has the last word, and because the kernel is replicated in all Linux installations. Linus made the news in January 2018 when, having looked at one of Intel's proposed fixes for the Spectre and Meltdown vulnerabilities, he declared &amp;quot;[https://techcrunch.com/2018/01/22/linus-torvalds-declares-intel-fix-for-meltdown-spectre-complete-and-utter-garbage/ the patches are COMPLETE AND UTTER GARBAGE]&amp;quot;. Presumably, it may be found that he may be successfully bribed to be less blunt and/or less critical of vulnerability fixes that are complete and/or utter garbage. If this were the case, this would be a severe critical vulnerability to all Linux servers and machines.&lt;br /&gt;
;An attacker can execute malicious code on their own machine and no one can stop them.&lt;br /&gt;
:The point of an attack is to make someone else's machine perform actions against the owner's will. Anyone can make their own machine execute any code if they have root access and the necessary tools, but this would usually not be described as an attack, except in the case of a locked-down appliance, such as a video game console, a John Deere tractor, or pay TV decoder.&lt;br /&gt;
;Apple products execute any code printed over a photo of a dog with a saddle and a baby riding it.&lt;br /&gt;
:This could refer to a CVE vulnerability of JPG files where JavaScript embedded within the image file is executed by some application. In this case, though, the code is visible on the image instead of invisibly encoded within the image file. The code is also only executed if the image contains a photo of a baby in a saddle riding a dog. It's unclear whether the photo would be a digital photo, a printed photo (i.e. as taken using a digital camera), or maybe both. &lt;br /&gt;
:Other than by some {{w|metadata}}, either internal to the image file, or embedded along with it, as in a web page, or a PDF or other container file, this &amp;quot;bug&amp;quot; would require the device to {{w|Hard AI|figure out}} specifically what the photo contains image-wise (something that's REALLY HARD for computers to do reliably), but would also require OCR (optical character recognition) code to convert the text superimposed on the photo into executable code. In other words, it's hard to believe in 2018 that such a bug could exist. Maybe in the future when such things are more routine...? As an example, OCR used to be hard to do reliably, but now it's a lot more routine and built into a lot of devices.&lt;br /&gt;
;Under rare circumstances, a flaw in some versions of Windows could allow Flash to be installed.&lt;br /&gt;
:Adobe Flash has been an integral browser plugin for decades, but has fallen out of favor in the 2010s, and eventually discontinued because of its notoriously abysmal security record. All security experts advise against installing it. Preventing installation of Flash would make systems more secure, but most versions of Windows do not prevent Flash installation (provided, as of 2021, the user still has a copy of the files with which to do so). The joke here relates to the difficulty of keeping Flash up to date, or even installed properly to begin with. A common user experience, which is the subject of numerous jokes and memes, is the constant nagging notification to install or update Flash in order for web pages to display properly. Many IT professionals will bemoan the trouble they have experienced in the workplace due to these notifications and problems related to them.&lt;br /&gt;
:In late 2020, Microsoft [https://support.microsoft.com/en-us/help/4577586/update-for-removal-of-adobe-flash-player released an optional Windows update] that removes Flash and prevents users from installing it again.&lt;br /&gt;
;Turns out the cloud is just other people's computers.&lt;br /&gt;
:This refers to a meme that demands that &amp;quot;cloud&amp;quot; be replaced with &amp;quot;other people's computers&amp;quot; in all marketing presentation to CEOs and non-computer literate persons evaluating the security impact of using cloud services. Part of the humor here is that &amp;quot;the cloud&amp;quot; is, in actuality, simply a term for hosted services, or in other words computers being run by other people (typically businesses that specialize in this type of &amp;quot;{{w|Platform as a Service}}&amp;quot; or &amp;quot;PaaS&amp;quot; service model). Referring to &amp;quot;the cloud&amp;quot; as &amp;quot;other people's computers&amp;quot; is, at its core, entirely accurate, though it takes away the business jargon and simplifies the situation in such a way that it might cast doubt on the security, reliability, and general effectiveness of using &amp;quot;cloud&amp;quot; solutions.  In [[908: The Cloud]], it turns out that [[Black Hat]] is the &amp;quot;other people&amp;quot; whose computer ''is'' the Cloud.&lt;br /&gt;
;A flaw in Mitre's CVE database allows arbitrary code insertion.[[779|[~~CLICK HERE FOR CHEAP VIAGRA~~]]]&lt;br /&gt;
:Mitre's CVE database is where all {{w|Common Vulnerabilities and Exposures|CVEs}} are stored. This log message forms the punchline of the comic, as it implies that all of the exaggerated error messages above might have been inserted by hackers exploiting the vulnerability. To pour salt in the wound, they then included in a typical spam link purporting to offer inexpensive {{w|Viagra|brand-name Sildenafil}}.&lt;br /&gt;
;It turns out Bruce Schneier is just two mischevious kids in a trenchcoat.&lt;br /&gt;
:Appears in the title text. {{w|Bruce Schneier}} is security researcher and blogger. The &amp;quot;two kids in a trenchcoat&amp;quot; is a reference to the {{tvtropes|TotemPoleTrench|Totem Pole Trench}} trope. Shortly before this comic was posted, a [https://rare.us/rare-humor/two-kids-dressed-as-a-tall-man-to-get-into-black-panther-is-caught-on-video story went viral] in which two kids were photographed attempting this for real to get into a screening of ''Black Panther''.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[A heading is centered above a list of 21 vulnerabilities]&lt;br /&gt;
:&amp;lt;big&amp;gt;Leaked list of major 2018 security vulnerabilities &amp;lt;/big&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:CVE-2018-????? Apple products crash when displaying certain Telugu or Bengali letter combinations.&lt;br /&gt;
:CVE-2018-????? An attacker can use a timing attack to extploit a race condition in garbage collection to extract a limited number of bits from the Wikipedia article on Claude Shannon.&lt;br /&gt;
:CVE-2018-????? At the cafe on Third Street, the Post-it note with the WiFi password is visible from the sidewalk.&lt;br /&gt;
:CVE-2018-????? A remote attacker can inject arbitrary text into public-facing pages via the comments box.&lt;br /&gt;
:CVE-2018-????? MySQL server 5.5.45 secretly runs two parallel databases for people who say &amp;quot;S-Q-L&amp;quot; and &amp;quot;sequel.&amp;quot;&lt;br /&gt;
:CVE-2018-????? A flaw in some x86 CPUs could allow a root user to de-escalate to normal account privileges.&lt;br /&gt;
:CVE-2018-????? Apple products catch fire when displaying emoji with diacritics.&lt;br /&gt;
:CVE-2018-????? An oversight in the rules allows a dog to join a basketball team.&lt;br /&gt;
:CVE-2018-????? Haskell isn't side-effect-free after all; the effects are all just concentrated in this one. computer in Missouri that no one's checked on in a while.&lt;br /&gt;
:CVE-2018-????? Nobody really knows how hypervisors work.&lt;br /&gt;
:CVE-2018-????? Critical: Under Linux 3.14.8 on System/390 in a UTC+14 time zone, a local user could potentially use a buffer overflow to change another user's default system clock from 12-hour to 24-hour.&lt;br /&gt;
:CVE-2018-????? x86 has way too many instructions.&lt;br /&gt;
:CVE-2018-????? NumPy 1.8.0 can factor primes in ''O''(log ''n'') time and must be quietly deprecated before anyone notices.&lt;br /&gt;
:CVE-2018-????? Apple products grant remote access if you send them words that break the &amp;quot;I before E&amp;quot; rule.&lt;br /&gt;
:CVE-2018-????? Skylake x86 chips can be pried from their sockets using certain flathead screwdrivers.&lt;br /&gt;
:CVE-2018-????? Apparently Linus Torvalds can be bribed pretty easily.&lt;br /&gt;
:CVE-2018-????? An attacker can execute malicious code on their own machine and no one can stop them.&lt;br /&gt;
:CVE-2018-????? Apple products execute any code printed over a photo of a dog with a saddle and a baby riding it.&lt;br /&gt;
:CVE-2018-????? Under rare circumstances, a flaw in some versions of Windows could allow Flash to be installed.&lt;br /&gt;
:CVE-2018-????? Turns out the cloud is just other people's computers.&lt;br /&gt;
:CVE-2018-????? A flaw in Mitre's CVE database allows arbitrary code insertion.&amp;lt;span style=&amp;quot;color:blue&amp;quot;&amp;gt;[~~Click here for cheap viagra~~]&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
&lt;br /&gt;
Randall has previously referenced diacritics in [[1647: Diacritics]].&lt;br /&gt;
&lt;br /&gt;
Bruce Schneier was previously mentioned in the title texts of [[748: Worst-Case Scenario]] and [[1039: RuBisCO]].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Charts]]&lt;br /&gt;
[[Category:Programming]]&lt;br /&gt;
[[Category:Computers]]&lt;br /&gt;
[[Category:iOS]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=57:_Wait_For_Me&amp;diff=236182</id>
		<title>57: Wait For Me</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=57:_Wait_For_Me&amp;diff=236182"/>
				<updated>2022-05-04T00:48:21Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 235446 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 57&lt;br /&gt;
| date      = January 31, 2006&lt;br /&gt;
| title     = Wait For Me&lt;br /&gt;
| image     = wait_for_me.jpg&lt;br /&gt;
| titletext = Opening dialogue by Scott&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
This comic juxtaposes a familiar exchange with a surreal outcome.&lt;br /&gt;
&lt;br /&gt;
[[Megan]] is returning after a short absence. [[Cueball]] reacts as if she had been gone for years, and admits to having an affair while waiting. &lt;br /&gt;
&lt;br /&gt;
In this comic, a familiar exchange occurs where one person asks the other why they did not wait. The humor lies in the improbability of him falling in love and having an affair within 90 seconds, the impossibility of him having a son in that time, and the ridiculous notion that the son would now be about Megan's current age. This is of course impossible, as it would imply that Cueball experienced twenty-ish years of life in what felt like 1.5 minutes for Megan. (He might conceivably have managed to have sex in that time span, which would fit with the experience of Cueball in [[1068: Swiftkey]]).&lt;br /&gt;
&lt;br /&gt;
[[Scott]] appears to be a friend of [[Randall]]. Comics 57 through 59 all have the title text ''[[:Category:Opening dialogue by Scott|Opening dialogue by Scott]]'', forming a sort of informal mini-series inspired by him. They are:&lt;br /&gt;
*[[57: Wait For Me]]&lt;br /&gt;
*[[58: Why Do You Love Me?]]&lt;br /&gt;
*[[59: Graduation]]&lt;br /&gt;
As there already was a comic released on Monday that week, the first of these three was released on Tuesday, then Wednesday and Friday. This may be related to the fact that this was the first week where the comics were not also released on [[LiveJournal]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball and Megan stand facing one another.]&lt;br /&gt;
:Megan: Why didn't you wait for me?&lt;br /&gt;
:Cueball: I thought you were gone forever!&lt;br /&gt;
&lt;br /&gt;
:[Megan throws out her arms, and Cueball is looking down.]&lt;br /&gt;
:Megan: I said I'd be back in a minute!&lt;br /&gt;
:Cueball: The... the seconds went fast at first, but then they started to drag on.&lt;br /&gt;
:Cueball: She was there for me.&lt;br /&gt;
&lt;br /&gt;
:[Same scene as before, except Megan has her arms out less.]&lt;br /&gt;
:Megan: You had an affair in the 90 seconds I was gone?!&lt;br /&gt;
:Cueball: ...yes.&lt;br /&gt;
&lt;br /&gt;
:[Cueball and Megan stand facing one another in a smaller panel.]&lt;br /&gt;
:Cueball: And we had a son.&lt;br /&gt;
&lt;br /&gt;
:[Same scene as before.]&lt;br /&gt;
:Cueball: He'd be about your age now.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Opening dialogue by Scott]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:Romance]]&lt;br /&gt;
[[Category:Scott]]&lt;br /&gt;
[[Category:Comics with lowercase text]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=1874:_Geologic_Faults&amp;diff=236160</id>
		<title>1874: Geologic Faults</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=1874:_Geologic_Faults&amp;diff=236160"/>
				<updated>2022-05-04T00:47:41Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 233381 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 1874&lt;br /&gt;
| date      = August 9, 2017&lt;br /&gt;
| title     = Geologic Faults&lt;br /&gt;
| image     = geologic_faults.png&lt;br /&gt;
| titletext = I live on a torn-bag-of-potato-chips-where-the-tear-is-rapidly-growing fault, which is terrifying.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
&lt;br /&gt;
This comic appears to be a successor to [[1714: Volcano Types]]. Similar to its predecessor, the comic explores several phenomena (in this case, geologic faults), both real, and several made up for the point of a joke.&lt;br /&gt;
&lt;br /&gt;
A {{w|Fault (geology)|fault}} is a geologic feature involving a planar fracture with displacement in a large mass of rock, including the boundaries of two {{w|tectonic plates}}.&lt;br /&gt;
&lt;br /&gt;
===Real geologic faults===&lt;br /&gt;
;Normal fault&lt;br /&gt;
In a {{w|Fault (geology)#Dip-slip faults|normal fault}}, the hanging wall (the lower wall; right) moves downward relative to the footwall (the upper wall; left). The Earth's crust is extended in this type of fault. &lt;br /&gt;
;Reverse fault&lt;br /&gt;
A reverse fault is basically the opposite of a normal fault. The hanging wall (left) moves upward relative to the footwall (right), and the Earth's crust is compressed.&lt;br /&gt;
;Transverse fault&lt;br /&gt;
A transverse fault, also known as a {{w|transform fault}}, is where the two plates move parallel to each other, but in opposite directions.&lt;br /&gt;
;Thrust fault&lt;br /&gt;
A {{w|thrust fault}} is when older rocks are pushed (or thrust) on top of younger rocks. The angles are typically lower (more horizontal) than in reverse faults.&lt;br /&gt;
&lt;br /&gt;
===Fictional faults===&lt;br /&gt;
;Taffy fault&lt;br /&gt;
This appears to involve one tectonic plate, that is being stretched out like a piece of {{w|Taffy (candy)|taffy}}.  [https://s3.amazonaws.com/academia.edu.documents/41229455/Crustal_thinning_recorded_by_the_shape_o20160113-25699-1vca65l.pdf20160115-19908-17j9qxl.pdf?AWSAccessKeyId=AKIAIWOWYYGZ2Y53UL3A&amp;amp;Expires=1502469630&amp;amp;Signature=hcKl8ViPa2JrofM%2Bob7qu9TmjP4%3D&amp;amp;response-content-disposition=inline%3B%20filename%3DCrustal_thinning_recorded_by_the_shape_o.pdf Ductile crustal thinning] of this type actually occurs in rocks under tension at {{w|Brittle–ductile_transition_zone|sufficient depths}}.  Such deformation is not a fault, however, as there is no fracture along which movement takes place.&lt;br /&gt;
;Splinted fault&lt;br /&gt;
This appears to be a normal or reverse fault that someone has attempted to fix in position by attaching a large splint, as you might with a broken bone. This is unlikely to prove effective.{{Citation needed}}&lt;br /&gt;
;Squeezed-bar-of-soap fault&lt;br /&gt;
Two plates seem to be moving towards each other, while a third smaller plate is squeezed between them and pushed upwards, much as a slippery bar of soap might pop up when squeezed between two hands.&lt;br /&gt;
;Apple power cable fault&lt;br /&gt;
The plate appears to have been twisted and bent so many times that parts of it are fraying and the end is splitting apart, similar to a damaged Apple {{w|MagSafe}} connector.&lt;br /&gt;
;Brio fault&lt;br /&gt;
{{w|Brio (company)|BRIO}} is a company from Sweden that makes wooden toys, including train sets. The Brio fault seems to be two tectonic plates which join together like the Brio train track pieces do. (However, this join is obvously incorrect because of the height difference.)&lt;br /&gt;
;(Title text) Torn-bag-of-potato-chips-where-the-tear-is-rapidly-growing fault&lt;br /&gt;
The title text refers to when a bag of chips gets a tear in it. When this happens, any further stress on the bag, such as reaching in to get more chips, can easily increase the size of the tear, sometimes very quickly. It would be frightening to live near a fault that behaved like this{{Citation needed}} because it could cause major seismic events very quickly. If you were close enough to the fault, you might be afraid that the crack would grow underneath you, causing you to fall into the bag of chips — or, rather, the Earth.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[The comic shows nine different schematic views to present geographic faults and some more.]&lt;br /&gt;
&lt;br /&gt;
:[Two planes with a slip fault drifting away to the left and right.]&lt;br /&gt;
:Normal fault&lt;br /&gt;
:[Two planes with a slip fault drifting against each other from left and right.]&lt;br /&gt;
:Reverse fault&lt;br /&gt;
:[Two planes moving sideways away from each other.]&lt;br /&gt;
:Transverse fault&lt;br /&gt;
&lt;br /&gt;
:[The left plate is moving over the right plate, while the right plate is sliding under the left one]&lt;br /&gt;
:Thrust fault&lt;br /&gt;
:[Two planes drifting away and the connection between them gets smaller, like a piece of taffy candy.]&lt;br /&gt;
:Taffy fault&lt;br /&gt;
:[On top of both planes a small piece with splints holds them together.]&lt;br /&gt;
:Splinted fault&lt;br /&gt;
&lt;br /&gt;
:[The two planes pressing together with a piece in the middle moving upwards.]&lt;br /&gt;
:Squeezed-bar-of-soap fault&lt;br /&gt;
:[The right plane is connected to the left and swinging up and down.]&lt;br /&gt;
:Apple power cable fault&lt;br /&gt;
:[One side with a thin connector and the other with an evenly spaced hole connecting the planes together. The pieces fit together like a puzzle.]&lt;br /&gt;
:Brio fault&lt;br /&gt;
&lt;br /&gt;
==Trivia==&lt;br /&gt;
Faults have been mentioned several times in xkcd. Thrust faults were previously mentioned in [[1082: Geology]], and in the title text of [[1388: Subduction License]], [[Beret Guy]] tells [[Cueball]] he can't be a 'normal' roomate because in his motion he is creating a reverse fault.&lt;br /&gt;
&lt;br /&gt;
A similar joke to the Apple power cable fault is used in [[1406: Universal Converter Box]].&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Geology]]&lt;br /&gt;
[[Category:Puns]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=236:_Collecting_Double-Takes&amp;diff=236138</id>
		<title>236: Collecting Double-Takes</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=236:_Collecting_Double-Takes&amp;diff=236138"/>
				<updated>2022-05-04T00:47:04Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 233044 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    =236&lt;br /&gt;
| date      =March 16, 2007&lt;br /&gt;
| title     =Collecting Double Takes&lt;br /&gt;
| image     =collecting_double_takes.png&lt;br /&gt;
| titletext =Fun Game: find a combination of two items that most freaks out the cashier. Winner: pregnancy test and single coat hanger.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
There's a fairly well-founded meme that singles looking for other singles (''mostly'' that being men for women, and vice-versa, but not exclusively) can make connections with others in the fresh produce sections of a supermarket. From a single lady's point of view, men who are buying such goods are more likely to be unattached, due to the traditionally skewed gender politics of who shops for what in a couple, and at the same time, the man is exhibiting good habits in not merely stocking up on ready-meals or subsisting on takeaways while living the bachelor life.&lt;br /&gt;
&lt;br /&gt;
By standing in a produce aisle with a tube of {{w|K-Y Jelly}} (which is most commonly used as a sexual lubricant) in his hand and considering what produce to buy (between bananas, apples, oranges, zucchinis, and doubtless many more off-screen), [[Cueball]] is allowing other people to believe that he either has plans to have sex with any connection he might manage to take home with him, or also he plans to use the chosen produce item to pleasure himself, probably sexually.&lt;br /&gt;
&lt;br /&gt;
Cueball is probably not actually planning on doing either{{Citation needed}}, but he loves to see the look on people's faces; hence, he's collecting double-takes.&lt;br /&gt;
&lt;br /&gt;
In the title text, he says he likes to play a game of &amp;quot;freak out the cashier using two items.&amp;quot; Wire coat hangers have been used to perform {{w|Unsafe abortion | do-it-yourself abortions}}, many times with disastrous effects, such as internal hemorrhaging and the death of the woman.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball is standing in the middle of the produce aisle in a supermarket, holding a tube of K-Y Jelly in one hand, the other on his chin. The signs read &amp;quot;Bananas&amp;quot; &amp;quot;Apples&amp;quot; &amp;quot;Oranges&amp;quot; and &amp;quot;Zucchini&amp;quot; from left to right.]&lt;br /&gt;
:MY HOBBY: Standing in the supermarket's produce section holding a tube of K-Y Jelly, looking contemplative.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Megan]]&lt;br /&gt;
[[Category:My Hobby]]&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Sex]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=1159:_Countdown&amp;diff=236077</id>
		<title>1159: Countdown</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=1159:_Countdown&amp;diff=236077"/>
				<updated>2022-05-04T00:45:23Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 232904 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;noinclude&amp;gt;:''For the header text countdown, see [[Countdown in header text]].''&amp;lt;/noinclude&amp;gt;&lt;br /&gt;
{{comic&lt;br /&gt;
| number    = 1159&lt;br /&gt;
| date      = January 11, 2013&lt;br /&gt;
| title     = Countdown&lt;br /&gt;
| image     = countdown.png&lt;br /&gt;
| titletext = For all we know, the odds are in our favor.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
The comic shows a {{w|seven segment display}} (aka [http://www.ece.mtu.edu/labs/EElabs/EE2304/pages/bcd_to_seven_segment_TAversion.html calculator-style numbers]) with a countdown. [[Black Hat]] explains that it is a countdown, maybe to a {{w|supervolcano}} eruption. However, an unfortunately placed picture blocks view of the full display. Due to the form of a seven-segment display, the first digit could be 0, 6, or 8, and five digits are completely blocked by the picture. [[Cueball]] is worried and asks him to move the picture, but Black Hat lazily or teasingly refuses to move it. &lt;br /&gt;
&lt;br /&gt;
He has already teased that he doesn't know what the countdown is for. His reply can either be understood as if he does not know which one of the ({{w|Supervolcano#VEI_8|seven potential}}) supervolcanos it is counting down to, or to which other {{w|Global catastrophic risk|cataclysmic event}} it is a countdown for (such as a {{w|Impact event|meteor strike}} or global {{w|Nuclear warfare|nuclear war}} for instance - it could also just be a general {{w|Doomsday Clock}}). Since it seems to be Black Hat's countdown, it is safe to assume that he knows both what it counts down to and when it stops, but he just likes to mess with peoples' minds.&lt;br /&gt;
&lt;br /&gt;
The fully visible part starts at 2409, and based on the pace of the scene, it seems to be in seconds. Thus, it is unclear when the eruption might occur. If the obscured digits are all 0s, it could be as soon as 40 minutes. On the other hand, if the obscured digits are '899 999', there's another 2.85 million years to go; if they are '000 001', we have a little more than 3 years.&lt;br /&gt;
&lt;br /&gt;
The choice of the picture is probably also interesting. The image is distorted enough that you can imagine it as being two very different images. &lt;br /&gt;
#It could depict a setting sun either reflecting in an ocean or with a river (possible also a lake) running out of the picture. But if it is a sun it is not very circular, although there do appear lines to indicate it is shining. This could maybe be explained with atmospheric interference.&lt;br /&gt;
#Alternatively it depicts an exploding volcano, a mountain with lines away from it to indicate the explosion or the eruption, and lava flowing away from it or collecting in lakes.&lt;br /&gt;
In either case, it could make sense. If it is a volcano, the supervolcano clock makes sense. On the other hand, we are talking about the possible end of the world as we know it, so the sun setting upon humanity could be a great metaphor.&lt;br /&gt;
&lt;br /&gt;
The title text: &amp;quot;For all we know, the odds are in our favor&amp;quot; could imply the assumption that since we can't see the digits behind the picture, we can treat them as random. If so, chances are only 1 in 300 000 they are all zeros. However, because of statistical principles such as {{w|Benford's law}}, the digits are not entirely random, and the {{w|odds}} are higher than 1/299 999 for all the digits to be zero since the middle 4 digits are zero. &lt;br /&gt;
&lt;br /&gt;
In an alternative view, the strip is not about pondering at distributions of digits on an oracle countdown. It's more of a grim view of our natural disaster prediction capabilities. As they say – the question is not if it will happen but when it will happen. &amp;quot;Move the picture&amp;quot; would mean investing in research and warning systems - that would correspond to shifting the picture to the left. If we disregard the 40 minutes, but instead think of it as an arbitrary interval of interests, minuscule as we folks have them, say - one's lifetime; or grimmer yet - some {{w|term of office}}. Because, hey, year after year passes and no apocalypse has been observed - the empirical odds are low indeed. An interesting question is what we would use the knowledge of the timing of our impending doom, if it is an event we can do nothing about, such as stopping a supervolcanic eruption or a large asteroid with a direct impact course on Earth. Would we not have lives more happily for our remaining years, how few that might be, while not knowing... On the other hand, if the event is something we might prevent given enough time to plan (and the funding resources such knowledge would ensure), then it may have saved us if we moved the picture just in time!&lt;br /&gt;
&lt;br /&gt;
Using a countdown theme for comic #1159 could be a subtle joke, as 11:59/23:59 is one minute to midnight (on the Doomsday clock!).&lt;br /&gt;
&lt;br /&gt;
Supervolcanos were also referenced in the title text of [[1053: Ten Thousand]] and it is the subject of in [[1611: Baking Soda and Vinegar]].&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Black Hat is sitting with his laptop on a desk when Cueball, standing behind him, looks up on the wall and asks him about the large digital countdown timer with red numbers which is hanging high up on the wall. It has a white frame around the black display with the red numbers. Most of the left part of the counter is covered by a framed picture that hangs on a string attached to a nail above the counter. The picture depicts either a setting sun reflecting in an ocean or an exploding volcano with lava flowing away from it. The picture does not block the left-most part of the frame around the counter, and it is also possible to see the two left-most lines of the first digit on the countdown, so they are both turned on. This proves that the numbers go all the way to the left end. The next five digits are covered by the picture. Then one digit is only partly covered, as only the two most left lines are not visible. From the visible lines, it is though clear that this digit shows a 0. The next seven digits are fully visible, giving eight discernible digits.]&lt;br /&gt;
:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;'''00002409'''&amp;lt;/font&amp;gt;&lt;br /&gt;
:&lt;br /&gt;
:Cueball: What's that?&lt;br /&gt;
:Black Hat: Countdown.&lt;br /&gt;
:[Same picture, but Cueball is looking at Black Hat. The counter counts down.]&lt;br /&gt;
:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;'''00002400'''&amp;lt;/font&amp;gt;&lt;br /&gt;
:&lt;br /&gt;
:Cueball: To what?&lt;br /&gt;
:Black Hat: Supervolcano, I think. I forget which one.&lt;br /&gt;
:[Cueball looks up again for about 18s (between 2nd and fourth image) - beat panel.]&lt;br /&gt;
:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;'''00002396'''&amp;lt;/font&amp;gt;&lt;br /&gt;
:&lt;br /&gt;
:[Cueball looks at Black Hat again.]&lt;br /&gt;
:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;'''00002382'''&amp;lt;/font&amp;gt;&lt;br /&gt;
:&lt;br /&gt;
:Cueball: Maybe we should move that picture?&lt;br /&gt;
:Black Hat: Too hard to reach. It's probably fine.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Comics with color]]&lt;br /&gt;
[[Category:Comics featuring Cueball]]&lt;br /&gt;
[[Category:Comics featuring Black Hat]]&lt;br /&gt;
[[Category:Volcanoes]]&lt;br /&gt;
[[Category:Math]]&lt;br /&gt;
[[Category:Statistics]]&lt;br /&gt;
[[Category:Time]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2091:_Million,_Billion,_Trillion&amp;diff=236062</id>
		<title>2091: Million, Billion, Trillion</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2091:_Million,_Billion,_Trillion&amp;diff=236062"/>
				<updated>2022-05-04T00:44:55Z</updated>
		
		<summary type="html">&lt;p&gt;TheClipboardWarrior: Undo revision 232675 by X. K. C. D. (talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2091&lt;br /&gt;
| date      = December 28, 2018&lt;br /&gt;
| title     = Million, Billion, Trillion&lt;br /&gt;
| image     = million_billion_trillion.png&lt;br /&gt;
| titletext = You can tell most people don’t really assign an absolute meaning to these numbers because in some places and time periods, “billion” has meant 1,000x what it's meant in others, and a lot of us never even noticed.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
Much like [[558: 1000 Times|comic 558]], this comic addresses the difficulty ordinary people have with large numbers. Though most if not all people intuitively understand the difference between one object and two objects, or one object and ten objects, or even one object and a hundred objects, as numbers increase most people's ability to innately conceive of the numbers being discussed decreases remarkably quickly. When numbers reach the millions and the billions, and especially the trillions, most people don't truly process the numbers at all, and instead conceive of them as some version of a drastically-oversimplified concept such as &amp;quot;very big.&amp;quot; Where comparing one to ten is simple, comparing &amp;quot;very big&amp;quot; to a different &amp;quot;very big&amp;quot; can prove extremely challenging, and will certainly require non-intuitive, conscious thinking.&lt;br /&gt;
&lt;br /&gt;
The comic represents this challenge by providing a graph which represents [[Randall]]'s ''intuitive'' conception of the values of various very large numbers, and said conception's misalignment with reality. Though some trends reflect the real value of the numbers on the graph, i.e. 100 million larger than 10 million larger than 1 million and 1 billion larger than 1 million, the curve is far from the linear (exponential on the log-scaled axes) path it should take, with 1 billion being intuitively understood as less than 100 million, based, presumably, on the fact, easily comprehended on an intuitive level, that '''100 is larger than 1''', and therefore the presence of 100 in 100 million places it at a higher value than the 1 in 1 billion would place the latter. In reality, of course, 1 billion is ten times larger than 100 million, but the comic deals not with actual reality, but with the perception of reality  of these numbers '''before conscious thought is applied'''. &lt;br /&gt;
&lt;br /&gt;
The most interesting parts of the graph, and the parts where the disconnect between intuition and reality becomes clearest, are the dashed sections labeled with question marks, the one between 100 million and 1 billion, the other between 100 billion and 1 trillion. Here two competing intuitive understandings compete for dominance. On the one hand, the intuitive understanding described above, with 100 trumping 1, would see the curve taking a sharp downturn. On the other hand, the path from 100 million to 1 billion is paved with such numbers as 500 million, 700 million, and 900 million, all of which would theoretically be seen intuitively as larger than 100 million, thanks to the fact that 9 is greater than 7, and 7 greater than 5, and so on, bending the curve up rather than down. These two conflicting intuitions leave Randall with no single intuitive path for the two dashed sections, leading to their dashed and questioned state.&lt;br /&gt;
&lt;br /&gt;
The comic's caption and title highlight another problem surrounding the intuitive grasping of large numbers: the flaws in the English words used for them. For instance, nothing about the word &amp;quot;million&amp;quot; suggests smallness relative to the word &amp;quot;billion&amp;quot; on an intuitive scale. This unintuitive language contributes greatly to the &amp;quot;100 trumps 1&amp;quot; intuitive fallacy described above. &lt;br /&gt;
&lt;br /&gt;
===  Long scale and short scale ===&lt;br /&gt;
&lt;br /&gt;
The title text references a highly relevant disconnect between the {{w|Long_and_short_scales|long and short scales of large numbers}}.&lt;br /&gt;
&lt;br /&gt;
For all English speakers, and for most languages, 1 '''''million''''' constitutes 1,000 thousands, or, less ambiguously, 10^6. However, this is the last of the consensus numbers, and the definition of what should be the &amp;quot;next step&amp;quot; varies depending on how each country's language evolved.&lt;br /&gt;
* In many English-speaking countries, 1,000 millions equals 1 billion, or 1000*10^6=10^9; this convention is known as the '''short-scale'''.&lt;br /&gt;
* [https://en.oxforddictionaries.com/explore/how-many-is-a-billion/ In historical Britain] and many other countries with a language derived from French, German or Spanish, the &amp;quot;next step&amp;quot; may be named a thousand million, and 1 billion equals ''1 million'' millions, or 10^6*10^6=10^'''12''', with the base unit changing when you have a unit's worth multiple of the unit; this convention is known as the long-scale (note that this is no longer used in the United Kingdom and Ireland since 1974).&lt;br /&gt;
* In European languages where the '''long-scale''' system is used, 10^9 may be named a thousand million, or receive a name with a special suffix: the word milliard (meaning 1,000 million) is used in some form (e.g. milliard in French, Milliarde in German, milliard in Danish, milliárd in Hungarian, etc.), with the word billion defined as 1,000 milliard (or 1,000,000 million). In these languages, a billion never meant 1,000 million as it does in the short-scale system.&lt;br /&gt;
* Successive units, such as trillion, increase by the same multiple as one billion divided by one million - by 1,000 in the short-scale system and 1,000,000 in the long-scale system.&lt;br /&gt;
&lt;br /&gt;
In other words, 1 billion objects in a country using the short-scale would be 1,000 million objects in a country using the long-scale; at the &amp;quot;next step&amp;quot;, 1 trillion in the short-scale would be named 1 billion in the long-scale, despite the fact that the number of objects has remained the same. This difference between languages using the short-scale and the long-scale often causes confusion when translating articles with large numbers in them, as translators sometimes fail to change between short-scale and long-scale schemes, wrongly translating large numbers to incorrect values.&lt;br /&gt;
&lt;br /&gt;
The fact that such a staggering difference of terminology was able to exist and be almost completely unknown to many supports Randall's point about the failure of human intuition in the discussion of extremely large numbers.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
&lt;br /&gt;
:[A graph with Y-axis labeled “Perceived size of number” and X-axis labeled “Actual size of number (log scale)”.]&lt;br /&gt;
:[The line graph shows points that are labeled with the following numbers from “1 million” to “100 trillion”:]&lt;br /&gt;
&lt;br /&gt;
:['''Points on graph:''']&lt;br /&gt;
:{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
|1 million&lt;br /&gt;
|[''(2, 1.5)'']&lt;br /&gt;
|-&lt;br /&gt;
|10 million&lt;br /&gt;
|[''(3, 3.5)'']&lt;br /&gt;
|-&lt;br /&gt;
|100 million&lt;br /&gt;
|[''(4, 4.8)'']&lt;br /&gt;
|-&lt;br /&gt;
|1 billion&lt;br /&gt;
|[''(5, 2.8)'']&lt;br /&gt;
|-&lt;br /&gt;
|10 billion&lt;br /&gt;
|[''(6, 4.4)'']&lt;br /&gt;
|-&lt;br /&gt;
|100 billion&lt;br /&gt;
|[''(7, 5.3)'']&lt;br /&gt;
|-&lt;br /&gt;
|1 trillion&lt;br /&gt;
|[''(8, 4.3)'']&lt;br /&gt;
|-&lt;br /&gt;
|10 trillion&lt;br /&gt;
|[''(9, 5.1)'']&lt;br /&gt;
|-&lt;br /&gt;
|100 trillion&lt;br /&gt;
|[''(10, 5.6)'']&lt;br /&gt;
|}&lt;br /&gt;
:[The perceived size increases between most numbers, but decreases between 100 million and 1 billion, and between 100 billion and 1 trillion. The decreases are shown as dashed lines labeled “?”, in contrast to the solid unlabeled lines between the increases. The increases and decreases in perceived size become smaller as the numbers grow in actual size.]&lt;br /&gt;
:[Caption below the panel:]&lt;br /&gt;
:Talking about large numbers is hard&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Line graphs]]&lt;/div&gt;</summary>
		<author><name>TheClipboardWarrior</name></author>	</entry>

	</feed>