作者 | ClickPaaS创始人胡柏

出品 | 《程序员》编辑部

这两年,低代码市场的繁荣终于从美国走到了中国,在需求市场、资本市场双轮驱动下,给企业客户带来空前的价值。同时,新的产品和公司,抑或“新瓶装老酒”的公司层出不穷、眼花缭乱,同时也给企业服务领域的从业者带来了不少困惑。

很多人问我:到底“低代码”是个什么东西?未来人人都是开发者吗?程序员是不是被颠覆了?我借此机会结合我所做的事情,分享一下自己的经验和想法。

“低代码”到底是什么?

首先,“低代码(Low Code)”和“无代码(No Code)”是一个市场营销的词汇,并不是一个严格的技术词汇,这也就解释了为什么不同的人对低代码和无代码的理解差异如此之大,这和“中台”在诞生之初的情形很相似。

但和“中台”不一样的是,低代码和无代码这两个词的背后,有着两类不同的、明晰的技术路径,即表单驱动的Airtable模式,和模型化的OutSystems模式。

Airtable模式即“表单驱动模式”,代表“在线数据库”(Online Database),利用Excel的形态,以个人用户自身为中心,形成点状轻应用(Sweet Spot)的逻辑;Outsystems则是“模型驱动模式”,代表以领域模型为基础,为实现关键性应用(Critical Apps),甚至核心应用(Core Systems)为目标而提供的开发路径。这两种开发模式所对应的目标场景和客户是不一样的。

国内有文章把IDE同上述两种模式一块当作分类的标准,这其实是很荒唐的。IDE只是一种工具,而上述两种模式则属于设计思想(即表单化、模型化),两者完全不是同一类别。

低代码是否将人人都变成了开发者?

在表单驱动领域,普通用户能按照自己的需求,自己动手形成一套轻逻辑应用,就像用Excel一样。这种模式利用了Excel的用户习惯和用户基础,聚焦2C用户,形成了今天很火的“人人都是开发者”的理念,但其本质逻辑却是“人人都是Excel的使用者”。

在北美这条路是走得通的,而且Airtable和Smartsheet的策略就是在蚕食微软和Google庞大的文档协同市场。反过来再看国内,互联网巨头对市场影响是巨大的,云资源和中小企业的流量都在巨头手里,以小博大,蚕食云巨头的市场非常之不易。

此外,软件工程领域有一个基础理念:设计即架构,即关键性及核心的应用,一定是需要专业人士,而非“业余选手”来主导。就如同建筑领域一样,要盖10层楼,一定需要建筑设计师和力学工程师来参与,新的技术只是帮助他们提高效率、降低门槛,但“素人”是无法取代专业人士的。

但另一方面,低代码工具的出现,降低了软件开发的技能和经验要求,行业具备了大规模培养专业人士的基础。大家如果看OutSystems、Mendix,以及微软的Power Apps,不难发现这些低代码平台,其实对使用者都有一定的编程思维能力的要求。但它们所达到的效果却是,大大降低了编程技能的门槛,让开发者可以快速完成不同类型业务场景的数字化实现,并安全稳定地运行。

低代码技术的演变

不用写代码就能开发出应用,一直以来都是企业应用开发领域终极幻想。这个幻想起源于1982年,美国科罗拉多大学波德分校的James Martin的著作《没有程序员参与的应用开发》(Application Development Without Programmers)。这一39年前的著作,预测了软件工程领域的发展趋势,而James Martin这一极具前瞻性的预测,也终于在2014年变成了行业共识。产业分析公司Forrester Research首先提出了Low-Code(低代码)的概念,之后,低代码的概念以燎原之势迅速蔓延。但低代码和无代码平台的接受度却很低,被认为是“玩具”,因此30年来虽然不乏先行者,但低代码和无代码仍然没有被主流市场认可。

转折点发生在云原生技术的兴起,美国的低代码和无代码平台在云原生技术兴起之后发生了巨大的变化。以Salesforce的Force.com为代表的aPaaS逐渐被市场认可,成为了企业服务市场的重要分支,跨越了“玩具”到“工具”的鸿沟,并成为很多新一代SaaS平台的必要地基。

从“玩具”到“工具”,这是历史的转折点。要知道早期汽车也只是富人的玩具,还是马车主宰了马路。今天各种“拖拉拽”的儿童编程平台,也是一个面向小朋友的玩具,但时代在悄然发生变化,汽车逐步替代马车的进程在悄然发生。

仔细去看硅谷这个领域的领头羊,可以发现模型化低代码平台变得能力越来越强,适用场景也越来越广,并且已经具备了服务企业复杂化业务的能力。加上疫情对全球敏捷信息化的庞大需求,低代码终于在去年迎来大规模爆发,并逐渐向主流趋势靠近。

