微軟(Microsoft, MSFT-US)稱無程式碼是它的 “ Next Big Thing ” 。 Google 說無程式碼是下一代的變革和提升。在矽谷,幾乎所有的科技巨頭都有自己的低程式碼/無程式碼平台——微軟的 PowerApps 、亞馬遜(Amazon, AMZN-US)的 Honeycode 、 Google 新收購的 Appsheeet 等。雖然沒有開源和產品化, Facebook 內部也有自建的跨平台框架 Native Templates (廣義上算低程式碼)來提升跨平台應用的開發效率。
把無程式碼的概念做一個比喻: 90 年代,配合鼠標帶來的全新互動方式, Mac OS 和 Windows 透過視覺化操作系統把原本相對小眾的個人電腦市場帶給了更廣闊的受眾——相較於先前的命令行互動介面,視覺化的操作顯著降低了使用電腦的門檻,讓所有操作都更貼近於人的直覺。
與之相似,新一代的無程式碼工具,透過視覺化的互動方式,把原本需要透過寫程式碼才能實現的抽象業務邏輯、產品設計和數據配置等透過更直觀、對人更直覺化的方式進行呈現和配置,從而顯著降低寫程式的技術門檻。只要你能想清楚你要的邏輯是什麼,這些視覺化工具就能夠實現相應的軟體,而這正是無程式碼最大的價值。在另一邊,低程式碼提供更完整的功能封裝,讓工程師寫更少的程式碼來實現更多的功能,從而降低工程師的重複勞動、提升開發效率。
無程式碼和低程式碼也是不分家的。通常,低程式碼工具也會輔以視覺化工具,而無程式碼工具也會允許用戶透過程式碼或API來進行功能的擴充。很多業務可以透過視覺化進行清晰的呈現,但不是所有的抽象邏輯都適合視覺化。作為早一輩的 “ 無程式碼工具 ” ,Excel裡提供了宏函數這個功能,允許用戶在工具預製的公式外也能透過編寫 VB A程式碼來自定義複雜的函數,從而實現功能的擴展。
因此,無程式碼平台通常必須要和低程式碼進行有效的整合。絕大多數應用場景和絕大多數用戶都不需要用到低程式碼,但平台必須需要一個必要的更強靈活度的入口,允許高級用戶可以透過低程式碼或者直接寫程式碼的方式來進行更自由的配置,以此保證了產出的靈活度以及更多長尾應用場景的涵蓋。
在 2014 年 Gartner 提出低程式碼的概念後,很快就被廣泛的採用。他們預估在 2021 年,低程式碼的市場已經帶來 138 億美金的市場規模,年成長超過 22% ; 2022 年市場將進一步加速成長,成長超過 30% 。而這個 “ 低程式碼/無程式碼 ” 的概念其實並不是全新的,這種視覺化寫程式的底層邏輯其實由來已久。
一、前世
低程式碼的概念可以追溯到 1980 年代視覺化寫程式的思想,當時的想法是把很多業務邏輯本身用視覺化的方式進行描述,而並不是把整個應用進行視覺化的封裝,更多的是業務邏輯或者說程式碼的另外一種呈現方式。如果只是換一種呈現方式的話,其實並沒有隱藏任何技術細節,換言之並沒有幫助用戶把製作軟體變得更輕鬆,因此這個帶來的價值就非常有限。
80 年代
微軟於 1985 年在蘋果(Apple, AAPL-US)上發布了第一個版本的Excel,而這可以被認為是最早一代的無程式碼工具。Excel的高級用戶可以用它進行複雜的數據處理、分析和視覺化而無需編寫任何程式碼。隨著不斷的更新迭代,Excel和Office家族中的Word、PowerPoint一起,成長為了所有人電腦中最強有力的生產力工具。在國外, Google Doc依靠協作能力,又進一步把基礎工具的效率提到了新的高度。
90 年代
來到 90 年代,微軟推出了 Visual Basic,這是最早的幾個被大規模使用的視覺化寫程式工具。工程師用 VB 在 .NET 的開發環境下編寫 Windows 軟體直到現在仍有廣泛的使用場景。但隨著時代的變遷和技術的發展,最新的應用已經幾乎沒有是單純的當地軟體了,因此隨著當地軟體的衰弱, VB 也開始被慢慢淘汰。
當網路成為人們馬洛斯底層需求之一時,所有的應用軟體都必不可免得需要變成一個多端、雲化的應用。原本就是為當地軟體設計的 VB / .NET 環境的衰弱是大勢所趨,但是它的核心思想仍然是值得借鑒和參考的。如何解決 VB 當地數據的雲端儲存化、實現應用的跨端運作,這是目前為止還沒有人完整實現,但筆者認為是新一代視覺化工具所必須解決的一個問題,相當於是把同樣的思想在新的環境下面重新進行設計和優化。
世紀之交
時間來到 2000 年前後,隨著網路的興起,市面上開始出現視覺化網頁製作工具,其中的翹楚有 Macromedia 的 Dreamweaver (後被 Adobe 收購)和微軟Office套件中的 FrontPage 。這兩款工具在當時非常流行,也在一定程度上定義了 UX 設計師(使用者經驗設計師)的職位,因為在此之前所有的軟體和網頁都是由工程師來製作,所有的互動都是按工程師的喜好來設計和實現。透過這兩款工具,沒有太多技術背景的人首次能參與到網頁製作中來,設計出漂亮的靜態頁面。
當時網頁的主流形態還是以柵格切分為主的靜態頁面,所以每個網頁裡除了包含頁面的佈局(即長什麼樣子)還包含了數據本身。透過 Dreamweaver 和 FrontPage ,網站的製作不再依賴於經驗豐富的工程師,初級工程師和現在所謂的設計師和內容撰寫人員就能夠獨立完成靜態頁面的製作。當然,這裡的 “ 靜態 ” 指的是頁面不依賴或很少依賴於後台伺服器數據的動態載入,也就是一個頁面,不管是誰在什麼時候以什麼方式打開都是一樣的。
對於這段時間,筆者本人感觸很深。當時還在國中的時候,筆者最早也是透過 FrontPage 開始知道寫程式、了解網路的。印象最深的是,當時 FrontPage 的配置裡有個詞叫 “ 超連結 ” (HyperLink),現在通常被叫做 URL ——就是那個網頁上,鼠標放上去會變成一個手,可以用來點擊和跳轉的連結。
後來這兩個工具也開始慢慢被淘汰,原因之一是網頁的底層技術變了。大家發現靜態頁面不能很好的滿足所有的需求,網頁開始漸漸變得複雜,從原本單純的資訊輸出向更完整的可互動的應用方向發展。隨著 JS 的興起以及 JQuery 的廣泛流行,把數據+業務和頁面呈現進行分離,成為了技術的趨勢。最終網頁成為了一種客戶端,數據儲存和複雜業務邏輯都必須依賴於後端伺服器的實現。網頁變成動態的之後,單純的靜態網頁工具就慢慢變得價值不大了。
2010 年代
再往後,市面上湧現了一批建站網站,他們提供的解決方案核心是 “ 反覆應用 ” ,也就是把現有的程式碼透過封裝成模版來進行重複買賣。通常模版是免費或低價進行買賣,而建站網站主要依靠網站託管,賺取伺服器的營運費用。這些建站網站逐漸發現靜態的網頁沒辦法滿足更多客戶的需求,所以他們漸漸發展出來一些動態的功能。他們採用的方式是幫助用戶預製好業務邏輯、預製好後台。在推廣方式上,慢慢演化出了開源以及閉源兩種形態。
開源形態的工具叫 WordPress ,有一個收費的版本,允許用戶透過插件的方式嵌入更多的程式碼,從而實現一些動態或者更靈活的邏輯變換。 WordPress 本質上就是一類無程式碼工具,插件就是其過渡到低程式碼延展的方式。 WordPress 平台上有超過 5 萬個插件,可以靈活擴展產出的網站功能。即使到了今天,全球仍有約 35% 的網站都由 WordPress 提供支援,因此,在美國甚至有專職的 WordPress 開發者崗位,薪資匹配初級工程師。
閉源方面,國外集大成者為 Wix 和 Shopify ;而中國用戶由於直接跳過 PC 網路進入行動網路,類似的大型建站網站通常針對於小程式和行動網頁,以微盟、有讚為代表,輔以年輕一點的即速應用(中國企業名)、上線了(中國企業名)等。此類產品目前通常關注在電商網站這一特定垂直領域,授權創建漂亮的線上商店。他們幫助用戶預製了很多作為一個電商網站需要的業務邏輯後台,給用戶提供了許多漂亮的頁面模版——在一個限定的範圍內,用戶的界面可以進行相對靈活的配置。
其中, Shopify 目前已成為最大的第三方線上零售平台,其生態系統涵蓋了 2,000 多個第三方應用程式,而這些應用程式已經被 Shopify 上營運商店的商家安裝了數百萬次。最近幾年隨著電商的進一步興起, Shopify 發展的非常好,過去兩年股價翻了 10 倍,躋身千億美元市值。而 Shopify 在東南亞的複製品Shopee也幫助其母公司市值超過 1,000 億美金。
二、今生
低程式碼/無程式碼的今生在 2014 年由 Gartner 定義。 2018 年,隨著 Outsystems 獲得 KKR 和高盛的 3.6 億美金戰略融資成為獨角獸,以及 Mendix 以 7 億美金的價格被工業軟體巨頭西門子(Siemens AG, SIE-DE)收購,它達到第一波小高潮。這一波消息也引起了中國市場一小波的關注。透過近期的 Pre-IPO 融資, Outsystems 也直接將其估值頂到了 96 億美金的高度。
但是在中國創投圈沒有看到的地方, Appian ,作為 Low-Code 上市第一股,於 2017 年成功上市,並在今年迅速提升毛利率後,市值連翻四倍,超過 120 億美金。而SmartSheet作為商用版協作表格類產品,也於 2018 年成功上市,市值超過 80 億美金。
而背後,還有更多的獨角獸在瘋狂成長,包括面向中小企業的表格類產品 Airtable 、面向企業流程自動化的 RPA 產品 UiPath 、面向金融保險領先企業的表單產品 Unqork 、面向企業流程管理 BPM 的 Kissflow 、面向通用型跨平台應用開發平台的 Outsystems 、 Mendix 和 Webflow 。
不光是傳統軟體產業,低程式碼/無程式碼在其他產業的滲透可能開始的更早。在工業機器人領域,西門子的寫程式平台讓機械工程師不需要編寫程式碼就能實現邏輯的自由編排;在遊戲產業, Roblox 的上市把無程式碼製作遊戲的可能性甚至普及到了十幾歲的年輕一代未來。
本質上所有這些低程式碼/無程式碼的產品是在一根軸上做取捨——一端是極度的靈活,帶來的是產品複雜度以及相對更高的學習門檻(譬如 Outsystems 和 Mendix 就面向是有一定技術能力的IT人員,偏向於提供完全的靈活度和複雜度);另外一端是更強的 “ 傻瓜式 ” ,即替用戶封裝了更多細節,透過預製更多邏輯從而讓用戶需要做的事情更少。但相對的,用戶可以配置的靈活度也顯著降低,以限制用戶可以做的事情的範圍從而降低複雜度(像 Airtable 和 Unqork 就是很典型的面向業務人員的 “ 傻瓜式 ” 產品)。如何定位自己的產品,在這根軸上找一個針對於產品目標客群的平衡點是現在所有低程式碼/無程式碼平台需要深度思考的點。
當然,也正是由於這根軸上分別對應的用戶和場景非常龐大而且複雜,這不是單一一個產品就能完美涵蓋的。 Gartner 在其產業報告中也進行了類似的預測,稱到 2024 年, 75% 的大型企業將平均使用至少 4 種低程式碼開發工具。國外的低程式碼/無程式碼工具在這根軸上的分佈比較均衡,從偏重於技術的高複雜度端,到技術和產品平衡的 BPM ,再到偏向於 “ 傻瓜式 ” 的表格/表單類產品。相對的,中國的低程式碼/無程式碼比較集中在相對低技術的 “ 傻瓜式 ” 側。
尾聲
新一代的低程式碼/無程式碼工具根本上要做的是一種全新的開發環境或者說開發方式。在這種新的開發方式下,為用戶帶來價值的根本原因是它可以替用戶隱藏掉盡可能多的技術細節,提供盡可能大的靈活度從而達到顯著降低技術門檻的目標。對於 Airtable 和 Unqork 的用戶,他們接受的其實正是一種新的寫程式方式,不再受限於固定的功能模組,而是在一個比較靈活的平台讓用戶可以自己進行創造,實現自由的業務邏輯配置。
站在之前巨人的肩膀上成長起來,以同樣的願景再出發,最新一代的低程式碼/無程式碼平台想要的是讓更多非技術背景的用戶也能參與到軟體開發流程中去。不過這一次在中國,低程式碼/無程式碼的出航迎上了風,乘上了 SaaS 以及企業旺盛的數位化轉型需求的趨勢。
這次,軟體寫程式的平民化能走多遠呢?
《虎嗅網》授權轉載
【延伸閱讀】