如何给一个完全不懂的非程序员解释复杂的、耗时的、易出错的软件开发的过程?

简评:相当有趣的一篇文章,教导你如何给非程序员讲清楚最难、最复杂的那些开发问题。

回答这个问题首先你应该解释一下如何泡一壶茶:

  1. 烧水
  • 把茶叶放在锅里
  • 当水烧开后,把它倒入锅里
  • 等待 5 分钟
  • 把茶倒进杯子里

现在开始变得有趣了。你需要开始问他们这些问题:

烧水?

  1. 水来自哪里?
  • 水壶在哪里呢?
  • 你怎么把水弄到水壶里去呢
  • 你怎么知道放了多少水
  • 如果没有水 / 水壶 / 电怎么办?
  • 如果你的填充传感器失败了怎么办?
  • 如果你的沸腾传感器失败了?

把茶叶放在锅里?

  1. 锅在哪里,如果没有一个呢?我们应该在水烧开之前想这个问题么?
  2. 茶在哪里,哪种茶?我们是否应该先考虑这个问题,如果没有考虑清楚前不做行动。
  • 关于填充和传感器的类似问题。

水烧开后倒入锅内

  1. 怎么确定水烧开了?
  • 锅内的感应机制是怎么样的?
  • 在水进入锅内有什么提示?
  • 等等类似的问题

。。。

你能问类似的问题问一个小时,然后对方有点烦了,反问你:是的你说的都对,但是问这些细节都是相当的弱智了,我只是想喝茶而已。这时候你微笑着回答:你说的相当对。

P.s. 结论是很多时候你的客户仅仅想喝一杯茶来解渴,你却教了他茶道。那些细枝末节说了他能懂么?

别浪费时间了。

原文:How do I explain to non-programmers how complex, time-consuming, and error-prone software development is?
“本译文仅供个人研习、欣赏语言之用,谢绝任何转载及用于任何商业用途。本译文所涉法律后果均由本人承担。本人同意简书平台在接获有关著作权人的通知后,删除文章。”

欢迎关注知乎专栏「极光日报」,每天为 Makers 导读三篇优质英文文章。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 有人说:一天给家里打一个电话你不觉得烦呀,天天打有什么话说呀。 但我觉得打电话不一定是有事情,而是心里有他们,一个...
    小小文艺范阅读 160评论 0 1
  • 悠悠的雨,落入多情柔和的春色里。江南的春雨柔美;黄土高坡的春雨虽然柔情但也不失豪迈;北国的春雨优美;大漠的春雨寂寥...
    那一抹鸢紫阅读 499评论 0 2
  • 虽然没有让人羡慕的美丽脸蛋 也没有婀娜有致的身段 从未轰轰烈烈的恋爱 也不是满腹诗经的才女 就是这么一个平凡的女人...
    暮雪飘阅读 437评论 0 1
  • 兴全合润分级混合(163406),该基金三年和五年评级都是五星。基金中股票占比88%,晨型类别中属于激进配置型基金...
    子非_似是而非阅读 318评论 0 0
  • 【有些爱不怕时间太漫长,已经生长在心里;有一些等待不能太漫长,已经枯萎在心里。】 ...
    浮生煮字为药阅读 338评论 0 1

友情链接更多精彩内容