当今模型化低代码的发展与边界

美国市场上大多数的低代码平台能够让用户创建和运行应用,这听起来很普通,但如何去支持应用的环境运行,却产生了根本性的架构差别。

传统的低代码平台采取代码生成的方式,它提供一种可视化的应用开发平台简化应用的创建。一旦创建完毕,平台就可以生成可执行代码(或可编辑的源代码),这些代码可以在Java的JVM或微软的CLR环境下运行。

新一代低代码平台的方向则是采取元数据模型的方式,提供一种可视化创建应用的环境,能够生成模型层及特定域的表达方式(Domain-Specific Representation),再通过平台去解释并直接执行应用。

这两种方式各有优劣:代码生成的方式最大的优势是能够独立于开发平台运行,同时可以提供源代码并支持以源代码级的灵活度进行修改。但本质来说,从信息系统治理的角度来看,这种操作是最不应该发生的;模型驱动的方式则是典型的云架构,用户通过各种元数据化的组合构建模型,并进行测试交互。这类平台提供了保证未来“Future-Proofing”的能力,如果更新了模型的某个部分,比如说一个权限调整,需要打了一个补丁,应用能够完全不受影响,正常运行。而对比代码生成的方式,任何类似的补丁都需要重新创建和部署应用。除此之外,元数据模型方式完全能够发挥云的优势,比如水平伸缩扩展(horizontal scalability)、按需计费(pay-as-you-go)、基于使用计费(pay-as-what-you-use)。

因此,云架构的新一代低代码平台普遍采取第二种方式,Salesforce、ServiceNow、Quickbase都是典型案例。

那么低代码的能力边界在哪?能不能完全替换纯代码?一个新的技术出现需要经历很长的“爬坡期”,完成新技术的可商业化,就像新能源汽车替换燃油汽车。因此,我认为趋势正在发生,但需要经过一个周期,才会形成绝大多数的应用采用新技术和新平台的局面。但传统的纯代码方式,依然会长期存在,并进入到生命周期的长尾阶段。所以未来我们可以看到“低代码+纯代码”长期并存,作为组合的方式提供给客户,而客户则会按照市场规则、效率规则来选择不同的方案。

低代码在全球的发展

我在日本学习工作过,在美国也从事了很长一段时间的应用基础平台开发工作。回过头来看,美日在这个赛道的发展是非常有意思的,软件的应用基础技术领域,美日是有很多地方值得我们好好学习,好好追赶的。但国人也无需妄自菲薄,更不能狂妄自大。

2015年,我从旧金山回上海之前,特地咨询了一众美国的行业大佬,到底他们怎么看模型化应用PaaS的未来发展空间。坦率讲当时大多数我认识的专家对创业公司做这件事都是充满质疑,并不看好的。原因很简单,这事的时间周期太长,且看Outsystems和Mendix在欧洲趴在地上十多年才有起色,而且大有最后被巨头收割的趋势。例如2015年Mendix就传出要被SAP收购,结果2018年被西门子以7亿美元并购了。

但有趣的事情发生了,去年(2020年)春节期间,我乘着假期再次和这帮老朋友们聊的时候,发现大家的态度发生了180度的改变:认为模型化、低代码会是全行业的趋势。所有的应用系统都会低代码化,不单单是低代码的创业公司,SaaS公司、RPA企业、AI企业,包括传统软件巨头SAP和Oracle都会低代码化。更重要的是,所有人都开始“坚定”地认为低代码的未来市场空间极大,这一转变非常有意思。

总结下来大家有如下三个观点:

  • Monolithic Platform即“大一统的应用系统”必将结束,此处SAP需要划个重点。当然SAP是行业精英,不可能不知道这一趋势,所以它提出了“重新崛起”(RISE)战略,而且收购了AppGravy。

  • SaaS主要代表了标准化应用(Standard Apps),及应用碎片化,这个已经被时代证明,但它不能替代SAP这一类大一统的应用系统;

  • Composable Platform即“模型化低代码平台及模型化组合式的应用平台”会逐渐成为主流,它代表着定制化应用(Custom Apps)。

最后,在美国市场,标准化应用和定制化应用的市场规模是一样大的。也就是说,对比今天美国SaaS的市场规模,低代码平台的未来市场规模有多大就不难想象了。这也解释了为什么Outsystems会突然变成了95亿美元的估值体量的公司。

再看日本市场,日本市场发生了更有趣的现象。当我和日本朋友们交流行业发展的时候,简直不敢相信自己的耳朵。之前当国内都在疯传特斯拉抛弃了SAP,用Mendix开发了一个ERP应用的时候,我特地去问了下,实际并不是这么回事。特斯拉只是用Mendix做了SAP不擅长的事,Mendix在美国的策略就是围绕SAP的Core ERP做各种灵活多变,及创新的业务的实现。

