像高手一樣使用你的計(jì)算機(jī)2020.12.17
萬維鋼·精英日課?(年度日更)
2020-11-11
像高手一樣使用你的計(jì)算機(jī)
| 轉(zhuǎn)述:懷沙 |
這一講咱們說說如何高效地使用計(jì)算機(jī)。注意是“計(jì)算機(jī)”,是那種傳統(tǒng)的、有實(shí)體鍵盤的、真正的計(jì)算機(jī),是生產(chǎn)力工具,而不是手機(jī)、平板之類的娛樂和社交設(shè)備。現(xiàn)在有些人說 iPad 也是生產(chǎn)力工具,我對此表示嗤之以鼻。
挽弓當(dāng)挽強(qiáng)用箭當(dāng)用長,你需要趁手的兵器,你需要一臺真正的計(jì)算機(jī)。
不管你的工作性質(zhì)是什么,我推薦使用 Mac 電腦、有線機(jī)械鍵盤和大顯示器。不過硬件和操作系統(tǒng)都不是關(guān)鍵問題。我見過長期使用 Linux 操作系統(tǒng)卻只會(huì)拿個(gè)鼠標(biāo)點(diǎn)來點(diǎn)去的人,也見過把 Windows 筆記本使到飛起的人。我們不講具體的操作技術(shù),專說一點(diǎn)兒有關(guān)效率的思想和正確的使用精神。
我只是一個(gè)普通的計(jì)算機(jī)使用者,遠(yuǎn)遠(yuǎn)沒達(dá)到程序員級的水平。但是我的確讀過一點(diǎn)程序員寫給程序員的書 [1],我學(xué)到過一點(diǎn)東西,而且以前經(jīng)常操練。我非常受不了旁觀水平比我還低的人使用計(jì)算機(jī),有時(shí)候看他們太笨了,有時(shí)候看他們簡直是在虐待計(jì)算機(jī)。我們應(yīng)該尊重計(jì)算機(jī)。
咱們說五條經(jīng)驗(yàn)。
1.用鍵盤,別用鼠標(biāo)
低水平計(jì)算機(jī)使用者最明顯的特征就是干什么都用鼠標(biāo)。眼睛盯著屏幕,一只手緩慢地移動(dòng)著光標(biāo),一會(huì)兒點(diǎn)一下這里一會(huì)兒點(diǎn)一下那里……再也沒有比這更笨拙的動(dòng)作了。只要記住幾個(gè)鍵盤快捷方式,你的形象就能大大改觀 ——
* Command 鍵(Windows 下是 Win 或者 Alt 鍵)+ tab 在不同程序的窗口之間切換;Command + ` 在同一程序的窗口之間切換;
* Command + Q 關(guān)閉程序;Command + W 關(guān)閉窗口;
* Control + 左右方向鍵切換桌面;
* Command + L 回到瀏覽器地址輸入欄;
* 填表時(shí)用 tab 鍵切換到下一個(gè)輸入位置……
等等。有的人連編輯文檔的時(shí)候時(shí)不時(shí) Command + S 保存一下都不會(huì),有的人連切換輸入法都得用鼠標(biāo)找到那個(gè)位置點(diǎn)一下。他們不僅僅是浪費(fèi)時(shí)間的問題,他們打斷了自己的思路和工作流暢性。
使用鍵盤,就相當(dāng)于是把計(jì)算機(jī)當(dāng)成了一個(gè)人,是你直接對他下命令;而用鼠標(biāo),則是把計(jì)算機(jī)當(dāng)成了一個(gè)長滿了按鈕的機(jī)器,看半天都不知道點(diǎn)哪。從心到手,比從心、到手、到眼睛、再到手,要直接得多。新手點(diǎn)菜得看半天菜單,老手都是直接告訴服務(wù)員今天吃什么。
當(dāng)然鼠標(biāo)肯定是有用的,但這個(gè)要點(diǎn)是鍵盤的效率要高得多。手不要輕易離開鍵盤,你應(yīng)該把鍵盤當(dāng)做身體的一部分。我大多數(shù)情況下連瀏覽器的書簽都不點(diǎn),都是直接從地址欄輸入網(wǎng)址的開頭字母和要搜索的關(guān)鍵詞,回車就有。我以前在 Linux 下編程的時(shí)候用的編輯器是終端狀態(tài)下的 Emacs,它根本就不支持鼠標(biāo)。我要去程序的哪一段都是直接搜索著過去,心到手馬上到,連用鍵盤翻頁都很少。
直接打字搜索,是比用眼睛瀏覽快得多的做法。很多人喜歡搞“整理”,把各種文件、收到的電子郵件都分門別類存放,文件夾套著文件夾做一個(gè)標(biāo)簽又一個(gè)標(biāo)簽弄得十分復(fù)雜,這是把計(jì)算機(jī)當(dāng)檔案柜用。正確的方法是搜索。IBM 公司專門做過研究 [2],發(fā)現(xiàn)那些平時(shí)費(fèi)力把郵件分類保存的人后來查找郵件的速度并不快,反倒是平時(shí)不管郵件,用的時(shí)候直接搜索速度更快?,F(xiàn)在所有計(jì)算機(jī)都有全局搜索功能。
計(jì)算機(jī)是有智能的,就好像秘書一樣,有什么文件扔給他、放在一個(gè)差不多的地方就可以了,要用的時(shí)候直接找他要,而不是你去管理。我獲取文件、閱讀網(wǎng)頁、讀電子書常常都是在搜索。搜索是積極主動(dòng)的,搜索約等于“審問”。
現(xiàn)在的應(yīng)用程序都是圖形界面的了,但是從使用效率角度來說圖形界面是給新手用的。上世紀(jì)的計(jì)算機(jī)使用者習(xí)慣于干什么事兒都用命令行。Mac、Linux、Unix,包括 Windows 都提供了各種方便的命令行小工具。命令行一兩句話就能交代明白的任務(wù),圖形界面得點(diǎn)上半天。在老一輩程序員眼中,圖形界面環(huán)境中長大的程序員的工作效率是大大降低了:他們不是在“跑(run)”計(jì)算機(jī),他們是在“走”計(jì)算機(jī)。
鍵盤的精神是“有事兒直接說”。用鍵盤,是對計(jì)算機(jī)智能的承認(rèn)和尊重。
2.把事情自動(dòng)化
計(jì)算機(jī)除了能讓你看電視劇,還可以用來……做計(jì)算。只要稍微多了解一點(diǎn)它的語言,你就能讓它為你做一些非標(biāo)準(zhǔn)化的、復(fù)雜的事情。
以前我搞科研的時(shí)候接手了一個(gè)模擬物理實(shí)驗(yàn)的程序。我需要做大量的實(shí)驗(yàn),每次都是修改幾個(gè)參數(shù),提交到一臺遠(yuǎn)程的超級計(jì)算機(jī)上運(yùn)行,再把數(shù)據(jù)下載到本地,再用 Matlab 分析。我每天反復(fù)做這些操作,后來我意識到所有這些步驟都可以讓計(jì)算機(jī)自己做。我修改了原來的程序,變成每次同時(shí)運(yùn)行十個(gè)實(shí)驗(yàn)。我現(xiàn)學(xué)現(xiàn)寫了若干個(gè)腳本,把下載數(shù)據(jù)、分析、比較數(shù)據(jù)和生成圖形全都自動(dòng)化,我只要輸入一個(gè)命令就行。
我的“實(shí)驗(yàn)”工作變得無比輕松,我的操作不但省時(shí)省力,而且絕對準(zhǔn)確。我有一種頭腦被解放出來的感覺,我只需要專注思考實(shí)驗(yàn)的物理學(xué)部分。我想看什么結(jié)果馬上就能看,我想做什么測試隨時(shí)就能做。如果一個(gè)人反應(yīng)特別慢,你問他一個(gè)問題很麻煩,你會(huì)懶得問他問題;而如果問他問題很方便,你不但會(huì)問更多問題,而且更容易問出高質(zhì)量的問題。
這就是自動(dòng)化的好處。計(jì)算機(jī)是一個(gè)智能的機(jī)器,它比你快、比你準(zhǔn),比你耐煩。你得好好利用這一點(diǎn)。
程序員有個(gè)信條叫做“不要重復(fù)你自己(Don’t repeat yourself, DRY)” [3]。一旦你發(fā)現(xiàn)你在重復(fù)做什么操作,你就應(yīng)該想辦法把它自動(dòng)化。我有個(gè)同學(xué)有一陣買房子,他就專門寫了一個(gè)程序,每天自動(dòng)抓取幾個(gè)網(wǎng)站的信息,向他匯報(bào)本地房源的變動(dòng)情況。
理解了這一點(diǎn),你就不難理解為什么幾年前阿里巴巴公司發(fā)月餅,有程序員寫了個(gè)腳本去替他搶月餅。并不是他有多么愛吃月餅,他只是抵抗不了用機(jī)械化戰(zhàn)勝人工的這種快樂。掌握一點(diǎn)寫自動(dòng)化腳本的技能,能把計(jì)算機(jī)真正“跑”起來,讓它替你去做各種事情,它就變成了一把神兵利器。你會(huì)忍不住想要用它。
3.建立自己的系統(tǒng)
高水平腦力工作者應(yīng)該有若干個(gè)、生長在大腦之外的、信息管理系統(tǒng)。你大約需要一個(gè)日程表、一個(gè)待辦任務(wù)列表、一個(gè)想法記錄系統(tǒng)、一個(gè)文獻(xiàn)管理系統(tǒng)和一個(gè)寫作系統(tǒng)。
很多人寫任何東西都只會(huì)用一個(gè) Word —— 我堅(jiān)決反對正常人用 Word。你要做的不僅僅是寫下來,更是管理你寫的東西。你需要的是輕量級的寫作工具和高水平的信息管理系統(tǒng)。
我從讀研究生的時(shí)候就開始記科研筆記。每天做了什么嘗試,取得什么結(jié)果,讀了哪篇論文,產(chǎn)生什么想法全都記在一個(gè)大本子上。我甚至還把計(jì)算結(jié)果的圖形打印下來,用膠水粘貼在筆記本上。為什么不用計(jì)算機(jī)呢?因?yàn)槲腋械?Word 之類的工具管理這么多信息太麻煩了。但是有一天我發(fā)現(xiàn)一個(gè)好東西,叫 TiddlyWiki。
這是一個(gè)“非線性個(gè)人筆記本”,而且是純自由的,不屬于任何公司。我花了很大功夫,用 TiddlyWiki 定制了一個(gè)科研筆記系統(tǒng)。它支持圖形和數(shù)學(xué)公式,方便各種樣式的排版,特別是方便各條筆記之間做鏈接。我做的每一個(gè)項(xiàng)目、所有的想法、所有的實(shí)驗(yàn)結(jié)果都放在一起,方便檢索,而且全局搜索。結(jié)果是我跟任何人討論到科研上的什么東西,都能馬上調(diào)出來。[4]
這個(gè)要點(diǎn)是你需要一個(gè)外部的大腦。所謂 GTD,核心思想就是大腦是用來想事兒的,不是用來記事兒的。良好的系統(tǒng)能讓你的思路變得清晰。
4.把所有東西放在“云”上
你可能聽說過某某作家因?yàn)閬G失電腦而損失了多年勞動(dòng)成果的故事?,F(xiàn)代人不應(yīng)該允許發(fā)生這樣的事情。你的所有文檔,管他重要還是不重要,都應(yīng)該隨時(shí)同步到云端。
“云”,是個(gè)近十年才有的概念,但是早在十幾年前,人們就已經(jīng)在用給自己發(fā)郵件的方式,把重要文檔保存在 Gmail 之類的地方了?,F(xiàn)在像 iCloud、Evernote、Dropbox 之類的云服務(wù)已經(jīng)高度普及,使用方便價(jià)格便宜,你甚至可以在家里搞個(gè)自己的云服務(wù)器。哪怕你所有的計(jì)算設(shè)備都被破壞了,它給你帶來的應(yīng)該只是麻煩而不是毀滅。
而且現(xiàn)在云解決的不僅僅是安全的問題,更是方便的問題。你應(yīng)該確保自己在任何一臺電腦上、包括在手機(jī)上都能隨時(shí)工作。
5.要折騰
現(xiàn)在可能已經(jīng)改過來了,但是就在一兩年前,海信和小米這兩個(gè)品牌的智能電視,竟然每次開機(jī)都要強(qiáng)制播放十幾秒的廣告。我第一次聽說的時(shí)候深感震驚。如果連這個(gè)都能忍,你還有什么事兒是不能忍的?
你應(yīng)該在買電視的第一天晚上就想辦法把那個(gè)廣告機(jī)制給破解掉。這有點(diǎn)麻煩,但是并不要求你是個(gè)職業(yè)程序員:其實(shí)只要上網(wǎng)隨便搜索一下,就有至少三種現(xiàn)成的方法。
高水平的計(jì)算機(jī)使用者總是對計(jì)算機(jī)做各種定制。計(jì)算機(jī)給你提供的,應(yīng)該正好是你想要的,不多不少。有的人一開機(jī)屏幕上就是各種沒用的彈出信息,有的人卻能讓所有網(wǎng)頁都不帶廣告 [5]。哪怕是最不講究的應(yīng)用程序,為了能保住高水平用戶,也會(huì)允許定制彈出信息。你要是不定制就等于接受他們的擺弄。
計(jì)算機(jī)上有無數(shù)個(gè)可設(shè)置的地方,默認(rèn)值絕對不是最適合你的。一個(gè)工具用起來趁不趁手,你得非常敏感才行。如果不趁手,哪怕沒有直接的可選項(xiàng),你也應(yīng)該設(shè)法改一改它。計(jì)算機(jī)這個(gè)機(jī)器的特點(diǎn)就是它總可以改。
折騰電腦是個(gè)很有意思的活動(dòng)。你不用擔(dān)心自己的水平,因?yàn)榫W(wǎng)上有無數(shù)人也在折騰同樣的問題,很可能他們已經(jīng)把答案貼出來了。你要做的只是搜索和照著操作而已 —— 而只要愿意搜索和照著操作,你就能解決絕大多數(shù)問題。
*
以前有句話說『真正的程序員認(rèn)為計(jì)算機(jī)是有生命的』。我們不一定非得這么想,但是使用計(jì)算機(jī)跟使用電飯鍋的確不一樣。如果你積極主動(dòng)地了解它、學(xué)習(xí)它、定制它、命令它、指導(dǎo)它、馴服它,它會(huì)給你巨大的回報(bào)。
回報(bào)包括虛榮心的滿足。旁觀高手把計(jì)算機(jī)使得上下翻飛,不但是一種享受,而且會(huì)讓人心生敬畏。我曾經(jīng)無數(shù)次目睹科學(xué)家上臺作報(bào)告居然不知道怎么把 PDF 格式的 PPT 全屏。像這樣的動(dòng)作你用鼠標(biāo)點(diǎn)都算露怯,應(yīng)該直接敲一下鍵盤。我曾經(jīng)不止一次,僅僅是用鍵盤切換個(gè)窗口,就被旁觀者贊嘆。使用計(jì)算機(jī),你能不能有點(diǎn)“范兒”。
劃重點(diǎn)
對于計(jì)算機(jī),一點(diǎn)兒有關(guān)效率的思想和正確的使用精神:
1.用鍵盤,別用鼠標(biāo)
2.把事情自動(dòng)化
3.建立自己的系統(tǒng)
4.把所有東西放在“云”上
5.要折騰
如果你積極主動(dòng)地了解它、學(xué)習(xí)它、定制它、命令它、指導(dǎo)它、馴服它,它會(huì)給你巨大的回報(bào)。
注釋
[1] 推薦 Neal Ford, The Productive Programmer (2008). 這本書能讓普通用戶的水平立即上一個(gè)臺階。
[2] Christopher Mims, Stop Organizing Your E-mail, Says Study, MIT Technology Review, May 20, 2011.
[3] Hunt Andrew and Thomas David, The Pragmatic Programmer: From Journeyman to Master (1999).
[4] TiddlyWiki 最適合短小但是多樣化的筆記。現(xiàn)在我整天寫長文章,不搞科研,它就不適合了。我現(xiàn)在用 Evernote,見《我怎樣管理信息》。
[5] 不看廣告的人
日課精選
暫無留言
明 12月17日