Prompt 语宙Prompt 语宙
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
    • 强化 AI 学习
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
Search
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2024 Prompt 语宙. HalfPX. All Rights Reserved.
阅读: 为何糟糕的科研代码胜过严格遵循编程规范的代码 [译]
Share
登陆
通知 阅读更多
Font Resizer字体
Font Resizer字体
Prompt 语宙Prompt 语宙
Search
  • 首页
  • 语宙 AI 导航
  • AIGC 资讯
    • AIGC 早报Hot
    • 最新趋势
    • AI 工具
    • 热门资源
    • 强化 AI 学习
  • AI 绘图
    • Prompt 实战
    • AI 绘画教程
    • 模型精选
  • AI 图库
    • 人物
    • 展台场景
    • Banner
    • 游戏
    • 动物
    • 食物
    • 自然
    • 背景
    • 海报
    • 建筑
    • 室内设计
  • 出海数字营销宝典
  • AI 生图 Prompt
    • 写实人像
    • 产品与广告
    • 游戏资产与 3D
    • 界面与图标
    • 建筑与室内
    • 动漫与插画
    • 风景与自然
已有帐户? 登陆
  • Contact
  • Blog
  • Complaint
  • Advertise
© 2023 Prompt 语宙. Paooo.com. All Rights Reserved.
Prompt 语宙 > 强化 AI 学习 > 为何糟糕的科研代码胜过严格遵循编程规范的代码 [译]
强化 AI 学习

为何糟糕的科研代码胜过严格遵循编程规范的代码 [译]

宝玉的分享
最近更新: 2024年8月25日 下午6:15
SHARE

我刚读了一篇名为“科学代码的低质量”的文章,作者认为科学家编写的代码质量不如涉及到“软件工程师”的情况。

在过去的十多年里,我一直在一个以数学或物理背景人士为主的环境中工作,这里的人对“软件工程”的了解相对有限。

一直以来,最大的混乱往往是那些自认为是程序员的少数人造成的。我必须承认,自己也曾制造过几次大混乱,而这些混乱至今还未得到解决。还有几次其他的大混乱,幸好代码被废弃了,这意味着给我的雇主造成的损害仅限于我薪水的浪费,没有对他人的工作效率产生负面影响。

我声称自己基本上已经改过自新了。我努力保持事情的简单无聊,并且我认为在过去 5-6 年里,我没有做过什么让许多人因为处理我错误的聪明创意而奇怪地看着我。

我也知道一些程序员明确地没有改过自新。人们怪异地看着他们,而他们则认为自己是对的,是其他人疯了。

同时,那些不是程序员,但更像是数学家、物理学家、算法开发者、科学家等人,通常会犯以下几种错误:

  • 函数过长
  • 取名不佳(如 m、k、longWindedNameThatYouCantReallyReadBTWProgrammersDoThatALotToo)
  • 随处访问 – 全局变量/单例、“全能对象”等
  • 崩溃(空指针、边界错误),主要依靠 valgrind 和大量测试来减轻
  • 对并行编程错误的漠不关心(几乎完全依靠工具解决)
  • 过于轻易地使用那些由聪明的程序员编写的库,这些库中充满了重载操作符和模板等复杂内容

我觉得这些还算可以处理。如果有人需要我的帮助来调试某些东西,我通常能够理解这些人在软件方面想要做什么。在算法层面,我可能不完全理解他们。但是他们想把哪个变量传递给哪个函数,我通常都能明白。

而软件工程师的错误则完全不同:

  • 复杂的多重/虚拟继承
  • 主要由轻量包装构成的 7 到 14 层栈帧,其中包括函数指针/虚函数,可能还在中断处理程序中
  • 文件散布在无数目录中
  • 使用来自地狱的动态结构进行查询 – 如运行时拼接各种部分形成的名称的字典等
  • 动态加载和其他难以追踪的技术
  • 一系列近乎相同的名称,如 DriverController、ControllerManager、DriverManager、ManagerController、controlDriver 等,它们相互调用
  • 模板调用重载函数,希望在模板定义的地方可见声明,或许不可见
  • 使用装饰器、元类、代码生成等技术

其结果是,你不知道谁调用了什么或为什么,调试器的作用有限,集成开发环境和搜索工具几乎

无法使用。你几乎不得不放弃理解这一切,直到泪水不自觉地流出。

