德克萨斯州的牧场主正试图向英国农民炫耀他的地产有多大。“我可以黎明时分开车穿过我的土地,直到日落时分仍然没有到达牧场的边界。” 英国人同情地点点头说:“是啊,是啊,我明白你的意思——我也有这样一辆车。”
笑话很少需要进行解释性的剖析,但在这里我请求您的宽容。与所有并非嗜血成性的鳞翅目昆虫学家一样,必须钉住一些胸部,拔掉一些翅膀——一些蝴蝶,即使是最稀有的红蛱蝶,1也必须为昆虫学的发展付出最终的代价。这个被麻醉的笑话有两个明显的陈词滥调的元素,然后是一个出人意料的妙语。典型的德克萨斯人吹嘘所有权和规模,总是能从小而嫉妒的州和国家那里博得廉价的笑声。然而,规模的证明并不是以正常的距离或面积单位来揭示的,而是以穿越该地产所需的时间来衡量的。由于 d = v x t(距离 = 速度 x 时间),因此可以推断,对于给定的常数 v,旅程时间 t 实际上为距离 d 提供了一个合理的比较单位。然而,这个概念突然被那个令人讨厌的自鸣得意、谦虚、讽刺、抽着烟斗的英国人推翻了。德克萨斯州的夸大其词被完全颠倒了:方程式被改写为 t = d/v,而穿越牧场需要 12 个小时的隐含原因不是 d 的巨大、夸大的值,而是 v 的可悲的低值,即汽车的最高速度!
在把这个笑话榨干——并抹去你脸上的任何残留笑容之后——我们可以继续进行我的布道的主要内容:度量标准的诅咒以及它们私生子——单位的危险。一根绳子有多长?算术上的答案是 42。但是 42 什么?说出你的单位:米、英寸、杆、波尔或珀奇?2(如果它是字符串,长度 42 可能是一个纯粹的无单位计数,可能“差一!”)如果你只对比较字符串长度感兴趣,那么单位的选择可能并不重要。如果你的单位选择是一致的,那么相等和大于/小于就是无单位的关系(通常的精度警告除外)。德克萨斯州的帽子无论帽子尺寸如何都更大!在其他地方,将 42 解释为 42 个特定单位的任何东西都至关重要,而且,你几乎不需要被提醒,对混合单位进行粗心的算术运算已知会对生命和预算构成危险。
国际单位制(SI)创建了一套几乎通用的标准单位,从距离、质量和时间这三个基本要素开始,通常被称为公制或MKS制,以单位命名:米(m)、千克(kg)和秒(s)。大多数物理性质都可以从这三个性质推导出来。因此,力,作为质量乘以加速度,可以归结为一个单位,其量纲特征为 N=kg·m/s2,称为牛顿,以纪念物理学中的主要力量。较旧的单位制仍然存在,例如基于英尺-磅-秒的非公制英制(想想大英帝国),正如创造我们全能的上帝所期望的那样。抵制改变并非完全是沙文主义——那里有数十亿个螺母、螺栓、配套扳手和标记的运动场。也有韵律上的反对意见,因为莎士比亚的“Full fathom five thy father lies”在韵律和头韵方面不如“Full meters 9.144 thy father lies”(一英寻是六英尺)。丁尼生的《轻骑兵的冲锋》变成了“2.414016 公里,2.414016 公里向前,全体都进入死亡之谷,冲锋了六百人。”(半里格是 1.5 英里。)
1999 年 10 月,单位混用的戏剧性和代价高昂的危险显现出来。即使在经历了许多令人尴尬的宣传和分析之后,火星轨道器的失败仍然是一个令人震惊的例子,说明一个极其简单的错误是如何悄悄地溜过了数百万美元的细致关注。毫无疑问,彼得·G·诺伊曼(PGN)风险论坛中千年以来讨论过的每一个警告和陷阱,洛克希德·马丁公司和加州理工学院的团队都耳熟能详。你甚至不能说一个团队是对的,另一个团队是错的。所缺少的只是某人或某物来确保可能埋藏在程序嵌套深处的单行代码的协调。
自从宇宙大爆炸之前,我就一直在饶有兴致地阅读 PGN,我经常想,“这太明显了——没有人会犯这种错误!” 然而,我想 PGN 从未认为有必要写道,“当发送信号施加 N 单位的力来纠正 1.25 亿美元的火星极地轨道器的轨道时,请仔细、三重检查发送者和接收者引用的力单位是否相同。” 这里面有微妙的讽刺意味。虽然一牛顿是 7.2330 磅达,这听起来像是一个致命的差异,但轨道速度调整毫米/秒所需的力实际上非常小。在这个比平时更长的任务中,微小的差异累积起来,但据说飞船仍然只差一根头发丝(非洲语计量学家称之为 kuntzhaar)就偏离了错误的轨道,然后在火星大气层中解体。
另一个可能的单位不匹配更难验证。地震学家钟浩寿声称,他对 2000 年 5 月 19 日发生的阿拉斯加地震进行了更好的私人预测(通过观察到的地热活动)。帕萨迪纳站不同意寿的计算结果,不同地点地震数据库的设置方式不同,加剧了这个问题。寿通过展示他的数据与伯克利站的数据相符来为他的结果辩护。对此,帕萨迪纳的发言人回答说:“伯克利是错的。他们的数据总是比我们的大。”(参见 http://quake.exit.com/A000521.html。)
深入但简要地挖掘,度量标准不仅仅是卷尺、体重秤和时钟。并非所有的拓扑空间都是严格可度量的,即使被证明是可度量的,度量标准也可能是未知的。3 例如,衡量程序员的实际产出或程序的结构复杂性,常常会扩展度量标准的数学含义。然而,计算宣传册中字符串“度量标准”的出现次数,似乎为该产品的市场适销性提供了一个可靠的度量标准。
回到我们的德克萨斯故事,考虑相关的模型,我们用光年测量天文距离:我们将 v 作为常数(就我们所知)c,真空中的光速,然后以光传播距离 d 所需的年数来计算 t。有趣的是(或者不有趣,取决于你的严肃程度),它是许多笔误的根源。在至少两位知识渊博的科学家(宇宙学家弗雷德·霍伊尔和数学家道格·惠特克)的科幻小说中,我们发现空间单位被当作时间单位来对待(或者为了避免歧义,当作时间单位)。因此,我们遇到人们等待给定的光年数才能发生某事!
当然,“年”是一个难以确定的概念。即使我们将自己限制在地球年,这个在千年里受到密切关注的主题,我们最终也会得到任意的 IAU(国际天文学联合会)选择的儒略历年,即 365.25 天,每天精确地为 24 小时。这种古代单位的混合给我们带来了“参考年”,恰好是 31,557,600 秒,这在上帝甚至史蒂芬·霍金看来都算不上一个基本常数。光速 c 的值是出奇地精确的。这个神奇的基本 c 只是麦克斯韦方程组中出现的一个常数,恰好具有量纲 d/t(速度)。爱丁顿过去常说,它的值可以由一位天生的盲人物理学家在煤窖里计算出来。无论如何,给定 c 和参考年,标准光年约为 9,460,730,472,581 Pm(拍米,其中 peta 表示 1015)。
事实上,时间的国际单位现在是基于一种更精确可测量的自然现象,即铯-133 原子的行为。定时秒是铯原子辐射的某些状态跃迁的持续时间。而且,重要的是,米不再依赖于地球的大小或存储在巴黎的铁棒的长度,而是被定义为在给定时间内行进的长度——该时间以上述标准秒为单位测量。这些改进实际上并没有改变秒或米的值,而是提供了更准确和稳定的比较。质量的国际单位仍然是老式的:一块 117 年历史的铂铱合金块,称为 IPK(国际千克原器)。但这种情况不会持续太久。两种新的、更基本的定义千克的方法正在出现(参见伊恩·罗宾逊的“Weighty Matters”。《科学美国人》,2006 年 12 月)。
所以,米现在是仿照光年模型(光在给定时间内传播的距离)来定义的。事实上,这个概念在所有像样的计算机历史中都发挥着作用:想想格蕾丝·霍珀著名的纳秒技巧。这位令人钦佩的美国海军指挥官(后来的海军上将)和 Cobol 发明家会在讲座中分发一英尺长(12 英寸)的电线,解释说它们代表光纳秒。(是的,我在 Univac 工作时确实见过这位令人敬畏的女士,但我从未直接看到过电线技巧。)
光年推导的模糊性(什么是年?)导致天文学家更喜欢用秒差距来测量距离。秒差距源自更自然的(至少对于天文学家而言)物体视差的角度测量(当观察者移动时其视位置的明显位移)。因此,一颗距离一秒差距的恒星具有一角秒的视差(其中秒在角度测量中令人困惑,与时间有很强的词源联系)。可怜的秒差距只有 3.262 光年;更方便的单位是熟悉的百万秒差距。
现在是放弃无聊的国际单位制的时候了,它带有可恨的法国波拿巴主义的影响和拼写。为了在伤口上撒盐,我们提出了英制单位更具历史色彩的变体。FFF(弗隆/桶/弗特奈特)系统用以下易于记忆的表格取代了 MKS
1 弗隆 = 1/8 英里(201.168 米)
1 桶 = 9 英制加仑水的质量(40.91481 千克)
1 弗特奈特 = 14 天,每天 24 小时(1,209,600 秒)
光速变为令人难忘的 1.8 太拉弗隆/弗特奈特。
在其他地方,有无穷无尽的奇特单位来分散我们的注意力。面积以多少“足球场”来表示,而英国的高度则以特拉法加广场的纳尔逊纪念柱为基础。美的单位取决于克里斯托弗·马洛的《海伦》,她的甜美面容“发动了千艘战舰”。因此,毫海伦是可以发动一艘战舰的美的数量。最近的阐述是,丑陋可以用负海伦值来表示,例如当我们说他的或她的脸可以击沉一艘战列舰时。不太熟悉的可能是芬兰的计算机系统支持单位 mikrotuki,它是在诺基亚的赫尔辛基实验室创造的。这依赖于语言上的怪癖,即 mikrotuki,意思是“微型计算机支持”,可以被理解为 1 百万分之一的 tuki。因此,皮可图基是纳诺图基的千分之一,等等。
但是,把最好的留在最后,我提出核碰撞期间有效横截面积的单位,称为靶恩,它大约等于 10(-28) 平方米。它是我所知道的唯一一个最初由美国国防部保密的单位名称!我的化学家朋友肯·阿什克罗夫特引用靶恩作为核物理学家天生具有异想天开的怪异性的证据,对此我回答说:对于这样一个明显微小的面积来说,靶恩这个词确实带有一丝异想天开的味道,但这种怪癖的方向恰恰相反。我们碰巧认识两位创造这个单位名称的人,以及何时、何地和原因。而且这个故事对世界历史具有巨大的意义,因为它阐明了原子弹的诞生和核能的发展——这就是为什么这个术语直到 1948 年才解密的原因。
我声称,没有哪个物理单位的命名比靶恩更恰当了!事实上,就其他粒子物理单位而言,靶恩代表着一个令人难以置信的巨大面积——比预期的要大得多,以至于在任何情况下,靶恩都可以被评为故意的轻描淡写!
普渡大学物理学家马歇尔·哈洛威和查尔斯·贝克是这个术语的创造者,他们报告了他们在普渡纪念联盟共进晚餐时就此进行的内部辩论,然后才决定用靶恩4来描述碰撞期间铀核的有效横截面积。早期被否决的选项是奥本海默、贝特和曼利,以纪念洛斯阿拉莫斯小组的知名成员。当其中一人看着 10(-24) 平方厘米这个数字时,惊呼对于核过程来说,这真的“像谷仓那么大!”时,才做出了决定。
为了强调靶恩的大小(就像侮辱一样,“他用一把血淋淋的班卓琴都打不中谷仓”),实践中最常见的子单位是费姆托靶恩(10(-43) 平方米),它小得难以想象!要得到一个费姆托靶恩,只需将靶恩除以 1,000,000,000,000,000。
斯坦·凯利-布特尔(http://www.feniks.com/skb/;http://www.sarcheck.com),出生于英国利物浦,20 世纪 50 年代在剑桥大学攻读纯数学,之后在开创性的 EDSAC I 上研究计算机科学的杂质。他的众多著作包括《魔鬼的 DP 词典》(McGraw-Hill,1981 年)、《理解 Unix》(Sybex,1994 年)以及最近的电子书《计算机语言——斯坦·凯利-布特尔读者》(http://tinyurl.com/ab68)。《软件开发杂志》已将他评为首届斯坦·凯利-布特尔折衷技术奖年度奖项的获得者,以表彰他在“技术和文学方面的终身成就”。诺贝尔和图灵都没有获得如此珍贵的同名认可。在他的艺名斯坦·凯利下,他还作为歌手和词曲作者享受着并行事业。
最初发表于 Queue 第 5 卷,第 2 期—
在 数字图书馆 中评论本文
凯瑟琳·海斯,大卫·马龙 - 质疑评估非密码哈希函数的标准
尽管密码哈希函数和非密码哈希函数无处不在,但在它们的设计方式上似乎存在差距。存在许多受各种安全需求驱动的密码哈希标准,但在非密码方面,存在一定程度的民间传说,尽管哈希函数历史悠久,但尚未得到充分探索。虽然针对现实世界数据集的均匀分布是很有意义的,但当面对具有特定模式的数据集时,这可能是一个挑战。
妮可·福斯格伦,艾里尼·卡利亚姆瓦库,阿比·诺达,米凯拉·格雷勒,布莱恩·霍克,玛格丽特-安妮·斯托里 - DevEx 行动
DevEx(开发者体验)在许多软件组织中越来越受到关注,因为领导者在财政紧缩和人工智能等变革性技术的背景下寻求优化软件交付。技术领导者凭直觉接受良好的开发者体验可以提高软件交付效率和开发者幸福感。然而,在许多组织中,为改进 DevEx 而提出的倡议和投资难以获得支持,因为业务利益相关者质疑改进的价值主张。
若昂·瓦拉霍,安东尼奥·特里戈,米格尔·阿尔梅达 - 低代码开发生产力
本文旨在通过展示使用基于代码、低代码和极限低代码技术进行的实验室实验结果,研究生产力方面的差异,从而为该主题提供新的见解。低代码技术已清楚地显示出更高的生产力水平,为低代码在短期/中期内主导软件开发主流提供了强有力的论据。本文报告了程序和协议、结果、局限性和未来研究的机会。
伊瓦尔·雅各布森,阿里斯泰尔·科克伯恩 - 用例至关重要
虽然软件行业是一个快节奏且令人兴奋的世界,新的工具、技术和技巧不断被开发出来以服务于商业和社会,但它也很健忘。在它匆忙前进的过程中,它容易受到时尚潮流的影响,并且可能会忘记或忽略一些已经过验证的解决它所面临的一些永恒问题的方案。用例,最早于 1986 年引入,后来被普及,就是那些经过验证的解决方案之一。