「那天在二見浦遇到的人讓我想起攻殼機動隊的合田一人」,我邊跟 Chialin 講邊 Google 了合田一人的照片。

合田一人的 Google 搜尋結果
合田一人的 Google 搜尋結果

最近在看《搖曳露營△》第二季,凜講述了自己為什麼喜歡單人露營的原因,讓我想起 2019 年自己去紀伊半島的熊野古道參拜與環半島的旅程。

我還記得剛到出發站田邊的時候,發現田邊是一個極為偏僻的小鄉鎮,大概是我在日本造訪過最鄉下的地方。路上幾乎找不到什麼餐廳,而我入住在一間非常具有日本傳統家庭風味的民宿,一樓是個有些昏暗的客廳與半戶外的浴室,而二樓小小的房間裡面住著我跟另外一位室友。

--

--

威廉騎著機車逆風而行,豆般大小的雨滴就像穿透過黃色廉價雨衣一樣的打在身上,而黏在皮膚上那討人厭的水氣彷彿提前宣告了這一整天的不幸。

上面這個段落跟「威廉今天騎車上班,下大雨很討厭」是同一個意思,但取而代之的是透過描述感官細節與所遭遇的場景來把讀者拉入故事所在的脈絡而產生感同身受的氛圍。

在重看《西方極樂園》時其中一幕夏洛蒂·海爾 (Charlotte Hale) 提到了 “Show, don’t tell” 才讓我意會到我以前經常用的寫作方法原來是作家會使用的一種寫作技巧,透過更多感官描述來把讀者拉入一個場景中,就像是用蟲洞把讀者傳送到另外一個世界。

Show, don’t tell. Isn’t that what you writers prefer? (source)

但這不僅限於文學創作,就如同雷光夏在《感官一條通》的採訪裡面所說的相同,她的音樂就像是打開了一個神秘通道,把聽眾傳送到另外一個世界,不論是遠古時代的神話場景,或是她即將搬離的老家。

當藝術家在創作時,他們的作品都是將受眾拉入他們所構築的脈絡裡面,講述他們所要傳達的故事與價值觀。就像《全面啟動》裡構築那些宏偉又奇幻的夢境,但身為一起分享夢境的我們,總是會讚嘆夢境裡的精雕細琢,只有在離開夢境時才摸著自己的臉龐困惑的回想那些似乎不合邏輯的細節。

--

--

軟體工程師經常有一種共同經驗,當工作遇到問題,正詢問另外一個人時,有時講著講著突然就想到要怎麼解決了。這個過程其實是解釋問題時,為了要讓另外一個人理解問題,自己需要重新組織了關於這個問題的相關知識,很多時候在這個階段就會因為重新組織思考過而自行找到答案了。 為了要自己也可以透過這種方法想清楚一件事情,軟體工程師流傳一個方法是可以在桌上擺一隻黃色小鴨的玩偶,如果遇到不懂的問題就跟他講解,這樣就可以不用有另外一個人聽你說也可以用這種方法來重新思考問題了。 吸收知識也可以用同樣的方法,有時候我們在閱讀書籍、網路文獻的時候會覺得自己看懂了,但是經常過一段時間又有人提起相關的事情,通常我們不能夠很快把閱讀過的資訊拿來使用、提出建議,可能需要反覆在網路上查詢、跟別人解釋過後,這段知識才會真的被自己吸收,在相關問題發生時可以想起這些知識並且應用。 寫文章、演講,或只是經常跟另外一個人分享知識都是很好的吸收知識的方式。寫過文章或演講後,對特定的知識的掌握程度會大幅度的提升,但通常都要花費大量時間閱讀與準備。根據準備的主題範圍可能會需要花上幾天甚至更久的時間。另外也不是所有人都想要面對人群或是網路上的互動。

吸收知識的手段:撰寫筆記作為你的黃色小鴨
吸收知識的手段:撰寫筆記作為你的黃色小鴨

