无代码开发工具,能否最终改变程序员的工作方式?近日,亚马逊发布了 Honeycode,一种类似于电子表格界面的无代码开发环境,获得了人们的广泛关注。
当前的电子表格填补了程序包批量生产和开发团队定制代码之间的空白。然而,每种工具都有其局限性。比如在多个用户和多个电子表格之间共享数据是比较困难的,处理大量数据也是如此。集成和自动化也是一个挑战,需要专业人员使用专业技能来搞定。在许多情况下,定制的应用程序是比电子表格更好的解决方案。
通常,亚马逊会给开发者提供所有开发应用程序需要的工具,但是开发者随后需要将所有部分组合在一起。而 Honeycode 旨在吸引希望构建基本业务线应用程序的非编程人员。如果你知道如何操作电子表格,并且想将其转换成 App,那么你就会需要 Honeycode。
亚马逊副总裁 Augustin 表示:开发这项服务旨在将亚马逊提供的开发功能扩展到客户群中的更多用户。他说:「我们经常听到客户提及他们想解决的问题,他们很乐意让他们的 IT 团队或者其他团队,甚至是外包团队,来帮助解决这些问题,构建应用程序。但是这些定制应用的需求实在太多了,开发人员根本忙不过来。」
从这个角度讲,Honeycode 的开发动机与微软的低代码工具 PowerApps 并没有什么不同。毕竟它也向非全职开发者提供了 Azure 平台。但亚马逊采用的方法略有不同,强调了 Honeycode 中的无代码部分。
「我们打造 Honeycode 的初衷是让业务人员、分析师、项目经理等成员轻松地创建一个定制应用程序,无需编写任何代码就能解决问题。电子表格界面是个很好的接入方式,因为大部分人都足够熟悉。」
许多低代码 / 无代码工具也具备允许开发人员「逃避代码」的功能,但短暂的逃避代码不是最终目的所在。在 Honeycode 的设计中,直接取消了导出代码然后转移到其他地方的机制。
有些 API 允许有经验的开发人员从其他地方获取数据,Augustin 和 Vaidyanathan 希望公司也允许平台上的用户这样做,或者 AWS 的合作伙伴也可以创建这些集成。
尽管存在这些限制,但团队表示,用户可以在该平台上创建一些非常复杂的应用程序。
「复杂程度取决于使用者的专业程度。在应用程序中使用以特定方式显示数据而编写的表达式可能会非常复杂。比如编写一个 30 行的表达式,就只是嵌套、嵌套、嵌套。你可以从一个表或者几屏的东西开始,之后你就会发现它的强大之处。」
Honeycode 的另外一个特性是电子表格位于用户界面的中心。这个特点看起来很像 Airtable,但二者实际上会将表格带入不同的方向。在某些方面,Honeycode 也会被拿来与 Retool 比较,但后者面向的是更高级的开发者,并且没有隐藏代码。
Augustin 表示:「人们已经使用电子表格几十年了,并且能够编写一些非常复杂、深入的表达式,搭建一些非常强大的电子表格。现在,用 Honeycode 也可以做同样的事情。」
Honeycode 包括一些常用通用程序的模板,供开发者使用:
你可以随时定制、更改应用程序的功能,这些更改将立即部署。你也可以从一个空表格开始创建,或者以 CSV 格式导入一些已有的数据。使用 Honeycode 创建应用程序可以使用界面上丰富的组件,比如输入字段。
你也可以采用触发器触发内置操作,这些操作可以生成电子邮件通知并做出相应修改。
根据目前一些开发者的试用体验,Honeycode 使用了 Reactjs 等库,也带有许多内置的函数。不仅有电子表格用户熟悉的现有函数,还包括一些新的功能,比如 FindRow 就是 Vlookup 函数的加强版。
Honeycode 能解决根本问题吗?
亚马逊新出的这个开发环境在 Hackernews 上引发了热议,但有些开发人员似乎并不买账。
他们认为,「学写 Python、JAVA 这些语言其实并不是软件开发业务中最难的部分,真正的难点其实在于精确地理解业务流程和需求。」
「我经常与业务涉及的各方共同创建内部业务 app,大多数时候,他们所提出的需求都是模糊且不明确的,有时候甚至是错的。这不是他们的错。根本原因在于,如果你没有经历写代码的过程,你不可能知道你给你的人类同事提的需求需要多么明确具体。」
「当你有足够的经验提出恰当的需求之后,与写 Python、SQL 或 C# 语言相比,上述工具就成了一种阻碍。」
这一观点遭到了很多非开发人员的反驳:
「你怕是低估了编程入门的难度,不是所有人都记得那一堆命令,也不是所有人都会用 linux、shell。你这种论调就是典型的『专家盲点』。」(专家盲点(Curse of knowledge)是一种认知偏差,指人在与他人交流的时候,下意识地假设对方拥有理解所需要的背景知识。)
开发人员或许不能理解,编程门槛其实会浇灭一大批人学习编程的冲动。因此,在这种情况下,有个不用写代码的开发环境还是挺实用的:
「其他人在和开发人员的交流过程中会损失很多信息。honey comb 这种工具比和开发沟通更加高效,它可以让大家在不受开发威胁的环境下自己上手实验。」
这两种观点的交锋似乎是现实中产品经理和开发人员互不理解场景的翻版。Honeycode 到底好不好用,还要看一段时间之后的使用反馈。如果你已经试过了,可以在留言区写下你的体验。
参考链接:
https://aws.amazon.com/cn/blogs/aws/introducing-amazon-honeycode-build-web-mobile-apps-without-writing-code/