当然,这是一个夸张的描述,不是每个人在任何时候都是罪人,而且我主要是一名“程序员”而不是“科学家”,我真诚地认为我的工作总体上是有积极成效的 – 但你应该明白我的意思。

科学代码能从更好的“软件工程”中受益吗?也许可以,但我不相信软件工程师能带来这些益处!

简单的思维、无忧无虑的近乎无能有时可能比满怀好意却铺设了通往地狱的高速公路的工业级专业更为有益。计算机外的“真实世界”充满了这样的例子。

哦,还有一个非常尖锐的观察,我害怕这太过真实而不能忽略:懒惰是许多问题的根源。科学家忙于科学研究,因此他们没有时间无谓地增加代码的复杂度。许多程序员的工作实际上并不复杂 – 任务很简单 – 所以他们有太多的时间,他们用这些时间沉迷于“API 设计”,于是就产生了怪物。

(实际上,当工作在技术或社会层面上远非琐碎时,程序员糟糕的训练使他们的注意力偏离了直接的职责 – 这个东西是否真的运行良好、易于使用、高效/经济等 – 而是宣称自己只负责神圣的 API,并开始使其变得异常复杂。与此同时,从功能上来说,这个东西几乎无法运行。)

马斯克的最新演讲,揭示 SpaceX 登陆火星宏伟蓝图,开创人类多行星文明新纪元 [译]
为什么我对低代码持怀疑态度 [译]
引领语言智能:从思维链推理到语言智能体的探索指南 [译]
利用工具和技术,减少工作时间,提升生活质量 [译]
打造一个完全本地化的大语言模型 (LLM) 语音助手来管理我的智能家居 [译]
分享
Email 复制链接 打印
Share
上一篇 ChatGPT 中的 GPT Builder 是用来做什么的,我们为什么要开发它?以及它的 Prompt 是什么?[译]
下一篇 只要运用得当,电商与人工智能就是完美搭档 [译]
发表评价

发表评价 取消回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Please select a rating!

Ad image
- 入群领取知识星球折扣卷, 仅剩99份 -
Ad imageAd image

最近更新

全息流体渐变通用占位特色图
MedBench 5.0 斩获 99.6 分登顶!讯飞医疗重磅发布星火医疗大模型 V3.7:三模态深度融合、85%电子病历合理率与基层全科智能体全景落地深度拆解
AIGC 资讯
流光脑波AI大脑占位特色图
打通火箭、汽车与 xAI 算力超级闭环!SpaceX 与特斯拉成立特别委员会密谋世纪合并:马斯克 1100 亿身家腾挪与投票控制权终局全景深度拆解
最新趋势
WorldTUI 神经终端交互示意图与状态预测界面
背后没有操作系统与真实文件!WorldTUI 开源 208MB 极客小模型:基于 Qwen2.5-Coder 纯神经符号“表演”Linux 终端交互全景实测深度拆解
AI 工具
全息流体渐变通用占位特色图
低代码便捷背后的安全深渊!日本数字厅采用 AI 建站遭攻破:1.3 万条政务隐私外泄事件深度复盘与 SRE 零信任防御指南
AIGC 资讯

相关推荐

强化 AI 学习

软件工程师的公开演讲指南 [译]

宝玉的分享

OpenAI 的最终挑战 [译]

宝玉的分享
强化 AI 学习

在 Copilot 的协助下编程白皮书——2023 年的数据显示了代码质量面临的挑战 [译]

宝玉的分享
强化 AI 学习

当 AI 无需联网,一切皆有可能 [译]

宝玉的分享
/ Prompt 语宙 /

Experience the limitless creative possibilities of generative AI and unlock new levels of innovation.

Quick Link

  • Remaker AI
  • BGRemaker 抠图Hot
  • AIGC 工具
  • Prompt 咒语生成器
  • 去水印工具

Support

  • Contact
  • Blog
  • Complaint
  • Advertise

标签

AIGC Midjourney prompt AI Agent GPT Image 2 多模态大模型 EvoLink灵感 字节跳动 AI绘画 openai 具身智能 开源模型 开源工具 早报 大语言模型 开源大模型 Anthropic 强化学习 阿里通义 MoE架构 腾讯混元 多模态AI AI智能体 chatgpt AI视频生成 AI工具 开源框架 教程 扩散模型 大模型
Prompt 语宙Prompt 语宙
Follow US
© 2009-2026 Prompt 语宙. Paooo.com. All Rights Reserved.