簡評二十六

What are the main uses of Command design pattern?

Command pattern 有時好似有D dummy,無端端要decouple generate request 同 execute request 嘅object。但係現實中有以下場境:

  • GUI
    • 因為UI(request generate object),成日要轉,所以最好拆開,亦姐係MVC pattern
  • Marco recording
    • 因為要record同replay行過嘅步驟,decouple左之後,只需要儲低個request object就做到
  • Multi-step undo
    • Similar to Marco recording
  • Networking
    • Remote execute嘅情況,request generate object 同 execute object唔係同一部機上邊,焗住要decouple
  • Progress bar
    • Decouple左個execution做一個個step之後,我地track住個request object,就可以知道個progress
  • Transaction
    • Similar to multi-step undo

The flag /g of JavaScript’s regular expressions

之前中左一個伏,一個有g flag 嘅 regex,重覆execute會有唔同嘅behaviour。睇完篇文先知有g flag嘅regex係stateful,有一個叫lastIndex嘅internal state。如果冇reset 到,可能會係match第2條string時出現unexpected results。

個regex無端端有個internal state,以乎係一個javascript嘅bad design

关于Git的主要维护者滨野纯的访谈

  • Linus 的管理才能
    • Project maintainer 有一半嘅工作係say no
      • 要解釋係因為commit唔得,而唔係因為能力唔得
      • 重視每個contributer
      • 要令對方覺得工作冇白費,唔好打擊對方嘅熱情
  • Great programmer
    • 持之以恆做某件事
    • 擁有良好嘅直覺同品味
      • 對新問題,就覺沒有完整解決問題,都可以用直覺提出正確解決問題嘅思路同方向
    • 溝通能力
      • 要能夠解釋「我的目標係咩」,同得出目標嘅思維過程
  • 自我反省
    • 練習lightening talk,係短時間內清楚提出自己嘅諗法
    • Reject pull request嘅技巧值得學習

人生中最重要的5個思考題

  • 「等等,你說什麼?」(Wait, What?)
    • 一種自然的方式去引導對方更詳細的表達,讓對方把還沒說的、埋在較深處的資訊給說出來
    • 能減少溝通中的誤解,讓你聽見他人腦中的真實想法
  • 「我想知道……?」(I wonder…?)
    • 加強好奇心
  • 「至少,我們是不是能夠……?」(Couldn’t we at least…?)
    • 「至少,我們是不是能夠同意……?」
      • 化解衝突,引導衝突的雙方達成共識
      • 人們常會不自覺的把事情往極端的情況想,用E個問題去達成最低限度嘅妥協
    • 「至少,我們是不是能夠……?」
      • 一步步帶他們嘗試新事物,幫忙克服恐懼
      • 引導人的思緒遠離極端情況,回到自己能做出行動的最低限度
  • 「我可以幫什麼忙?」(What can I help?)
    • 讓自己變得謙卑
    • 我們常誤以為自己能比對方更清楚他/她自己想要什麼
  • 「真正重要的是什麼?」(What truly matters?)
    • 人們很容易被瑣事擋住了真正重要的事情
    • 許多人覺得生活過得很迷茫、漂浮不定,其實歸根究底,就是因為沒想清楚什麼才是真正重要的

以下無需重讀

Understanding your Circle of Competence: How Warren Buffett Avoids Problems

  • 知道自己擅長嘅領域
    • avoid problems
    • identify opportunities for improvement
    • learn from others
  • 有時候知識面唔夠廣唔係壞事,但要知道自己嘅circle of competence
    • 反而可以幫助自己專注係擅長嘅項目

Why your tech company needs to go ‘tech-light’

用得太多工具,會被工具困住左個思維。有時候改變一下平日習慣嘅workflow,反思一下,可能會發現一D提升效率嘅方法。

GPS是如何運作的?而它為什麼可以免費使用呢? (中文CC字幕) (video)

  • GPS 免費,但其他美國政府用好多錢去maintain
    • 但係美國有能力disable 任何party嘅GPS,所以各國都有研發自己嘅GPS system
  • 24 個 GPS衛星保證全球任何地方都連到4個GPS

The Feynman Technique (video)

  • Learn a overview of a topic
  • Try to write a tutorial to teach other the topic
    • You can know what you understood and what you don’t
  • Go back to learn what you don’t understand
  • Try to simplify your tutorial, explain the idea in a simple way or use some analogy

Differences between git submodule and subtree

  • Submodule
    • is a “link”
    • component based development
  • Subtree
    • is a copy
    • system based development
    • develop on both project and subproject

罗辑思维 198 你是巨婴吗 (video)

  • 巨婴:人嘅心理結構同反應模式停留係嬰兒早期
  • 三大特點
    • 病態共生
      • 唔健康嘅家庭關係
        • 裙腳仔
          • 母子過份依賴
        • 婆媳矛盾
          • 奶奶唔習慣母子依賴嘅關係被打破,遷怒於媳婦
      • 不斷一代接一代循環
        • 上一代嘅「婆媳矛盾」+「父親角色嘅缺失」,令子女唔知道正常嘅家庭關係
        • 「婆媳矛盾」,令婚後妻子縛往丈夫,丈夫唔識處理家庭關係而逃避
        • 妻子把重心放係孩子嘅身上,做成「病態共生」,父親逃避問題,做成「父親角色嘅缺失」
        • 孩子婚後,由於家庭核心係孩子身上,妻子唔習慣媳婦搶走孩子,做成新一代「婆媳矛盾」
        • 循環
      • 正常嘅家庭關係
        • 父婦係家庭嘅核心,子女只係住二十年嘅房客
      • 人與人之間冇清晰嘅界限
        • 一個人嘅事就係大家嘅事,變左人人都差隻腳埋黎,好難解決問題
        • 中國文化中,跨越陌生人嘅邊界,係釋放善意嘅表現
          • 係現代社會唔係一個正常雖行為
    • 全能自戀 & 偏執分裂
      • 要現實以佢地嘅想像中嘅方法運行
        • 現實不似預期,就會崩潰,覺得係有人搞事,揾攻擊對象,就算成件事唔關佢事都好
        • 要求人要有完美表現
      • 認為非黑即白,世界冇灰度
      • 得個諗字,缺乏行動力