軟體工程師經常有一種共同經驗,當工作遇到問題,正詢問另外一個人時,有時講著講著突然就想到要怎麼解決了。這個過程其實是解釋問題時,為了要讓另外一個人理解問題,自己需要重新組織了關於這個問題的相關知識,很多時候在這個階段就會因為重新組織思考過而自行找到答案了。

為了要自己也可以透過這種方法想清楚一件事情,軟體工程師流傳一個方法是可以在桌上擺一隻黃色小鴨的玩偶,如果遇到不懂的問題就跟他講解,這樣就可以不用有另外一個人聽你說也可以用這種方法來重新思考問題了。

吸收知識也可以用同樣的方法,有時候我們在閱讀書籍、網路文獻的時候會覺得自己看懂了,但是經常過一段時間又有人提起相關的事情,通常我們不能夠很快把閱讀過的資訊拿來使用、提出建議,可能需要反覆在網路上查詢、跟別人解釋過後,這段知識才會真的被自己吸收,在相關問題發生時可以想起這些知識並且應用。

寫文章、演講,或只是經常跟另外一個人分享知識都是很好的吸收知識的方式。寫過文章或演講後,對特定的知識的掌握程度會大幅度的提升,但通常都要花費大量時間閱讀與準備。根據準備的主題範圍可能會需要花上幾天甚至更久的時間。另外也不是所有人都想要面對人群或是網路上的互動。

所以這邊要講的是另外一種很不錯的方式:透過撰寫筆記的方式來重新組織與理解知識。當你針對你有興趣的主題寫筆記時,你自己會需要重新思考過一遍這個知識並且在腦中重新消化咀嚼。當完成筆記的同時,這個筆記將會成為這個過程的副產品,而真正主要的產物則是你在腦中的思考過程,讓你更深度的了解這個知識。

筆記只是副產品,真正的產物是你腦中思考咀嚼後內化的知識。

這種寫筆記的方式就像是問問題時候的黃色小鴨,你不需面對其他人的評論指教,但是卻有一樣的效果可以協助你理解知識。

如果你也打算嘗試這樣的方式吸收知識,你可以參考之前寫過的文章《如何組織與吸收知識 — 魔改 Zettelkasten 筆記法》,而本文則敘述了部分《卡片盒筆記》所提及的撰寫筆記方式。

首先,我建議只作你自己有興趣或是覺得重要的筆記,不要作你沒興趣的筆記。因為作筆記這件事情需要有內在的原動力持續的進行下去,如果你想硬啃一些你沒興趣或是覺得沒用的知識很難一直持續作筆記下去。

撰寫筆記的範圍盡量不要過大,否則就跟寫文章一樣了需要花費的時間太長。我自己寫一篇筆記的時候會預估這篇筆記的閱讀時間不要超過五分鐘,如果要超過五分鐘,就考慮是否要拆成數篇筆記,不過如果真的不能拆那也不用勉強,畢竟是作給自己看的筆記。

下筆時,如果你有其他參考資料比如說書籍或是網路文章,不要只複製貼上或抄寫一遍,而要閱讀完畢後在腦中思考一次,重新用自己的話重新寫過一次。這個步驟很重要,因為我們需要的主產物是重新思考的過程,而如果沒有重新思考過那只是把別人的資訊謄寫一遍,並不會有太多思考過程可以內化成自己的知識。

接著這篇筆記要假設另外一個已經有概略背景知識的讀者,從頭到尾閱讀就可以明白這篇筆記所要傳達的想法,雖然這個讀者很有可能就是自己,但是這樣的假設可以讓筆記可以獨立的存在,並且未來回來重讀時可以快速的重新回想起這篇筆記所包含的知識,所以寫完之後重新閱讀一下確保這件事情。

