Difference between revisions of "1742: Will It Work"

Explain xkcd: It's 'cause you're dumb.
Jump to: navigation, search
(Explanation)
Line 16: Line 16:
 
'''GitHub Link:''' [https://github.com/ GitHub] is a website where people can host [https://en.wikipedia.org/wiki/Git Git] repositories of code that they are working on. Since Git is built to track changes in code for an entire project, it is likely that all of the code needed to run the project is included in the download. One reason it may be less reliable that the previous entry is that it may not include external libraries expected to already be on the user's computer.
 
'''GitHub Link:''' [https://github.com/ GitHub] is a website where people can host [https://en.wikipedia.org/wiki/Git Git] repositories of code that they are working on. Since Git is built to track changes in code for an entire project, it is likely that all of the code needed to run the project is included in the download. One reason it may be less reliable that the previous entry is that it may not include external libraries expected to already be on the user's computer.
  
'''Sourceforge Link:'''
+
'''SourceForge Link:''' [https://sourceforge.net/ SourceForge] is similar in scope to GitHub : hosting source code repositories but also binary packages. But it is older and dwindling in popularity. As a results, a project hosted on SourceForge is more likely to be abandoned.
  
 
'''Geocities/Tripod Link:''' Geocities is a now defunct free website host. The fact that the software comes from there means that nobody has paid attention to the project since Geocities shut down. Which could mean that code rot has begun to take effect, with various dependencies being less and less likely to work over time.
 
'''Geocities/Tripod Link:''' Geocities is a now defunct free website host. The fact that the software comes from there means that nobody has paid attention to the project since Geocities shut down. Which could mean that code rot has begun to take effect, with various dependencies being less and less likely to work over time.

Revision as of 10:32, 5 October 2016

Will It Work
'Copy and paste from a random thread on a website' is the hardest to predict, and depends on the specific website, programming language, tone of the description, and current phase of the moon.
Title text: 'Copy and paste from a random thread on a website' is the hardest to predict, and depends on the specific website, programming language, tone of the description, and current phase of the moon.

Explanation

Ambox notice.png This explanation may be incomplete or incorrect: Should include a description of each source mentioned in the comic, and why it is in the order it is. Does anyone have an example of a paper with code in an appendix?
If you can address this issue, please edit the page! Thanks.

This comic humorouslyTemplate:citation needed lists how likely computer code is to function on the user's computer based on the source of the code.

App store or package manager: Most likely referring to the Mac or iOS App Store, Google Play or package managers such as debian's apt. Programs in the App Store are already compiled from raw code into executable files that have been tested on a Mac computer or iOS device, and so should be expected to run with no effort from the user. Similarly, a package manager for a Linux OS handles downloading and installing the program requested, as well as installing any dependencies (other programs or libraries needed by the desired program) automatically.

GitHub Link: GitHub is a website where people can host Git repositories of code that they are working on. Since Git is built to track changes in code for an entire project, it is likely that all of the code needed to run the project is included in the download. One reason it may be less reliable that the previous entry is that it may not include external libraries expected to already be on the user's computer.

SourceForge Link: SourceForge is similar in scope to GitHub : hosting source code repositories but also binary packages. But it is older and dwindling in popularity. As a results, a project hosted on SourceForge is more likely to be abandoned.

Geocities/Tripod Link: Geocities is a now defunct free website host. The fact that the software comes from there means that nobody has paid attention to the project since Geocities shut down. Which could mean that code rot has begun to take effect, with various dependencies being less and less likely to work over time.

Copy-and-paste example from paper's appendix:

Anything that "requires only minimal configuration and tweaking": Usually means that the code was tested and works with minimal configuration and tweaking on the system it was developed on but the experience might vary wildly for anybody else trying to get it to work. It's also often used by technically advanced people who are not aware how difficult even minimal configuration and tweaking can be for beginners.


The title text refers to websites such as StackOverflow that allow users to post questions about their code and other users answer. Websites like StackOverflow usually generate useful answers but the quality may be lower if the conversation is disgruntled (i.e. if the asker has put in very little effort to solve the problem themselves) or if the language is less commonly used.

Saying that something "depends on the phase of the moon" usually means that there is some apparently random component to the problem, as neither the performance of a program nor the quality of answers on websites should depend on the position of the moon in its orbit. However, there was at least one case where the phase of the moon did, in fact, cause a bug in code.

Transcript

Ambox notice.png This transcript is incomplete. Please help editing it! Thanks.


comment.png add a comment! ⋅ comment.png add a topic (use sparingly)! ⋅ Icons-mini-action refresh blue.gif refresh comments!

Discussion

I think original poster did a great job transcribing, but missed the point somewhat. While it is true that package managers make the installation process more robust for average users (they sometimes also screw things royally), Randall probably wanted to make the point that projects which have reached package state are the most mature, tested and debugged. Using public git repository also speaks well about coding practices and hence product quality. On the other hand, code which requires manual tweaking to be installed likely has only been seriously used by its author (if at all) and is very likely to contain fatal bugs. 172.68.11.85 08:06, 5 October 2016 (UTC) qm2k

With fatal bugs, it wouldn't work for author either. However, it can depend on some obscure combination of libraries and tools versions, and you need to guess which libraries it depends on to start with. -- Hkmaly (talk) 15:33, 9 October 2016 (UTC)

Also, I believe this misses the joke about Geocities. I don't believe he is referring to code that was downloaded from Geocities at some distant past date, but code for which you are today given a link on Geocities to get it. The joke here is that, despite the fact that the chance of installing that code is zero, this is still better than code needing to be tweaked. JamesCurran (talk) 15:06, 5 October 2016 (UTC)

The chance of successfully finding code from a Geocities link is not zero - there's a nonzero chance that the page survived on the Wayback Machine (and/or on one of the projects dedicated to archiving Geocities specifically). It is, however, still tiny. (Incidentally, what's Tripod? The explanation doesn't mention it at all.) --172.68.11.85 23:05, 6 October 2016 (UTC)

xkcd.com is best viewed with Netscape Navigator 4.0 or below on a Pentium 3±1 emulated in Javascript on an Apple IIGS at a screen resolution of 1024x1. Please enable your ad blockers, disable high-heat drying, and remove your device from Airplane Mode and set it to Boat Mode. For security reasons, please leave caps lock on while browsing. 162.158.239.63 18:58, 7 October 2016 (UTC)

Anybody else old enough to remember when there were "installation wizards"? Whatever happened to those? 108.162.238.161 17:07, 15 October 2019 (UTC)