如果2023,只是如果 …

又到了新的一年了。自從加入中年俱樂部,我已經不太搞新年新希望那一套了。我不知道別人,起碼我自己以前寫過所有的新年新希望似乎從未達成;與其在年初寫下遠大的OKR用來在年末宣告個人今年經營不善,對我來說還是專注當下比較有意義。

不過,幻想未來會發生什麼事還是很有意思。

回想起來,2017年軟體界真是熱鬧又扼腕,全世界投入這麼多資源發展了這麼多新技術,主要都還只是拿來幫大企業吸金而已。舉例來說,深度學習是門令人讚嘆的技術,它從根本改變了人們對智能活動的認識,但目前最大的應用是做廣告。區塊鏈從根本改寫了信用,但目前最大的應用卻是到處灑加密貨幣吸金。

啊,咱市井小民只好期待那些大玩家玩夠後,就會開始出現些跟把錢從我們口袋中抽走比較無關的應用了。在那之前,就來好好幻想一下五年後可能會有些什麼事吧。

繼續閱讀 “如果2023,只是如果 …"

關於燒燙燙的Calypso離線開發模式

就在上上週Dennis Snell發佈了Calypso離線開發模式的最後一個pull request,詳細使用說明請服用README,概念大概是這樣:

  1. 啟動API回應錄製
  2. 開始這樣那樣玩弄各種等一下離線開發會用到的功能
  3. 啟動API回應錄像回放

之後calypso就不會真的發送任何API requests,而是從之前的回應錄像中取用預存的回應,如果不存在,就會像是一般API request失敗那樣。我不太確定這種模式有沒有標準用語,不過我們目前是把這叫Priming。目前整體差不多是在MVP,步驟繁瑣,但咬著牙屁股一夾走完一趟,就可以開開心心離線閉關去。

在開發初期有跟Dennis稍微聊過他打算怎麼做這一塊,他說他希望能從redux middleware來處理。由於Calypso是個行之有年的專案了,要從這角度下去幹需要非常多的重構,我當下覺得找幾個人全職在做大概也要個半年吧 … 沒想到這傢伙兼職著做也是半年就做完了,實在佩服。

繼續閱讀 “關於燒燙燙的Calypso離線開發模式"

研究生時期的一課

時光匆匆,研究所那段每天K論文趕專案的日子已是近10年前的事情了。當時我懷抱著製作AAA遊戲的夢想加入了交大computer graphics實驗室,但大約在碩二上學期,主要研究的physical-based fluid simulation、clothes simulation以及point-based rendering,各大期刊幾乎都被數學及物理出身的人攻佔,即便我自信程式功力、對GPU等硬體的了解不輸人,由於無法自行發展背後運行的理論,總覺得無從施力,心態上陷入極重的低潮。回想起來那就好像整個人爬在暖暖ㄍㄡˊㄍㄡˊ的泥漿中,悶不死又爬不出。我為了補足數學方面的不足,先是去修了應數所的微分方程,後來又去圖書館借了一堆數值方法等等相關書籍來K,但那股被動感始終無法突破;這讓我非常沮喪,一度想著是不是該放棄,請教授隨便給我個題目做做能畢業就好了。

『我看這領域根本沒有我容身之處,computer graphics sucks!』我曾認真這麼想。

後來在一場每週例行的seminar中,Karen Liu教授來訪,徹底改變了我的想法。

繼續閱讀 “研究生時期的一課"

颱風蘭恩教我的滯留兩三事

今年年初的時候,受過去一同在遊戲業奮鬥的夥伴Sue之邀,於10月底前往沖繩參加她的人生大事。好夥伴、沖繩、沒參加過的教堂婚禮!我沒想太多就答應,機票刷下去。但沒想到的是,我們出發之時,今年第21號颱風『蘭恩』,也悄悄出發。天公作美,Sue的婚禮風和日麗,天空還因為外圍環流顯得特別的藍,結果隔天就收到樂桃取消航班的通知。

總結來說:

  1. 信用卡附帶的旅遊不便險,通常與『刷卡購買機票交易成立』有關。也就是說要用信用卡不便險的話不能向航空公司申請退費,一但退了此交易視同取消,保險也就跟著不成立。
  2. 坐廉價航空一定要買不便險。稍微鐵齒一點的話,至少要看看天氣預報,有天候風險的話還是另外買一份比較保險。而且另外買的通常額度較高,理賠手續也沒這麼龐雜。

以下詳細開始。

繼續閱讀 “颱風蘭恩教我的滯留兩三事"

homebrew與tmux在OSX Sierra & High Sierra上的幾點雜症處理

自從OSX升到Sierra以來,我萬年沒更新的homebrew與tmux每天都在噴錯誤訊息給我,今天發現要寫一些tmux customizing script沒辦法運作,只好面對現實處理一下。以下幾點紀錄供未來參考用。

症頭:brew update => /usr/local is not writable.

解法:更新homebrew

如果跑brew doctor,homebrew會建議跑chown -R ${whoami} /usr/local,但我的情況是這招沒用,有查到一些討論串說這是Sierra開始有的bug。後來是直接安裝新版的homebrew解決。寫這篇文章的當下,官網提供的命令為:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

過程中會提示刪除一些東西,按照指示刪除後再跑一次brew update就行了。

症頭:[warn]: kq_init: detected broken kqueue; not using.: File exists

解法:更新tmux

tmux在2.3以前會有此症,更新就好囉!用homebrew的話就:

brew uninstall --force tmux
brew install --HEAD tmux

詳細請看tmux github issue 475

症頭:warning: reattach-to-user-namespace: unsupported new OS, trying as if it were 10.10

解法:更新reattach-to-user-namespace module

brew upgrade reattach-to-user-namespace。詳情請見:https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard/issues/52

症頭:invalid or unknown command: bind-key -t vi-copy

解法:用新的語法改寫

用tmux 2.2太久了,一升到2.4就碰到這個問題,所幸有人佛心來著寫了一篇簡單明瞭的轉換教學。以下步驟引用自該文:

  1. replace -t with -T
  2. replace vi- with -mode-vi
  3. prefix the command with send-keys -X

( 嗯…這麼一看,基本上都是長期懶得更新的問題啊… )

鐵蛋的Whistler奇幻之旅

大家好,我們是鐵蛋。

我們在成為這模樣前,就是個隨處可見的鵪鶉蛋。聽說我們是被遴選出來的一群,經過數十道滷汁的淬煉,再加上真空包裝擠壓,方能從一堆白泡泡的滑頭蛻變為一顆顆閃耀的黑鑽;堅毅的外表下隱藏著熟透多汁的心,這豈是那些菜蛋們想像得到的境界?

這個叫什麼軟人的傢伙,邊逛著商店嘴上邊叨念著鳳梨酥和泡麵已經不夠刺激了,想找些更有趣的東西讓國外的朋友們試試。身為鐵蛋,怎可放任此等迷途羔羊再伸手去抓那些入門貨色?我們互相彈了彈蛋白,當下有了默契 —— 一包原味一包辣味,入陣去!

繼續閱讀 “鐵蛋的Whistler奇幻之旅"