I have been feeling I rely on luck for a long time. I do not have a real established routine. I am abusing little tricks to have little win. Even the little wins are not real wins, they are just acceptable result to be honest.

Documenting code

距離第一次寫 Python 也差不多十年了,但是一直停留在寫點資料科學腳本的階段。凌亂沒系統地學習,讓我沒有辦法更加成長。

選擇 UGA 而不是 UC Davis 的一個主要原因,是面試期間看到 NYU 跟 UC Davis 幾位特別景仰的教授都是出自 UGA,讓我思考起是不是 UGA 的環境有種特別的魔力。其中一位讓我印深刻的是 UC Davis 的 Dr. Ross-Ibarr。他的網站上明確地列舉了對新進人員的期待,除了基本的工作時數與態度,連程式的撰寫風格、整理方式、與版本管理等等也有說明。因此我希望接下來在實驗室寫的程式也都遵循這些原則:

原則

  1. 將所有寫的 code 放上 Github,如果是很簡短的 code 或是只能一次性使用的腳本那就用 Gist 存起來。

  2. 所有的專案都要附加 Readme.md。

  3. 增加 code 的可讀性,加上註解與文件,將 code 模組化,遵循公認的撰寫風格。

  4. 善用 .gitignore 來保持專案的乾淨

  5. 不要修改 commit 的紀錄

雖然實踐起來很痛苦很麻煩,但好處多多。除了腳本可以給其他人用以外,留下的紀錄也可以加強可重複性,並讓其他同事也可以使用。

補充紀錄,我也相當喜歡他提供的給研究生的建議,最重要的幾點大概是大量閱讀、時常寫作、每天筆記。

PhD and Writing

讀到了 Dr. Maithra Raghu博士生涯的反思,領悟到自己目前視野狹隘,就在於文獻閱讀不夠。文中她在博一與博三分別建立了兩個清單,一個是自己讀過的論文,一個是對於新興領域的觀察。我打算重新調整我的網站內容分配:

  1. 個人網站 (ChenHsieh.com) 用來記錄反思以及對新興領域與產業的觀察
  2. 原植物遺傳選文淺談 (新買的網址是 digitalgeno.me) 則作為閱讀文章的筆記放置處
  3. RNA-Sick.me 則用以存放技術代碼相關短筆記

目前問題在於未將學習的東西轉換成可讀的文字,因此內容七零八落,他人與自己都無法再利用,因此陷入了不斷重拾散落知識與技術的循環中。

關於寫作,實驗室有一個固定的 writing session 我相當喜歡,該時段實驗室的所有成員與自願參與者會一起寫自己的文章,主要目的是養成寫作習慣,靜下來思考脈絡而不是用忙碌的實驗或操作來麻痺自己。每週兩個小時,一年累積一百小時,一百年才能累積到一萬小時成為專家。照目前的步調我還有很長的路要走,希望隨著閱讀量的增加能夠迎來質變。