但去年(2020年)一年,日本的汽车工业基本全部低代码化了,这是在一年之内发生的。考虑到日本企业的文化,这是一个疯狂的渗透速度,而且几乎所有的低代码巨头都云集在日本市场,开始和日本本土的才望子公司(Kintone)竞争,并在核心客户上几乎是碾压式的胜利。

中国的行业发展及未来展望

美国、日本市场的发展再次证明了这个方向是没问题的,日本没有特别厉害的消费互联网巨头和云巨头,所以在本土大平台没有优势的情况下,这个赛道的核心技术就很关键,技术能力、产品能力是最后的分水岭,否则与美国的技术产品公司交锋,基本上就是被“吊打”。

回到国内市场,国内的创业公司其实有个巨大的天然优势,就是庞大的市场体量。虽然软件的市场和美国比起来非常小,但国家经济体量巨大,而且未来成长性非常好。但不一样的是,中国的SME市场同质化竞争激烈,还有云巨头们挟云资源和流量之力,以2C化的战略来打2B市场,它们往往初期不考虑收入,只考虑日活、月活,在快速教育市场、发展市场、垄断市场之后再考虑变现。在2B领域,这种打法真心在全球都是独此一家,这一点和其他主要国家的市场都不一样。

在头部企业市场,主要玩家的困难在于,要能不以项目为主活下来,并且能不断打磨产品,只有产品力足够好才能立于不败之地。但这个市场的客户群和日本一样,都用过最好的产品,了解最好的技术,需求也非常复杂,要求也非常苛刻,没有金刚钻揽不了瓷器活。因此我们希望能做出一些自己的努力,也希望今年能够在海外市场和美国的同类产品过过招,当作在“战斗中成长”。

结语

我和朋友们常说,虽然有很多坎坷,但最大的幸运在于能够亲历一个行业的周期。低代码这个赛道真正起步是在2015年,我们看到了这个赛道的种种发展,从蛰伏期进入到快速发展的爬坡期,而且会经历到泡沫期,最后形成一个成熟行业,沉淀下来一两家优秀的企业。我也相信这个过程中,会诞生出能够比肩美国的中国产品和企业。


胡柏,ClickPaaS创始人,上海交通大学计算机系硕士,曾加入甲骨文从事企业信息化架构咨询,服务超过20家国内大型客户,并成功交付了43个跨国企业数字化转型项目。对企业信息化架构和应用构建有着丰富的经验积累和行业理解。2015年回国创建ClickPaaS,推动应用PaaS技术在中国企业数字化进程的落地。

从 Unix 开发者 Brian W. Kernighan,到 OpenCV 创始人 Gary Bradski,再到 Vue.js 作者尤雨溪……新《程序员》第一期以「开发者的黄金十年」为主题,与多位国内外知名的技术领袖和新锐代表进行了深度对话,希望为中国开发者打开新时代的「机遇之窗」。

除了技术引领,我们也希望透过技术对行业进行深入洞察。因此,新《程序员》第一期也邀请到了来自快手、滴滴、贝壳找房、作业帮等知名企业的技术负责人,用案例实践为读者阐述直播、出行、居住、在线教育等多个行业变革背后的技术架构和技术引擎。

《新程序员·开发者黄金十年》正式发布

由近百位专家参与、经数月打磨后,《新程序员001:开发者黄金十年》面向所有开发者正式官宣发布!不仅包含了开发者们一如既往期待与喜爱的全球技术大师深邃思考、优秀开发者技术创造等深度内容,更以数字多媒体的新形态让开发者们随时随地阅读、观看,带来视频图文的多重体验。

用一位开发者和我们说的话来表达:“当年的那个《程序员》回来了!”

当年的那个《程序员》不仅回来了,而且洋溢着新的活力。

加入新程序员读者俱乐部:

  • 季度会员:https://mall.csdn.net/item/76421;
  • 年度会员:https://mall.csdn.net/item/76785

移动端的同学也可以扫码下方二维码加入

