Talk:688: Self-Description
This is one of the comics with a direct link at the bottom of xkcd. 173.26.186.224 04:18, 29 December 2012 (UTC)
I do wish they said 'comic' rather than 'image' as for the longest time, I assumed 'image' only referred to the individual box, which doesn't make each one necessarily linked.24.70.188.179 06:52, 27 January 2013 (UTC)
- Anyone know what language Randall may have used to create this image? Perhaps Python? and how do you prevent it from entering an infinite feedback loop? Saibot84 (talk) 23:02, 12 May 2013 (UTC)
- I'd do it in Perl, but that's because I'm a bit partial to Perl. I don't think it matters too much. It could even be a semi-manual process.
- However, whatever way it's done, if there was a loop (or a flip-flop state, i.e. more black pixels overall means less black pixels on a graph, which means less black pixels overall, without a point of stability) then I'd detect for that and work out which "immutable" parts (e.g. lengths of drawn axes) could be altered by an appropriate number of pixels to have another go at looking for stability. In Perl, that'd be detected by something like a simple "$coverage{$no_of_black_pixels}++" for every state visited, with an "if (exists $coverage{$no_of_black_pixels}) { reject_and_renew() }"-style check before that, probably "die"ing the program to let me read the log of rejections that led there and let me choose a basic change (or other mutable element) that could lead us in the right direction.
- In an interview, Randall Munroe explains that he did it completely by hand, counting the black pixels with Photoshop and iterating manually. Notice that, once you chose the radius of the disc, the width and scale for the rectangles of the second panel, and the text, decorations and legend, it is fairly easy to write the equations satisfied by the amount of black ink each panel. It turns out to be a set of linear equations, easily solved. This is for the continuous problem (say, if the comic strip were drawn with Bezier curves and a vector image). For the discrete problem, you have to iterate a little bit from this first insight, but not that much. 138.96.199.247 10:15, 16 September 2013 (UTC)
- As a more simple example, if the original title-text hadn't turned out to be one where a certain stated number of characters made the text that same number of characters, I'd add, remove or change a word (or item of punctiation!) towards something that worked. As a dumb example of the way I'd do it: "This sentence has <foo> characters." has 35, there, including the five of "<foo>", so "thirty-five" would be six too many, "forty-one" would be 39-long, "thirty-nine" makes it "forty-one", and we know that loops back. I could be more intelligent and choose a number where own_length==(what it depicts, minus thirty), where the easy answer is "32" in digits. But there's no obvious set of number words that obet that rule, so let's change the sentence to "There are <foo> characters in this sentence.", and see where that leads us. Quick answer? 39+length of added number words. If I'm right, that's "forty-nine".
- Of course, there are multiple loop-backs with a self-referential image. But while it would be 'obvious' if extra spaces were inserted (or some removed!) to make a line of text fit itself in a self-referential way, an image has more "neutral space" (or 'fill') that can be changed with no effect on itself but (in a non-linear way and deminishing returns, especially with the multiple levels of recursion in the third panel) can shuffle values in the rest, perhaps to hit upon a self-consistent result overall. Narrowing or widening the panes (thus making more/less white space, and only slightly different black space) could change the ratio enough to hit a solution. Or altering the radius of the pie-chart by a pixel or three (while obviously also updating the angle filled in) could help. And if it didn't work with a pie-chart, for some reason, a big block of text saying "x% black vs y% white", or similar, could have possibly set up a result. The problem is not finding a method of solving the problem, but that there are way too many ways. But once you hit one that doesn't look forced, that'd be good enough and you could roll with it.
- Still, I'm rather in awe of the concept of the comic. I know I could repeat it (or something very like it), but to think of the idea in the first place is, I think, the most amazing thing about what we have here...
- Too wordy? Meh... There are three-hundred and twenty-one 'e's in this entry. 31.111.35.144 19:39, 15 May 2013 (UTC)
- (Post-script: of course "three-hundred and twenty" would also have worked, there, assuming I counted correctly in the first place! 31.111.35.144 19:39, 15 May 2013 (UTC))
This could be another reference to the mysterious 242 inside joke which is mentioned in another comic's title text (forgot which one)141.101.98.253 14:43, 22 January 2014 (UTC)
- 903:Extended Mind 172.68.78.82 01:49, 14 January 2017 (UTC)
Should I make a picture of the mentioned dependency graph and put it in the article? Basically it would be like a less ugly version of this. Fabian42 (talk) (please sign your comments with ~~~~)
- I don't think this would explain anything from the comic and I can't find a "dependency graph" mentioned.--Dgbrt (talk) 14:23, 25 August 2017 (UTC)
- In the mouseover text: "The graph of panel dependencies" Also this wiki explains everything in every possible detail, so I think it would be ok to include. The page is short for the amount of complexity in this comic anyway. Fabian42 (talk) 14:36, 25 August 2017 (UTC)
- Yup, I should have read everything before answering. Maybe some wiki articles should be mentioned too: Dependency graph, Circular dependency, and of course Dependency hell. The paragraph here definitively needs an enhancement. Your edits are welcome and a nice picture I can upload for you. And when necessary you also can set the incomplete tag.--Dgbrt (talk) 15:06, 25 August 2017 (UTC)
- In the mouseover text: "The graph of panel dependencies" Also this wiki explains everything in every possible detail, so I think it would be ok to include. The page is short for the amount of complexity in this comic anyway. Fabian42 (talk) 14:36, 25 August 2017 (UTC)
I created a composite image showing the original comic, then the scatterplot enlarged to the size of the original, then iterate a couple more times. Is there a way to upload and link images here, and would that be a useful addition to the explanation? Matchups (talk) 16:00, 21 February 2018 (UTC)
The time used to draw something like this out on paper must have been mind-boggling. Klyxm (talk) 4:05, 5 May 2018 (UTC)
SMBC did it first.