為什么要做零代碼平臺,低代碼難道還不夠嗎?(什么是零代碼開發(fā)平臺)
為什么要做零代碼平臺,低代碼難道還不夠嗎?(什么是零代碼開發(fā)平臺)
文/明道云創(chuàng)始人任向暉
坦率說,有時候我們真想簡單一些,放一個代碼塊,讓用戶自由地寫入代碼或表達(dá)式,讓應(yīng)用的搭建”簡單“一些。但是,我們不得不忍住,投入精力把原先需要代碼實現(xiàn)的環(huán)節(jié)通過完全的可視化方式來實現(xiàn)。這個過程需要殺死很多腦細(xì)胞,也的確需要做出一些妥協(xié)。因為零代碼可以“搭建”,低代碼就是“開發(fā)”了。我們希望零代碼能夠完全改變企業(yè)IT的實現(xiàn)方式,讓大多數(shù)非開發(fā)人員能夠直接參與企業(yè)應(yīng)用的實現(xiàn)過程中。
低代碼服務(wù)的依然是開發(fā)者市場
從規(guī)律上看,當(dāng)開發(fā)者運用越來越多的開源工具,中間件,為每個應(yīng)用程序額外開發(fā)的代碼量總是越來越少。低代碼企業(yè)軟件開發(fā)工具則是將這個規(guī)律發(fā)揮到更高的水平,把數(shù)據(jù)建模、視圖構(gòu)建、報表生成這些相對標(biāo)準(zhǔn)化的開發(fā)過程可視化,從而消除更多的代碼開發(fā)需要。但是,它服務(wù)的依然是開發(fā)者市場,哪怕一個應(yīng)用程序總共只需要20行代碼,它也需要程序員的參與。
如果代碼量這么少,是不是可以讓非IT人員完成大部分工作,程序員只少量參與這些代碼工作呢?答案基本是否定的。為了寫對這幾十行代碼,開發(fā)者依然需要完整理解整個應(yīng)用的商業(yè)需求,功能需求,數(shù)據(jù)結(jié)構(gòu)和流程要求。將參與者的時間精力加總,反而不劃算了。所以,低代碼平臺的確可以提升開發(fā)者效率,但是很難改變軟件開發(fā)的基本流程和人員構(gòu)成需要。簡單說,低代碼平臺的使用中,需求提供方和實現(xiàn)方依然是分離的。
零代碼將大大拓展用戶群落
設(shè)計一個零代碼平臺的核心目的就是讓完全不懂編程的人可以直接完成應(yīng)用的構(gòu)筑。把他們稱為開發(fā)者已經(jīng)不準(zhǔn)確,更恰當(dāng)?shù)奶岱ㄊ谴罱ㄕ撸˙uilder)。如果你玩過“我的世界”(Minecraft),那么你可以想象為什么這個游戲的玩家如此廣泛。它能夠讓每個用戶構(gòu)筑完全不同的游戲場景,也能夠體驗各種動態(tài)交互,但是,玩家不需要寫任何代碼或者其他復(fù)雜操作。所有的場景搭建都是基于鼠標(biāo)點選和設(shè)置的。反過來說,如果Minecraft要求一定程度的代碼,那么它最終只能稱為極少數(shù)人的極客玩具。
雖然Minecraft不需要編程,但是它能夠孵育的創(chuàng)造力卻是無窮的。搭建者創(chuàng)造的價值來自場景想象和模塊化設(shè)計能力,而不是來自代碼編程。
回到企業(yè)軟件的世界,其實我們面臨的問題和機會是類似的。企業(yè)軟件的需求都來自業(yè)務(wù)和管理需要,無論是企業(yè)內(nèi)部IT還是外包開發(fā)者,都是這些需求的實現(xiàn)方。軟件需求從委托方到實現(xiàn)方的轉(zhuǎn)移是十分艱巨的工作。這也難怪很多公司的核心業(yè)務(wù)流程都還運行在Excel文件上。畢竟Excel是業(yè)務(wù)管理人員自己就可以搞定的事情,他們不必費神寫出繁復(fù)的軟件開發(fā)需求書。
然而,Excel文件畢竟不能承受很大的業(yè)務(wù)規(guī)模,它的共享度和實時性是非常有限的。于是,在業(yè)務(wù)擴張的某個時刻,公司不得不尋求軟件開發(fā)者,將業(yè)務(wù)數(shù)據(jù)和流程管理需求兌現(xiàn)為軟件應(yīng)用,俗稱“上系統(tǒng)”。
零代碼平臺就是在這個場景下出場的。借助零代碼平臺,需求方不必求助于軟件開發(fā)者,他們自己就能夠?qū)xcel文件轉(zhuǎn)換為在線數(shù)據(jù)庫,構(gòu)筑不同角色應(yīng)該查看的數(shù)據(jù)視圖,按需制作統(tǒng)計圖表,甚至能夠?qū)崿F(xiàn)業(yè)務(wù)流程的自動化設(shè)計。這個方法不僅節(jié)省了成本,還充分縮短需求和實現(xiàn)之間的差距。
零代碼平臺面向的是“全民開發(fā)者”嗎?
Gartner在幾年前提出了“全民開發(fā)者”(Citizen Developer)的概念。我猜測起這個名字的人肯定受到了Minecraft游戲的影響。那么“全民”真的是指全體員工嗎?我覺得肯定不是,也沒有必要。
即便零代碼平臺消除了對代碼編程的依賴,它也對“搭建者”存在一定的要求。他們需要真正了解業(yè)務(wù)需求,不僅能夠列出所有的需求點,還知道哪些是核心重點,哪些是有益拓展。同時,他還需要有比較清晰的數(shù)據(jù)結(jié)構(gòu)觀念和系統(tǒng)思維能力。比如對于一個管理存貨的應(yīng)用需求,他要能夠抽象出貨品、存貨單元,倉庫等數(shù)據(jù)對象,并且知道每個數(shù)據(jù)對象需要包含哪些數(shù)據(jù)信息(屬性)。這些要求遠(yuǎn)低于軟件開發(fā)者的必要訓(xùn)練,但也絕非每一個人能夠輕易掌握。
換一個角度來看,即便沒有零代碼平臺,每個組織中總有一些非IT人員能夠熟練掌握一些IT工具,包括Excel。他們能夠根據(jù)業(yè)務(wù)管理的需要設(shè)計出合理的Excel工作表,甚至編寫一些函數(shù),讓數(shù)據(jù)能夠有效聯(lián)動,提升工作效率和準(zhǔn)確度。這些企業(yè)極客是全民開發(fā)者的主要力量。
幸運的是,這樣的人雖然比例不高,但是對于一般企業(yè)組織來說,一兩位足矣。他們一般集中在運營管理、項目管理、產(chǎn)品管理等崗位,這些崗位天生依賴系統(tǒng)性思維和運籌學(xué)基礎(chǔ)知識。通過零代碼平臺,他們在組織中將煥發(fā)新的活力,也能夠創(chuàng)造出更大的價值。我們大概測算過,一位合格的全民開發(fā)者在一年當(dāng)中能夠為企業(yè)帶來的IT價值超過百萬。因為他們能夠幫助組織大幅提高IT管理水平,替代大量的定制開發(fā)需求。
務(wù)實的零代碼觀念和目標(biāo)
因為著眼于全民開發(fā)者的理念,我們要讓非程序員能夠相對獨立完成整個應(yīng)用搭建過程。因此,零代碼平臺必然要在其他非優(yōu)勢領(lǐng)域做出讓步和均衡。所以,零代碼平臺的目標(biāo)并不是滿足所有的企業(yè)軟件需求。
比如,有些行業(yè)專有化程度很高的領(lǐng)域,比如餐飲的收銀系統(tǒng)、酒店業(yè)的訂房系統(tǒng)、制造業(yè)的工業(yè)控制系統(tǒng),這些都是零代碼難以有效兌現(xiàn)的領(lǐng)域。如果真的要通過零代碼完成,那么系統(tǒng)本身也已經(jīng)復(fù)雜不堪。這時候,企業(yè)應(yīng)該尋求更加專向的解決方案。
還有企業(yè)信息化中面向顧客的前臺系統(tǒng),比如網(wǎng)店系統(tǒng)、會員系統(tǒng),這些應(yīng)用因為涉及支付、營銷等專有體系,所以也有其他更好的專業(yè)產(chǎn)品提供了服務(wù),比如有贊、微盟等。
除了這些特定市場之外的部分才是零代碼應(yīng)該發(fā)力的地方。概括來說,包括這些領(lǐng)域:
1)中后臺業(yè)務(wù)核心系統(tǒng),管理顧客、訂單、銷售過程、營銷計劃、供應(yīng)商、采購過程、人力資源、項目計劃和任務(wù)等。
2)實現(xiàn)數(shù)據(jù)中臺。通過零代碼平臺提供的API,實現(xiàn)輕應(yīng)用開發(fā)。這部分雖然不是零代碼平臺本身解決的問題,但是為這個IT實現(xiàn)手段提供了條件。
3)實現(xiàn)老舊和沉重系統(tǒng)的現(xiàn)代化。如果企業(yè)已經(jīng)在用一個非常陳舊的IT系統(tǒng),通過零代碼平臺的API,可以將數(shù)據(jù)同步到更為現(xiàn)代的系統(tǒng),提升終端用戶體驗。
下圖是利用明道云零代碼平臺實現(xiàn)的酒店行業(yè)的采購管理場景。它的搭建者是一位業(yè)內(nèi)非IT人員,而且他只為此花了一兩天時間而已。
這些都是零代碼平臺非常擅長的領(lǐng)域,它能夠減少90%以上的開發(fā)成本,而且提供了一個現(xiàn)代化的用戶體驗、同時實現(xiàn)移動化。如果利用SaaS模式的零代碼平臺,連IT部署的工作都省掉了。零代碼平臺雖然不是一個全新的概念,但是它的實用性和產(chǎn)品能力只是在最近幾年才得到企業(yè)IT屆的認(rèn)可。有一個務(wù)實的態(tài)度,先著眼于優(yōu)勢領(lǐng)域,對零代碼平臺的成功普及至關(guān)重要。