<?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=Corecii</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=Corecii"/>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php/Special:Contributions/Corecii"/>
		<updated>2026-04-24T03:12:51Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>https://www.explainxkcd.com/wiki/index.php?title=2531:_Dark_Arts&amp;diff=219570</id>
		<title>2531: Dark Arts</title>
		<link rel="alternate" type="text/html" href="https://www.explainxkcd.com/wiki/index.php?title=2531:_Dark_Arts&amp;diff=219570"/>
				<updated>2021-10-21T12:03:34Z</updated>
		
		<summary type="html">&lt;p&gt;Corecii: Reformat as a list. Text was written like a list, but formatted like a paragraph, making it very confusing when you e.g. parse &amp;quot;Read only filesystem.&amp;quot; as a standalone sentence.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{comic&lt;br /&gt;
| number    = 2531&lt;br /&gt;
| date      = October 20, 2021&lt;br /&gt;
| title     = Dark Arts&lt;br /&gt;
| image     = dark_arts.png&lt;br /&gt;
| titletext = You think, 'okay, THIS is an ideal use case for hardlinks!' but then 6 months later you're doing some extremely cursed Google search like 'javascript ext4' and wondering where things went wrong.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
==Explanation==&lt;br /&gt;
{{incomplete|Created by a V8-BASED EXT4 FUSE DRIVER - Please change this comment when editing this page. Do NOT delete this tag too soon.}}&lt;br /&gt;
&lt;br /&gt;
In this comic, [[White Hat]] has presumably just asked [[Cueball]] to perform some task involving {{w|file system|filesystems}}. Cueball responds to this request with an extremely melodramatic monologue, referring to knowledge of the subject as &amp;quot;dark arts&amp;quot; and stating he'd rather not have anything to do with them, as they are too dangerous. &lt;br /&gt;
&lt;br /&gt;
This reaction is reminiscent of a fairly typical scene in e.g. superhero movies, where a person with supernatural powers explains they prefer not to use them, as their use is likely to have negative effects that outweigh the positive ones. Often this is tied to a tragic backstory of the character, where the use of their powers previously caused them or someone close to them much pain and suffering.&lt;br /&gt;
&lt;br /&gt;
A filesystem is the part of a computer's {{w|operating system}} that handles the organisation of data on a (usually) hard drive, splitting it into (usually) files and directories. It is almost invariably a very complicated piece of software. Because of this, it is very easy to make mistakes when interacting with it outside of the most common operations most users would be familiar with, and because it controls practically all of a user's data on a given machine, mistakes made can have very serious consequences (i.e. loss of data). This is probably why Cueball is afraid of messing with them.&lt;br /&gt;
&lt;br /&gt;
{{w|ext4}} is a filesystem in popular use with the {{w|Linux}} operating system kernel. One of its features is the concept of {{w|hard_link|hardlinks}}, which allow two unrelated filenames to refer to the same underlying file. These can be particularly tricky to use, as in nearly all respects they look like regular files, but modifying them can have effects that are not immediately obvious (i.e. by changing the contents of another file). Hardlinks and their misuse have been referenced in xkcd before, as in [[981: Porn Folder]]. &lt;br /&gt;
&lt;br /&gt;
The title text hints at an experience Cueball or [[Randall]] has had in the past (his own &amp;quot;tragic backstory&amp;quot;, if you will), involving hardlinks on ext4. He thought he had found an ideal use case for them, one which presumably avoided most of their pitfalls, but still, 6 months later, ends up having to troubleshoot some inscrutable bug arising from his decision.&lt;br /&gt;
&lt;br /&gt;
{{w|Javascript}} is a programming language most often associated with web pages. Because of this it is not usually interacting directly with a computer's filesystem, as allowing arbitrary websites to access the filesystem is widely considered an extremely bad idea{{citation needed}}, from a security standpoint. It ''is'' possible to run Javascript directly outside of a browser -- in which case it does have access to common filesystem operations, and even theoretically to the internals of the filesystem -- but since it is a high-level language with poor support for working with the data structures a filesystem uses, this would be a painful, &amp;quot;cursed&amp;quot; way to go about things.&lt;br /&gt;
&lt;br /&gt;
An experienced IT professional will be reminded of their own experiences and mishaps with non trivial file system configurations. Beyond hardlinks, fileystems may have a number of features a normal user or even an admin are not aware of. Such features are prone to bugs, poor documentation or poor integration with other system tools.&lt;br /&gt;
For example:&lt;br /&gt;
* Symbolic links can be easily confused with hard links. While symbolic links work &amp;quot;everywhere&amp;quot; hardlinks are generally limited.&lt;br /&gt;
* Compressed filesystems can cause unexpected side effects in performance, quota management and disk fragmentation.&lt;br /&gt;
* Sparse files and shallow copies (copy on demand). &lt;br /&gt;
* Live filesystem backup and file locking.&lt;br /&gt;
* Read only filesystems.&lt;br /&gt;
* 'Virtual' filesystems, like memory backed and file backed file systems, backed by dynamic data or databases.&lt;br /&gt;
* 'Overlay' file systems where a read only portion is overlayed and partially shadowed by another file system.&lt;br /&gt;
* File caching for read or write operation.&lt;br /&gt;
* Syncing file systems.&lt;br /&gt;
* Many, many more.&lt;br /&gt;
&lt;br /&gt;
==Transcript==&lt;br /&gt;
:[Cueball and White Hat stand in a slightly darkened room, with a jagged circle of light centered on Cueball emanating from the floor and light reflecting onto White Hat's face. Cueball holds his arm out with his palm facing towards White Hat.]&lt;br /&gt;
:Cueball: Long ago, in another age, I mastered these dark arts.&lt;br /&gt;
:Cueball: But I now endeavor to live my life such that I never need them.&lt;br /&gt;
:Cueball: Their power leads only to ruin.&lt;br /&gt;
:[Caption below panel]&lt;br /&gt;
:My response whenever anyone asks me to mess around with filesystems&lt;br /&gt;
:[Mouse over]&lt;br /&gt;
:You think, &amp;quot;'okay', this is an ideal use case for hardlinks!&amp;quot;, but 6 months later you are doing some extremely curse Google search like 'javascript ext4' and are wondering where things went wrong.&lt;br /&gt;
&lt;br /&gt;
{{comic discussion}}&lt;/div&gt;</summary>
		<author><name>Corecii</name></author>	</entry>

	</feed>