当代码符合现实时:在物理世界中建立的教训| Viam

当代码符合现实时:在物理世界中建立的教训

来源:Viam 博客

作为Web开发人员,我们免费获得很多东西:受控环境,可预测的输入和紧密的反馈循环。测试,监视和CI/CD管道有助于我们迅速捕获和从失败中恢复。但是,一旦代码越过屏幕并进入物理世界,您就会放弃一些控制权。

视频

好消息?您无需扔掉现有的技能。您在Web开发中已经拥有的基础比您想象的要多。

在Viam,我们构建了将软件连接到硬件的开源工具。这意味着机器人技术,物联网和边缘计算。这很有趣,有力……而且非常谦卑。因为无论您的代码多么干净,所以现实并不总是会继续下去。查看我在Dotjs上有关物理世界中的代码如何变得有些混乱的闪电演讲。

viam 物理世界中的代码

失败在物理世界中看起来有所不同

与软件开发环境相比,物理环境面临不同的挑战,导致不同的后果。

与Web应用程序不同,物理系统中的更新失败,无法通过快速部署来修复。在物理世界中,故障是一辆不会启动的汽车,没有热量的房屋,或者撬棍的工程师试图回到自己的数据中心。

,这不仅仅是人为错误:

Buckley用卫星标签追踪的海龟
用卫星标签跟踪

那么开发人员可以做什么?

我们不能依靠完全消除故障,但是我们可以为此进行计划。就像我们为低型带宽条件或后备状态设计UI一样,物理系统也需要优美的故障模式。

  • 您的手机过热时不会着火,它会导致CPU,使屏幕变暗并停止充电。那是设计的失败状态。
  • NASA的Voyager 1仍在运行近50年后,没有物理替代组件的能力。这在很大程度上是由于仔细计划故障,冗余和管理权衡方案。
  • NASA的Voyager 1 在终止末期干净燃烧 TC53 控制 webrtc

  • 电话