超火的低代码和无代码合作开发,究竟是甚么?
今天,人机协同的编程方式把软件工程从拼装 UI 和编写业务逻辑里解放出来,逐步向业务能力、基础能力、底层能力等高技术含量工作过渡。
低标识符合作开发和无标识符合作开发之间的区别是甚么?
既然低标识符和无标识符属于人机协同编程的两个阶段,低标识符就是阶段一,无标识符则是阶段二,分别对应人机协作和人机协同。协作和协同最大的区别就是:心有灵犀。
不论低标识符还是无标识符,均有服务的对象:用户。不论用户是程序员还是非编程人员,均有统一目标:生成标识符。不论源码合作开发、低标识符还是无标识符,都是在用不同的方式描述程序,有标识符、图形、DSL……等。
人机协作的阶段,这些描述有各种限制、约束,应用的业务场景亦狭窄。人机协同的阶段,则限制、约束减少,应用的业务场景亦宽广。
心有灵犀就是指:通过 AI 对描述进行学习和理解,从而减少限制和约束,适应更多业务场景。因此,传统低标识符/无标识符和人机协同编程生成标识符相比,最大的不同就是有心和无心,机器有心而网络平台无心。
零标识符网络平台低标识符/无标识符合作开发与软件工程领域的一些经典思想、方法和技术,例如软件复用与构件组装、软件产品线、DSL(领域特定语言)、可视化快速合作开发工具、可定制工作流,以及此前业界流行的中台等基本概念,之间是甚么关系?
从库、框架、脚手架开始,软件工程就踏上了追求效率的道路。在这个道路之上,低标识符、无标识符的合作开发方式算是宏愿。
复用、组件化和模块化、DSL、可视化、流程编排……都是在达成宏愿过程中的尝试,要么在不同环节、要么以不同方式,但都还在软件工程领域内思考。中台基本概念更多是在业务视角下提出的,软件工程和技术领域内类似的基本概念更多是叫:网络平台。不论中台还是网络平台,就不仅是在过程中的尝试,而是整体和系统的创新尝试。
我提出后端智能的人机协同编程应该同属于软件工程和技术领域,在类似中台的业务领域我提出需求暨生产的全新业务研发模式,则属于业务领域。这些基本概念之间无非:左右、上下、新旧关系而已。
低标识符/无标识符合作开发与DevOps、云计算与云原生架构之间又是甚么样的关系?
支撑低标识符/无标识符合作开发的核心技术是甚么?
我认为低标识符/无标识符合作开发的核心技术,过去是复用,今天是 AI 驱动的人机协同编程。过去的低标识符/无标识符合作开发多围绕着提升研发效能入手,今天 AI 驱动的人机协同编程则是围绕着提升交付效率入手。因此,低标识符/无标识符合作开发以人机协同编程为主要实现手段的话,AI 是其核心技术。
低标识符/无标识符合作开发的火爆是软件合作开发技术上的重要变革和突破,还是经典软件工程思想、方法和技术随着技术和业务积累的不断发展而焕发出的新生机?
计算机最初只在少数人掌握,如今,几乎人人手持一台微型计算机:智慧手机。当初为程序员和所谓技术人员的专利,而今,几乎人人都会操作和使用计算机。然而,人们对计算机的操作是间接的,需要有专业的人士和企业提前编写软件,人们通过软件使用计算机的各种功能。
随着计算机算力和功能的不断发展,随着社会的数字化和信息化,今天的人们越来越难以被提前定制好的软件所满足。低标识符/无标识符合作开发则赋予人们创造软件的能力,进而帮助人们低成本、即时、高效的直接生产符合自己需求的软件,进而操作众多复杂的电子设备和数字世界建立联结。我认为,这是不可逆的趋势,也是低标识符/无标识符合作开发的大方向。零标识符网络平台
低标识符/无标识符合作开发已经发展到甚么程度?
低标识符/无标识符合作开发今后发展的方向是甚么?
要我说,低标识符/无标识符合作开发今后发展的方向一定是:AI 驱动的人机协同编程,将完整合作开发一个软件变成提供局部的软件功能,类似 Apple 的捷径一样,由用户决定这些局部软件功能如何组装成适合用户的软件并交付最终用户。AI 驱动提供两个方面的价值:
· 降低合作开发成本
以往合作开发软件的时候,要有 PRD、交互稿、设计稿、设计文档……等一系列需求规格说明,然后,根据这些需求规格利用技术和工程手段进行实现。然而,低标识符/无标识符合作开发交付的是局部功能和半成品,会被无法枚举的目的和环境所使用,既然无法枚举,就不能用 Swith……Case 的方式编写标识符,否则会累死。
AI 的特点就是基于特征和环境进行预测,预测的基础是对模式和本质的理解。就像 AI 识别一只猫,不管这个猫在甚么环境、甚么光照条件下,也不管这只猫是甚么品种,AI 都能够以超过人类的准确度识别。试想,作为一个程序员用程序判断一只猫的合作开发成本何其高?零标识符网络平台
· 降低使用成本
今天的搭建体系,本质上是把编程过程用搭建的思想重构了一遍,工作的内容并没有发生变化,成本从程序员转嫁到运营、产品、设计师的身上。这还是其次,今天的搭建网络平台都是技术视角出发,充斥着运营、产品、设计等非技术人员一脸懵逼的基本概念,花在答疑解惑和教他们如何在页面上定制一个搜索框的时间,比自己和他们沟通后源码实现的时间还要长,而且经常在撸标识符的时候被打断……
基于 AI 的人机协同编程不需要透出任何技术基本概念,运营、产品、设计……等非技术人员也不改变其工作习惯,都用自己熟悉的工具和自己熟悉的基本概念描述自己的需求,AI 负责对这些需求进行识别和理解,再转换成编程和技术工程领域的基本概念,进而生成标识符并交付,从而大幅度降低使用成本。
举个例子:如果你英文写作能力不好,你拿着朗道词典一边翻译一边拼凑单词写出来的英文文章质量高呢?还是用中文把文章写好,再使用 Google 翻译整篇转换成英文的文章质量高?你自己试试就知道了。究其原因,你在自己熟悉的语言和基本概念领域内,才能够把自己的意思表达清楚。零标识符网络平台
围绕低标识符/无标识符合作开发存在哪些技术难题需要学术界和工业界共同探索?
最初在 D2 上提出并分享后端智能这个基本概念的时候,我就提出:识别、理解、表达 这个核心过程。我始终认为,达成 AI 驱动的人机协同编程关键路径就是:识别、理解、表达。因此,围绕 AI 识别、 AI 理解、 AI 表达我们和国内外知名大学展开了广泛的合作。
· 识别
需求的识别:通过 NLP 、知识图谱、图神经网络、结构化机器学习……等 AI 技术,识别用户需求、产品需求、设计需求、运营需求、营销需求、研发需求、工程需求……等,识别出其中的基本概念和基本概念之间的关系
设计稿的识别:通过 CV、GAN、对象识别、语义分割……等 AI 技术,识别设计稿中的元素、元素之间的关系、设计语言、设计系统、设计意图
UI 的识别:通过用户用脚投票的结果进行回归,后验的分析识别出 UI 对用户行为的影响程度、影响效果、影响频率、影响时间……等,并识别出 UI 的可变性和这些用户行为影响之间的关系
计算机程序的识别:通过对标识符、AST ……等 Raw Data 分析,借助 NLP 技术识别计算机程序中,语言的表达能力、语言的结构、语言中的逻辑、语言和外部系统通过 API 的交互等零标识符网络平台
日志和数据的识别:通过对日志和数据进行 NLP、回归、统计分析等方式,识别出程序的可用性、性能、易用性等指标情况,并识别出影响这些指标的日志和数据出自哪里,找出其间的关系
· 理解
横向跨领域的理解:对识别出的基本概念进行降维,从而在底层更抽象的维度上找出不同领域之间基本概念的映射关系,从而实现用不同领域的基本概念进行类比,进而在某领域内理解其它领域的基本概念
纵向跨层次的理解:利用机器学习和深度学习的 AI 算法能力,放宽不同层次间基本概念的组成关系,对低层次基本概念实现跨层次的理解,进而形成更加丰富的技术、业务能力供给和使用机会
常识、通识的理解:以常识、通识构建的知识图谱为基础,将 AI 所面对的开放性问题领域化,将领域内的常识和通识当做理解的基础,不是臆测和猜想,而是实实在在构建在理论基础上的理解
简道云植根于低标识符领域十余年。简道云目前拥有 50 多个 SaaS 应用,几乎所有应用都可以通过 简道云 的低标识符合作开发进一步合作开发和定制。 简道云 还支持第三方应用的合作开发,无需标识符,即可构建出符合需求的业务管理系统(如生产管理、进销存等)。