歡迎光臨
每天分享高質量文章

無相:我們能從 InteliJ IDEA 中學到什麼?

近因為工作的關係,要將 Eclipse 的外掛升級為 IDEA 外掛。升級過程中,對 IDEA 外掛做了些學習和研究,希望透過本文,對“為什麼收費的 InteliJ IDEA 會比免費的 Eclipse 有著更好的使用者口碑“這一現象,提供些個人的思考。

— 無相

 

轉自:https://mp.weixin.qq.com/s/4MzUns7TW8Rtej1_hjqaZw | 作者:無相

閱讀本文,您將瞭解到心流與人體工效的重要性,並使自己變得更強大,文章將從以下幾點展開:

◈ InteliJ IDEA 當前的市場情況與表現;
◈ IntelliJ IDEA 成功的原因;
◈ IntelliJ IDEA 在 IDE 設計器領域勝出的兩個關鍵點;
◈ IntelliJ IDEA 對現實工作的啟示;

InteliJ IDEA 的市場情況與表現

2012 年開始,IntelliJ IDEA 便迅速崛起,到了 2016 年,就佔領了開發者市場的 46% 分額。直至 2018 的最新結果:IntelliJ IDEA 的市場份額增長到了 55.4%,顯然贏得了 18 年 Java 領域的 IDE 王者之戰,甚至還有重構大師 Martin Fowler 在其著名的部落格上,對 IntelliJ IDEA 贊譽有加。而且根據 IDEA 的產品滿意度調查,其滿意度竟高達 98%。

IntelliJ IDEA 為何能成功?

很多國外學者也研究了 IDEA,它的成功之處歸結起來有以下兩點:

1. 產品功能上的成功:

◈ 程式碼的智慧提示:IDEA 自主開發語言直譯器,做了深度的靜態分析,讓程式設計更加智慧與高效,這是一項殺手級的特色功能;
◈ 沒有儲存按鈕:每一個你想使用的功能,都有快捷鍵;
◈ 效能非常好,使用者的體驗極其流暢;
◈ IDEA 不僅對核心外掛進行維護,  還提供了優秀的工具集,給予使用者一致的 UX 正規化體驗;

2. 營銷策略上的成功:

◈ 以產品為核心和根本,以 “更好用” 的設計理念和原則打敗了很多競爭者;
◈ IDEA 沒有銷售團隊,但是霸氣的營銷口號體現了其內容營銷的核心邏輯:”Try it. Test it. If you feel its better, use it“ ,沒有多餘的營銷,真正做到了用產品說話;

相信大部分程式員,對 IDEA 的特性已經非常熟悉了。 接下來,我們將分析其真正強大的原因。

IntelliJ IDEA 為何能勝出?

IDEA 的風靡與崛起,在於它遵從了兩個關鍵的設計哲學:

1. 不斷打心流

Every aspect of IntelliJ IDEA is designed with ergonomics in mind. IntelliJ IDEA is built around the idea that every minute a developer spends in the flow is a good minute, and things that break developers out of flow are bad things. Every design and implementation decision considers the possibility of interrupting developer’s flow and seeks to eliminate or minimize it.(這句話美得我不想翻譯。)

“Creative Flow” or just “Flow” is a state of mind where you feel evenly attuned, and focused on the task at hand.

創造心流是一種思考狀態,是你感覺平和或專註於手頭任務的時刻,通俗的理解就是當你沉浸於一件事時,有一種忘記時間與空間的感覺,心流會讓你處於最佳的意識狀態。McKinsey 在 2010 年的研究表明,當你處於心流狀態,你的工作效率比非心流狀態下的工作效率提高 500%。

透過這種設計理念的學習,不禁暢想:如果越來越多的產品,如果能像 IntelliJ IDEA 的產品體驗一樣,讓人處於心流,高效完成任務,整體的生產效率將會成倍提升。

2. 人體工效學

IntelliJ IDEA 宣稱用人體工效學來設計 IDEA, 即 “The capable and ergonomic IDE for JVM”。

我們簡要地科普一下人體工效學:這是一門專註研究人體舒適,透過產品設計減少疲勞、不舒適的科學。在家居設計和人體工程學上,都會重點考慮這種設計理念,讓人們在使用時感受到更舒適、更高效率與更少的壓力。

接下來例舉兩個人體工效學的經典例子:

客服耳機:

如果沒有佩戴式耳機的出現,客服同學估計會瘋掉。

一撕得的包裝箱:

一撕得的包裝紙質量、膠水質量、人體工效學的拉鏈式設計,這三種要素在紙箱界都是業界第一。

3. 人體工效學對軟體設計的提示:

◈ 統一的 UX 風格設計;
◈ 將複雜任務變成簡單任務;
◈ 將長任務分解成短任務;
◈ 因為人類的有記憶力的限制,所以要適當提供提醒,提供關鍵的輔助給使用者,讓他們完全沉浸在核心工作中,不被打斷。

(更多提示,可以參看文末參考文獻中的第 5 篇)

如果想感受一下人體工效學的設計,體驗 IDEA 的快捷鍵與無儲存按鈕,立刻就能明白。

對我們現實工作有哪些啟示?

經過團隊的討論,我們認為 IDEA 的增長飛輪在於:優秀的設計理念,卓越的產品體驗,InteliJ IDEA 開放的社群,免費與專業收費並行的商業樣式。

IDEA 不斷更新迭代的路徑就是用更好的產品體驗,吸引到更多的使用者,使用者貢獻了更多的利潤,用來吸收更多的優秀人才,一起開發更好的產品。這給予我們現實工作的指導意義就是:產品要回歸至以人為中心的設計理念:

◈ 心流的提示:羅列出使用者的任務,讓使用者盡可能處於心流狀態,消滅導致任務低效的因素;
◈ 人體工效學提示:我們在設計產品時,要充分考慮使用者使用產品的場景,這是一個一體化的設計,就像星環產品設計。寫程式碼只是軟體研發的一環,需求創意提出、需求研發上線、業務商業分析這些整體環節都要考慮,讓使用者舒適地完成任務;
◈ 智慧提示:採用人工智慧來提升任務的完成效率。IntelliJ IDEA的智慧程式碼提示,是一個經典的案例;

最後:我個人會將心流與人體工效學的設計思想,融入至技術產品設計過程中,期待我們團隊的實踐篇。

推薦

小編推薦兩款創造心流的 IDE 外掛:

1. 熱替換利器:JRebel[1]
一款熱部署外掛,幫助開發者在專案處於執行狀態下任意修改 Java 檔案並動態反饋到執行的專案中。
2. 開發測試必備部署神器:Cloud Toolkit 
幫助開發者更高效地開發、測試、診斷並部署應用,利用此外掛,能夠方便地將本地應用一鍵部署到任意機器。

參考文獻

1. Choosing your Java IDE[2]
2. How To Achieve Creative Flow for Designers and Entrepreneurs[3]
3. Research about Flow State[4]
4. Flow State on Wikipedia[5]
5. Ergonomic Guidelines for User-interface Design[6]

本文作者

無相,阿裡巴巴資深技術專家,多年擔任匯金平臺的架構師,是阿裡 tbbpm 工作流引擎的作者。曾在阿裡雲負責過雲產品 0 至 1 的商業化,最近幾年在負責阿裡的店鋪 & 詳情等系統的中臺建設。

贊(0)

分享創造快樂