我們每半年發(fā)布一次技術雷達:它是所有我們認為橫跨業(yè)界當下和將來的相關重要技術的快照。我們從世界各地召集了約20位最有資歷的技術人來編寫技術雷達,這也是一個用全球視角對比趨勢和方向的絕佳機會。我們在技術雷達上總結出了主要的潮流,但這其中的奧妙足以再專門寫一篇長文章。在此,我們將關注于技術雷達中未能覆蓋到的一些宏觀趨勢。 強大的團隊和商業(yè) 開拓新業(yè)務所需要的不僅僅是好軟件。 開源軟件現(xiàn)在出現(xiàn)了大爆炸式的集中發(fā)布,其中有一些公司公開了那些你可能認為是專屬或有競爭優(yōu)勢的軟件。比如,谷歌的TensorFlow深度學習工具包和Netflix的整體產(chǎn)品棧。 乍一想這似乎是個糟糕的主意:競爭對手可能用這些代碼一步登先,然后進行競爭。但Google真正的’秘密武器’不是軟件,而是軟件中的數(shù)據(jù)。對于Netflix,其云規(guī)模不(再)是競爭性優(yōu)勢,真正的優(yōu)勢在于他們的原始內(nèi)容、有許可的交易和品牌力量。 這些都是著名的利用軟件與技術促使企業(yè)變強變大的例子,但這不是企業(yè)成功的真正原因。我們看到很多贏家通過關注“產(chǎn)品思維”來創(chuàng)建優(yōu)秀的體驗,同時吸引和保留優(yōu)秀的員工來打造他們的產(chǎn)品。在這種情況下,開源軟件更多的被用于招聘和增加名譽,公司即便將軟件免費贈送,也可以保持自己的市場領導地位。 自治團隊贏得全棧控制權。 在過去的幾年里,我們看到了“誰創(chuàng)建,誰運行”的敏捷團隊的崛起:由同一批人來創(chuàng)建、發(fā)布軟件,并為之做產(chǎn)品支持。我們是這種方式的擁護者,最起碼做產(chǎn)品支持能夠讓人成為一個更優(yōu)秀的開發(fā)者。 這種趨勢在逐漸擴大,我們能夠看到團隊的控制權越來越深入,選擇PaaS,然后在此基礎上部署、運行他們的(通常是基于云的)負載以及運行測試工具、監(jiān)控工具和安全工具。這是一個好的趨勢,但最終,企業(yè)環(huán)境中需要一些標準化。我們喜歡Spotify的方式:允許團隊創(chuàng)新,然后尋求最佳解決方案——這是一個處在創(chuàng)新和高效之間不錯的平衡。 開源是高尚的副產(chǎn)品。 開源軟件中的創(chuàng)新比以往發(fā)生得都更加迅速。之前我們提到了Google和Netflix發(fā)布開源代碼庫,但是如果你在搜索引擎中敲入“開源”+公司名稱,你很有可能找到滿滿一頁都在講述該公司對于開源軟件貢獻的頁面。公司投資于開源軟件有兩大原因。 第一個是獲取有天賦的人:隨著技術越來越強力地驅(qū)動著商業(yè)和社會,能否尋找最具天賦的人才是成功的關鍵要素。但是作為一個技術人員,搞清楚自己是否真的想要為某個公司工作是困難的——面試過程和實際工作之間有巨大的差異。開源軟件能夠幫助候選人通過查看該公司產(chǎn)生的代碼質(zhì)量,來對一個組織獲得更深的理解,也能幫助公司為潛在新成員展示其技術文化。第二個是將之作為文化聲明。很多技術人員相信分享和重用的力量,為開源軟件做貢獻是一個公司展示與此哲學一致性的方式。 平臺和生態(tài)系統(tǒng)提升生產(chǎn)力 開發(fā)者們主要通過代碼來溝通。 討論技術問題最好的方式通常是代碼交流。敏捷宣言的原則之一是“可工作的軟件”優(yōu)于“理論或觀點”,而開源軟件就反映了這一點。 不同于試圖用長篇大論解釋所有技術問題的細節(jié),開發(fā)者們通常會寫一部分或全部代碼,使用Github的代碼社交功能來輕松討論、接受或拒絕建議。直接通過代碼來討論,通常會帶來更加高效的討論,我們也逐漸看到這種技術在企業(yè)上下文中被采用。企業(yè)正在采用一種“內(nèi)部開源”的模型,在這樣模型下,源代碼可以隨時被分享出來并用于協(xié)作。但企業(yè)應該在面臨風險時,忽略這種趨勢。 每個人都應該使用PaaS,但這個選擇并不是永恒不變的。 能夠參與到從“數(shù)據(jù)中心里放的一堆堆服務器”到“按需索求的虛擬基礎設施”的業(yè)界革命的過程一向都是激動人心的,ThoughtWorks也一直處在譬如DevOps和持續(xù)交付等運動的領導前沿。客戶常常要求我們使用云策略幫助他們,而我們今天的建議通常是“你需要采用PaaS”。 很多組織已經(jīng)欣然接受了IaaS并且創(chuàng)造了復雜的基于“chuppet’的、領域特定的、通常由一些膠水代碼和shell腳本搭起來的PaaS。盡管這些土生土長的平臺已經(jīng)夠用了,但我們認為現(xiàn)有的PaaS產(chǎn)品更加成熟、值得一用。 PaaS可供選擇的范圍很大,從高度結構化的選項比如Cloud foundry和OpenShift,到無結構的以容器為中心的選項例如Mesos和Kubernets。我們不認為這些平臺是萬靈藥。很有可能你會需要深入到IaaS底層來滿足你的結果(比如配置復雜的網(wǎng)絡)或者它們會降低你的靈活性(比如使之很難使用某個服務定位庫)。但是一個PaaS,如果實現(xiàn)得當,能夠為大多數(shù)企業(yè)級開發(fā)選購帶來巨大的生產(chǎn)力。我們曾見證過,僅僅是利用將平臺標準化、取得高效的部署、運行app,就產(chǎn)生了兩倍生產(chǎn)力的爆發(fā)。和要求20個團隊自己搞明白部署策略相比,PaaS是絕對的規(guī)則變革者。 Docker,Docker,Docker。 如果缺少了Docker,那整個技術行業(yè)的概述都不是完整的。這個容器化現(xiàn)象已經(jīng)吸引了所有人的關注力,不管是開發(fā)者、測試者還是產(chǎn)品運營專家。Docker首先使包裝一個應用或組件到容器里變得十分容易,在這基礎之上,它還可以管理容器的各個生命周期。 Docker對于開發(fā)場景十分適用,比如從在同一個筆記本上運行多個微服務,到利用Docker鏡像作為規(guī)模和管理單元來跨數(shù)據(jù)中心管理大型產(chǎn)品負載。我們認為最有趣的是圍繞著Docker的高能源生態(tài)系統(tǒng)?,F(xiàn)在的確有和Docker相競爭的工具,但是Docker在人們腦海中的占有率和其投資有著重要的意義,而且很有可能,在可預見的未來它會變成架構設計、開發(fā)策略和產(chǎn)品PaaS平臺的底層基礎。 Swift生態(tài)系統(tǒng)發(fā)展逐漸加速。 我們編寫此次雷達時,討論了很多Swift工具、庫和框架,盡管它們不是每一個都光彩奪目。在諸如Microsoft的.Net, Ruby on Rails, Scala和Clojure等已沿用多年的平臺基礎上,開發(fā)者們在用Swift重新創(chuàng)造他們最中意的軟件。這是Swift平臺逐漸接近成熟的好兆頭,而且它也是iOS開發(fā)的不錯的選擇。特別地,我們會質(zhì)疑任何使用Objective-C為起點來開發(fā)新的項目。 基于“計算組織體”的創(chuàng)新持續(xù)加速 底層技術——IoT, VR, 和Blockchain——提供給我們重要的組件塊 當我們評估新的技術趨勢時,觀察其下支撐的工程學和物理學是非常有指導性的。比如說,物聯(lián)網(wǎng),就是由于底層的工程,諸如電池、高性能低功耗芯片、無處不在的網(wǎng)絡連接的進步而變?yōu)榭赡艿摹?/span> 這些智能的、相互連接的設備會帶來諸多優(yōu)勢,首當其沖就是在那些能顯著改善效用和節(jié)能的工業(yè)和商業(yè)環(huán)境下。消費者物聯(lián)網(wǎng)依然停留在淺顯的、小把戲的程度,在接下來幾年里需要解決重要的安全和隱私問題。虛擬現(xiàn)實在譬如Oculus Rift和HTC Vive平臺上的應用越來越廣泛,超越游戲范疇的VR會隨著我們逐步采用這個新組件塊而變成一個增長領域。至于blockchain,我們預期在未來6~18個月中有比較緩慢的增長,但在超分布式信任和不可改總賬之下,存在著我們可以用于建立商業(yè)、經(jīng)濟甚至社會的新能力。 當今時代顯然是科技工作的黃金時代。在接下來的六個月里,我們期待能夠看到這些趨勢持續(xù)帶給我們生產(chǎn)力上的增長,使團隊和商業(yè)變得更加有力,并帶給我們前所未有的全新想法和模式。我們也想要聽聽你的想法,在評論區(qū)告訴我們你心中最重要的行業(yè)趨勢,以及未來我們可能見證要發(fā)生的事情吧! ThoughtWorks新版技術雷達將于2016年11月正式發(fā)布,敬請期待! |
|