[1695] Code Quality 2

Title Text:It’s like you tried to define a formal grammar based on fragments of a raw database dump from the QuickBooks file of a company that’s about to collapse in an accounting scandal.<

Origin:https://xkcd.com/1695/

https://www.explainxkcd.com/wiki/index.php/1695:_Code_Quality_2

这部漫画是Code Quality系列中的第二部,是1513的直接延续:Code Quality在这之前发布了一年。接下来是

差不多一年后到1833年:代码质量3。

这是因为它显然是第一个的延续,很明显是Cueball从小组回答。

正如在第一部分中我们再次看到Conyball被引入源代码Cueball所写,并且他警告她,他是自学成才的,所以他的代码可能不会按照她习惯的方式编写。在第一部漫画中,她继续诗意地描述她遇到的代码的混乱,使用了对儿童建筑房屋的参考,公司律师创建的食谱或一对夫妇在宜家争论的成绩单,以及在代码中使用表情符号(标题文本)。

在这部漫画中,她继续发表这一续集,继续发表这部续集,并简短地评论了她如何厌恶阅读Cueball的代码。 Cueball甚至没有出现在这部漫画中,只有两次在面板外回复,但由于标题清楚地表明这是一部续集,毫无疑问它是Cueball。通过这里的四个评论以及标题文本中的第五个评论,她现在已经成功地对Cueball的编程技巧发表了至少九篇贬义言论。

在第二个面板中,Ponytail引用了“OCR”(光学字符识别),这是一种使用软件识别图像中文本的技术。在这种情况下,她指的是拼字游戏的图片,这是一种流行的制作词的游戏,其中玩家具有伪随机字母集,并且必须将它们排列在网格上以形成互锁单词。 OCR软件在编写时非常不完美,并且通过OCR程序输入的Scrabble板上的交叉半随机字可能会产生可疑的结果,当然不适合当前的代码标准。

Ponytail观察到Cueball的代码比典型的Scrabble板更经常地包含JavaScript保留字,这是代码看起来至少模糊地代码的特许。保留字,如“作用”? “f”和“etnurn”是代码的基本构建块,并且大多数代码经常使用它们。 (它们被称为“保留”,因为这些词是为它们的实际含义保留的,例如定义一个函数)?程序员可能不会用这些名称创建变量。)至于为什么“riple points”?转换为那些的流行单词,Scrabble的积分系统是基于单个字母的值,结合游戏板上的某些修正方块,可以提升积分。 “三重点”是游戏中可用的最高级修饰符(虽然它可以是特定字母或整个单词的三重点),并且是玩家高度追捧的。

第三个小组继续Ponytail的咆哮,这次参考海军天气预报,鸟类干扰和缩进。天气预报是一个复杂的多维数据阵列,用于在一定时间内预测或评估一个地理区域的大气条件。海军天气预报使用极其简洁的代码发送信息,使未经训练的读者无法理解。啄木鸟(一种以其快速连续啄食动作而闻名的鸟)“捶打”(啄食)键盘上的Shift键会导致许多字母被随机大写,这将使抄录变得更加复杂。缩进是将一段文本从起始边缘进一步移位的做法,在编码中通常用于组织函数和语句,但如果“随机”完成则仅用于加扰代码层次结构。第四个小组参考着名诗人E. E. Cummings和用户名建议。 Edward Estlin Cummings是一位以非传统方式使用大写字母,标点符号和换行符的诗人。提供会员资格的网站通常还要求用户创建一个假名(称为“用户名”),用于跟踪/验证他们在网站上的操作,以及将其识别到网站的社区。其中许多网站还要求用户名是唯一的。在热门网站上,用户已经保留了许多常用的单词,短语和名称,因此在注册时,许多人遇到了他们想要的名字已经被采用的情况。在发生这种情况的许多网站上,网站可能会建议备用用户名,通常基于输入的用户名。例如,如果用户名“Hedgeclipper”已被保留,则网站可能会建议使用“Hedgeclipper1234”或“H3dg3clipp3r”,具体取决于建议背后的算法。在其他情况下,要求用户输入其姓名等个人信息的网站可能会根据其名称建议用户名,后面带有一串数字,例如“Joshua1128”。完全用这些半随机的建议写的E. E. Cummings诗将使得这首诗更加“不寻常”,而不是他的作品已经被考虑过了。

最后一个小组的明喻包括马尔可夫链接,聊天机器人(可能),公交时刻表和潜在的车辆疏忽。 Applied Markov链接是许多计算机算法中使用的一种过程,它试图模拟真实世界的概念,如语音模拟和决策制定。其固有的随机性也使其成为股票市场分析和语音识别等不可预测事物的候选者。公交车时刻表通常很复杂并且充满了记号,并且因混淆不习惯阅读它们的人而臭名昭着。使用应用马尔可夫链来识别和响应语音/文本的聊天机器人依赖于输入清晰且用简单语言组织良好。向这样的机器人“提供”公交时刻表可能会导致回报完全乱码而且难以理解。当马尾辫表示时间表来自一个“公共汽车不断崩溃”的城市时,这个问题就变得更加复杂了,如果这种情况发生得如此频繁,以至于时间表实际上已经将崩溃考虑在内,这将是可怕的。但是,没有说明撞车的原因,也不清楚乘客是否处于危险之中。如果问题是行人自杀,公共汽车可能是安全的。更可怕的是聊天机器人输出的进一步不可预测性来自这种不可预测的输入。

Cueball最后评论说“它现在运行正常”,这表明他知道代码有问题,但不愿修复它们,因为它或多或少地服务于它的功能。马尾辫回答说“燃烧的公共汽车也是如此”,这在技术上是正确的,但“现在”部分意味着任何时候都可能造成灾难和伤害,这可能发生在燃烧的公共汽车上。

在标题文字中,马尾辫做了最后的评论。形式语法是描述文本结构的一种方式,使得计算机可以识别或生成这样的文本。原始数据库转储是从数据库导出数据,以便将其传输到另一个数据库或将其导入到程序中,查看“没有”而不进行处理以使人们易于阅读。 QuickBooks是一种会计软件包。该公司在会计丑闻中崩溃意味着他们的会计数据库即使是人类可读的格式也会变得一团糟。

You May Also Like

More From Author

Leave a Reply

Your email address will not be published. Required fields are marked *