从“玩具”到“工具”,低代码能否完全替换纯代码?相关推荐

  1. 太极图php代码,如何用CSS纯代码画一个旋转的太极图(附代码)

    这是一个中国人都非常熟悉的图案--太极图,它分为阴阳两级,会旋转(用到css3 animation动画属性),此图通过css3纯代码实现,它由 若干个小圆组合而成,适合初学css3的人练练手,娱以 致 ...

  2. (素材源码)猫猫学IOS(十七)UI之纯代码自定义Cell实现新浪微博UI

    猫猫分享,必须精品 素材代码地址:http://download.csdn.net/detail/u013357243/8580249 原文地址:http://blog.csdn.net/u01335 ...

  3. 玩具or工具?普元信息低代码平台给出了说法

    点击蓝字  关注云报 2021年7月20日,人类探索太空又迈出了具有里程碑意义的一步.蓝色起源公司研制的"新谢泼德号"飞船进入太空,而这艘飞船上的"乘客"既不是 ...

  4. 静态代码和动态代码的区别_无代码和低代码有哪些区别

    代码是大多数软件程序和应用程序的骨干. 代码是大多数软件程序和应用程序的骨干.每行代码充当一条指令:采用一种逐步性的逻辑机制,以便计算机.服务器和其他机器执行操作.想创建那些指令,就要知道如何编写代码 ...

  5. java代码质量 圈复杂度,代码圈复杂度(Cyclomatic Complexity,CC)和Oclint工具 介绍...

    什么是代码圈复杂度 圈复杂度是一种度量程序复杂度的方法,由 Thomas McCabe 于 1976年定义,用来衡量一个模块判定结构的复杂程度,数量上表现为独立路径条数,即合理的预防错误所需测试的最少 ...

  6. 【Windows 逆向】OD 调试器工具 ( 分析 OD 硬件断点处的关键代码 | 添加硬件断点 | 关键代码 | MOV 指令 | EAX 寄存器值分析 | 使用命令查看 esi+0cc 地址 )

    文章目录 一.添加硬件断点 二.关键代码 三.MOV 汇编指令格式 四.EAX 寄存器值分析 五.使用命令查看 esi+0cc 地址 一.添加硬件断点 在上一篇博客中 , 在子弹个数数据内存地址 07 ...

  7. python代码规范工具_如何检查python3中的代码规范

    如何检查python3中的代码规范 发布时间:2020-11-16 09:40:48 来源:亿速云 阅读:77 作者:小新 这篇文章给大家分享的是有关如何检查python3中的代码规范的内容.小编觉得 ...

  8. quicktype游戏java程序_使用QuickType工具从json自动生成类型声明代码

    一.QuickType 工具功能简介 QuickType 是一款可以根据 json 文本生成指定语言(如 Type Script,C++,,Java,C#,Go 等)类型声明代码的工具. 例如我们在写 ...

  9. coverity代码检测工具介绍_微服务测试之静态代码扫描

    静态代码扫描为整个发展组织增加价值.无论您在开发组织中发挥的作用如何,静态代码扫描解决方案都具有附加价值,拥有软件开发中所需要的尖端功能,最大限度地提高质量并管理软件产品中的风险. 背景 微服务架构模 ...

最新文章

  1. Python实训day04pm【网络爬虫(文本、图片)】
  2. UploadRTOS.exe
  3. 每日一笑 | 程序员的招租公告
  4. CSS3新增的伪类选择器
  5. 关于Apache Tomcat解决localhost was unable to start within 45 seconds
  6. 高级代码编辑器:sublime text 4 for Mac
  7. 小汤学编程之JavaEE学习day07——版本控制工具:SVN、GIT
  8. 疏通马桶的工具有哪些 疏通马桶的技巧
  9. matplotlib 绘图代码库(自用)
  10. cmd下dir后导入oracle数据库,Oracle在dos命令下导出导入
  11. PhoneGap android环境设置
  12. python性能分析工具模块_关于Python Profilers性能分析器
  13. Tomcat日志文件catalina.out文件过大问题解决方法
  14. 【Pranet】论文及代码解读(RFB与aggregation部分)——Cavy岚
  15. 常用的计算机网络设备有,常用网络设备有哪些,初学者必须要知道的五大网络设备...
  16. P5144 【蜈蚣】
  17. 瑞萨 报错 Section “.monitor2“ overlaps section “.textf“
  18. stm32语音识别文字显示_『开源项目』基于STM32的智能垃圾桶之语音识别
  19. 共享打印机计算机名没有反应,共享打印机接收到打印任务,但是没有反应该怎么处理 - 系统之家...
  20. php加密的是什么,看看下面这个php代码是使用什么加密的?

热门文章

  1. python wiki中文语料分词
  2. linux接入完整性检查工具,linux实现数据完整性检查工具 tripwire
  3. 联想网御 多网多口DMZ
  4. 浙江省初中计算机知识点,浙江省科学中考复习知识点归纳.docx
  5. 山东大学网安学院2020-2021学年信息论与编码期末考试
  6. linux系统么播放音乐,在linux环境下播放MP3
  7. 版本控制之Git---简介
  8. 2020年中国动漫产业研究报告
  9. 同一交换机不同网段的主机为什么不能通信
  10. 微信小程序:功能升级中页面(图片等比缩放)