寫完之後,思考這篇筆記自己有沒有什麼疑問、不同意的地方或是任何的想法,並且也紀錄在筆記裡面。我自己紀錄筆記的時候會有一個「問題」的章節放這些東西。

最後,當你寫超過一篇這樣形式的筆記後,寫完之後仔細思考一下有沒有跟這篇筆記相關的筆記,並且也記錄下來,這個過程對我來說經常會連結到一些我從來沒想過的筆記,這些被探索到的新連結通常會讓我滿驚喜的。

我使用 Obsidian 撰寫筆記,我在紀錄一篇這樣的筆記時,會使用這個樣板:

---
alias: []
---
# Todo
- [ ] 思考這篇永久筆記你覺得有趣嗎?重要嗎?有趣或重要的點在哪裡?答不出來就不要記
- [ ] 寫上文獻筆記的參考
- [ ] 補充上下文的脈絡後,用自己的話轉述寫成一篇筆記
- [ ] 重新閱讀一次,確認整篇筆記只要了解概略背景知識就可以讀懂
- [ ] 思考這篇筆記自己還有什麼衍生的疑問,有什麼不同意的地方?寫下來
- [ ] 打開 local graph 並且把深度開成 2,並且把範圍限定成 path:Slipbox
- [ ] 思考這篇筆記跟目前卡片盒裡面的有什麼關聯
- [ ] 檢視 graph 裡面有沒有出現一些有可能有關聯的筆記
- [ ] 把已經擷取完內容的文獻筆記移動到 Archived 目錄
- [ ] 寫完後刪除待辦事項包含標題
# Content# Question
-
# See Also
-
# Reference
-

你也可以參考這樣的格式修改成適合自己的格式,因為待辦事項一節寫完後會刪除,完成筆記的樣子則如下例是「意志力」的筆記:

---
alias: [自我耗損, ego depletion]
---
人們原本一直以為意志力是種性格的展現,而不是一項資源。但是現今的研究已經讓我們了解到意志力就跟肌力一樣是一種有限的資源,會快速耗盡,而且需要時間回復。透過訓練可以加強到某種程度,但是幅度有限。但是作有趣的事情並不需要消耗意志力。# Question
- 為什麼我經常覺得意志力耗盡?是因為我作的事情不有趣嗎?
# See Also
- [[自律的完成指定任務是取得成功的重要因素]]
# Reference
- [[卡片盒筆記#^ad5736]]
- [[卡片盒筆記#^5c35f4]]

See Also 跟 Reference 實際上會連結到 Obsidian 的另外一篇筆記,而 ^hash 則會連結到特定的段落。

我自己目前透過這樣的方式大約花了一年的時間,紀錄了大概五百篇筆記,大部分都像上面一樣的短筆記,但有些很難切分的也會比較長,而筆記的格式隨著時間有做了一些調整。這樣作以後我覺得自己對於知識的理解更深入了。隨著筆記增多,我也慢慢在撰寫筆記的時候思考到一些新想法記錄下來。

重點是我覺得很有成就感 😁

但壞處是這樣作筆記花費的時間真的很長,雖然只是寫閱讀時間五分鐘的筆記,但是你可能要花上好幾倍的時間撰寫,但如果相較於累積的知識再加上這樣的過程產生的成就感,我覺得很值得。

如果你也第一次嘗試,剛開始應該會跟我一樣遇到不知道該怎麼執行的問題,我建議先試試看然後慢慢調整自己的作法,因為這樣的筆記法其實重點在思考,所以有些事情很模糊,我也不太懂得怎麼講清楚。

另外雖然《卡片盒筆記》一書裡面把這個過程講的很像很簡單,每個人都做得到,但我自己施行起來感覺是很困難的,也需要有滿長的一段時間跌跌撞撞。

如果你沒辦法照著這個方法作也沒什麼關係,或許只是這樣的方式不適合你,也可以再找找有沒有其他更適合的吸收知識方式。我遇到了幾個人談論起這樣的筆記法,真的可以執行的人並不多,我自己可能是原本就經常寫文章,所以寫過程繁複的筆記對我來說摩擦力比較小 😎

--

--

我的一天總是很忙,處理工作的事情之餘經常還需要閱讀大量新資訊,而這些資訊有時候會很困擾我,比如說搞不清楚新技術運作方式,或是書籍裡面一些讀起來很彆扭,但自己也說不清楚為什麼。

上網搜尋資料大多可以解決問題,但更多時候是網路上的各種新資訊與會讓你分心的事情隨處發生,像是朋友的動態、一些技術新進展等等,在查到自己需要的資訊同時,腦袋裡面又放了許多懸而未決的資訊片段,而這些思考殘渣經常偶爾就會在專心工作的時候回想起來,但又沒有足夠的時間好好的梳理消化。

最近找到了一種有趣的方式可以讓自己把事情想的更透徹一點。我早上會出門沿著家裡附近的公園與河堤散步,走過幾次之後發現這是一個很好的時機跟自己獨處,並且不接受太多網路的雜音。

所以我就利用這段時間重新回顧審視自己一些還沒想清楚的事情,小至朋友聊天時的反應,技術上搞不清楚的設計原因,大到自己的人生目標。每次散步回來雖然大部分的事情都還是不會有答案,但是當在腦袋裡重新想過一輪之後,這些思考殘渣還是有逐漸被消化、梳理,就像是整理了一部分書桌的那種感覺。偶爾還會在散步的途中終於讓自己心中已久的疑惑找到答案,塵埃落定。

現在我在每天出門散步前,還會特別先看一下自己最近正在整理的筆記或是想要試著思考得更清楚的事情,出門之後雖然不見得可以找到答案,但那種慢慢的整理的感覺還是存在,回到家後打開房門,還是會覺得心裡的房間被收拾的更整齊了一點。

註:有興趣的朋友可以了解一下 蔡加尼克效應

--

--

小時候的我有條不紊,整理自己的房間、寫作業、讀書學習等等工作事項,每項工作都處理得當。

長大的我總是抱著頭燒,每過一段就下定決心要好好整理自己的待辦事項,但是往往過了一陣子待辦事項又開始長草了,每天湧入的工作事項塞滿行程,讓自己像喪屍一樣的機械著處理看不到盡頭的工作項目。專注的作眼前的事情,長遠的目標卻又總是漏了球。

雖然有點誇張,不過差不多就是我的寫照,每隔一段時間就會想要讓自己回歸「正軌」好好的打理、歸檔工作事項,但卻又沒辦法持續性的一直做下去。

而最新一波的嘗試就是子彈筆記了,經過了一些閱讀與嘗試,並且修改成比較適合我的進行方式後,回頭來看竟然已經執行十個月了,這比起以前的任何嘗試都還要持久。

在這之中我找到了一點平靜,讓我在每天都可以好好管理著待辦事項,而長期的工作也有定期的循環來審視自己的執行狀況。

所以也該是時間分享一下了。

註:我這邊不會介紹子彈筆記法,會直接介紹我目前的作法,但如果有興趣的話可以看《子彈思考整理術》這本書。

到底有什麼問題?

工作事項大家都知道是什麼,就是每天要作的事情,可能是倒垃圾、打掃家裡、領錢、寫程式的一個功能、主持會議、跑銀行等等。

最原始的方式是記在腦袋裡面。別人的大腦我不知道,我是很不擅長記憶事情,只要事情一多就很容易漏掉。後來我會盡量避免直接記在腦袋裡,如果是固定發生時間的就利用行事曆紀錄,如果是工作上的事情或是個人要處理的事務我以前則是會用 Todo 軟體。

但是隨著事情愈來愈多,不同來源的工作都會在不同的地方紀錄工作,如社群的事情紀錄在 GitHub 裡面,公司的在 Asana、電子郵件或是傳訊軟體裡,以前家庭的事情在 Todoist 裡面,每天都會需要在這些不同的來源中切換,久了之後容易會迷失在這些不同紀錄的地方。

另外一件事情則是愈來愈長的待辦事項很容易讓人身心疲乏。當你面對一個永遠都做不完的待辦事項時,永無止盡的工作會讓身心變得疲乏,久而久之原本維護良好的待辦事項就開始長雜草,最後就會成為一個荒廢了的花園。

要解決這個問題重點並不是用什麼軟體管理待辦事項,而是怎麼消化工作事項。一個良好的組織工作方式可以足夠輕鬆作到每天執行,同時又剛好可以消除對過多工作所產生的疲憊感。

大方向

目前在管理待辦事項的方式是採用循環審視的模式,每次循環時都會審視上個循環的執行狀況。

  • 每天開始時,審視昨天作的事情
  • 每月開始時,審視上個月作的事情
  • 每年開始時,審視去年作的事情

詳細的方式下文會提到。

筆記結構

經過前人知識累積與自己的嘗試,我現在將工作事項視為一個循環回顧系統,這個循環系統的分層是這樣:

  • 今天要進行的工作
  • 這個月要進行的工作
  • 今年要進行的工作

我的筆記就是一堆資料夾跟文字檔透過筆記軟體 Obsidian 書寫,他的結構長這樣:

--

--

Mangrove 是一個不需鎖定資產的 Orderbook 形式的 DeFi 交易協定,不需要先將資產存入一個智能合約中才可以開始提供流動性,更可以用靈活的策略來提供流動性,比如說直接用放在 Compound 的資產提供流動性。

達成這個目的的方式,就是讓每筆訂單(或是說 Offer)都是一段可執行的程式碼 (稱為腳本 Script,不過要注意這段 Script 也是智能合約) 加一個觸發條件,當觸發條件滿足後就這段 Script 就會被執行,並且在執行完之後會再次檢查是否有滿足觸發條件,也就是有沒有確實地交換兩種代幣,如果沒有交換成功,這筆交易就會 revert。

舉例來說如果上圖為 Mangrove 訂單簿,每個訂單都會是一個 Offer。每個 Offer 裡面都包含了:

  1. 打算提供多少數量的 Token A
  2. 打算需要多少數量的 Token B
  3. 這段程式執行需要多少 gas
  4. 腳本 (Script),實際執行的程式片段(智能合約)

當 Taker 下了一個訂單,符合 Maker 的 Offer 時,腳本就會被執行。我們先設定腳本的內容就是從 Maker 的帳號裡面取出 1 ETH 轉給 Taker。當一個 Taker 發出一個 Market Order 符合上述 Maker 提出的 offer 時,此時就會執行 Maker 的腳本。

腳本最簡單的版本,就是直接從 Maker 的帳戶轉 1 ETH 給 Taker 完成這筆交易,此時 Mangrove 會驗證交易內容,如果條件都符合(或是訂單部分符合),那這筆交易就順利完成。若腳本執行完的狀態不符合 Offer 的條件,此筆交易就會 revert,此時 gasreq 會補償給 Taker。

但因為 Code 就是 Offer 本體 (Code as an Offer?),所以這邊可以用很多靈活的方法來提供流動性。Maker 除了可以從自己的帳戶拿錢出來,也可以直接從 Compound, Aave 把自己在裡面定存的錢拿出來交易,甚至也可以從 Uniswap 把自己的 Liquidity 抽出來當流動性,如果有找到適當的方式甚至可以用 Flashloan 來提供流動性;更可以將交易完之後取得的代幣,再放回其他 DeFi 產品,比如說再塞回 Compound 生利息。

這樣有幾個好處:

  1. 不需要剛開始就鎖定資金,入金到某個智能合約
  2. 資金利用效率比較高,沒在用的時候還是可以放在其他 DeFi 產品生利息

--

--