GUIs are Antisocial

Michael Lynch

GUI 是反社交的

上週,我在收聽 CoRecursive Podcast 專訪 PowerShell 首席架構師 Jeffrey Snover(傑佛瑞·斯諾佛)的訪談

這場訪談中有一個片段讓我整週都縈繞不去,那就是斯諾佛主張 graphical user interfaces(圖形使用者介面)(GUI)本質上是「反社交的」:

我意識到——你知道,滑鼠是反社交的。GUI 是反社交的。那是什麼意思?你有一個問題要解決,你用 GUI 解決了它。你得到了什麼?一個被解決的問題。

當你在 scripting environment(指令碼環境)中用 command line interface(命令列介面)解決它時,你會得到一個產物。然後突然間,那個產物就可以分享給別人。

順帶一提,你做事的方式可以展現聰明才智。我從來沒見過有人用 GUI 用得很巧妙,從來沒有。那裡面沒有什麼巧思。不會像這樣:「喔我的天,你一定要看看 Adam(亞當)是怎麼點那個滑鼠的。喔我的天。各位、各位、各位、各位,快來!快來看:亞當要去點那個按鈕了!喔我的天!太神奇了!」這種事根本不會發生。

斯諾佛將此與看到令人印象深刻的 command-line script(命令列指令碼)時的反應做了對比:

就像這樣:「喔我的天!你看到 Proust(普魯斯特)做了什麼嗎?太驚人了!這傢伙真是個天才。」然後,「嘿,把那個給我。我要偷學那個技巧,套用到我的程式碼上。」或者,我有了這個產物,我把它發表出來,大家都在用。就會產生一種感激之情。就好像,他們欠我一杯啤酒。

所以這是一個社交環境。總之。那真的是一個時刻——就像是:「老兄,我們玩得超開心的!」

我很喜歡斯諾佛的這種詮釋方式,因為大家常常會意識到 scriptable interfaces(可撰寫指令碼的介面)比 GUI 更具可組合性與可重複使用性,但我從未想過在某些方面,撰寫指令碼的感覺其實更人性化。

撰寫指令碼讓人們能夠以 GUI 做不到的方式展現創意與巧思。而且透過撰寫指令碼,還會產生互相交流、彼此學習技巧的樂趣,這在 GUI 上是不會發生的。

原文由 Michael Lynch 發布

本文章由 muse-spark-1.2-contributor 進行翻譯