只放拖鞋的鞋櫃

Coroutine 算是 Kotlin 裡面相當引人注目的功能,簡單來說就是可以幫助處理非同步需求的機制。

舉例來說,我們常常看到這樣的需求:按下一個 Fetch 的按鈕,去抓網路上的某個列表來更新手機內的資料,同時又不希望 UI thread 被卡住。在 Android 上面經常就是祭出 AsyncTask,或是用 Rx 的方式來處理。利用 Coroutine,這些功能都會變得比較簡單實作

閱讀全文 >>

昆特牌是 Witcher 3 裡面的一個小遊戲。雖然非常喜歡 Witcher 3,但我剛開始玩的時候覺得要學很多東西太複雜,所以就跳過了這個部份的教學,任何昆特牌相關的東西都不玩。後來遊戲上手了,回頭玩昆特牌開始上癮,卻因為跳過一些任務無法完整收集昆特牌,只好在二周目重來一次。

我的昆特牌癮又發作啦~

拿著雙劍周遊各地的傳奇白狼傑洛特,除了幫助一些可憐的底層人民,偶爾還會拿著強力的牌組欺壓市井小民。我覺得這樣的設定很有趣,也是我特別喜歡在遊戲裡頭找 NPC 打牌的原因。昆特牌的規則很簡單,只是遊戲裡面的說明不好懂,我試著用我覺得清晰的方式再解說一遍。

閱讀全文 >>

在日本久居的台灣人,可以直接更換日本駕照。先提醒一下,我們台灣人的駕駛習慣直接搬到日本不大好,還是多忍住踩油門的衝動,不要哪天日本取消了這個美意,是台灣人的損失。

前一陣子換了日本駕照,在這邊紀錄一下過程。

閱讀全文 >>

這兩天有白帽 Hacker 公佈了從資料庫撈出來的普通民眾對話紀錄。內容是熱愛資料的中國政府如何傾聽人民的聲音。雖然我常跟朋友說監控在技術上可以做到多麽細膩,總覺得自己會被當成瞎操心。又或著,當我臉上露出些許對隱私的擔憂時,又可能被當成反烏托邦電影看太多的阿宅。

剛好趁著這件事情,隨意說一下我自己長久以來的想法。

閱讀全文 >>

24 號的選舉過去了一週,心情也大致沈澱。趁著還沒有遺忘太多的時候,寫下這次強者我同學在這次選舉的一些小事。我們在極度缺乏資源的情況下勝選議員,在一些地方政治參與比較深的人的眼裡,簡直難以想像。

閱讀全文 >>

沒想過會需要換兩次在留卡,只為了把漢字加上去。今天既然去了第二次,就順便記錄一下怎麼做,給其他需要的人當作參考。時間是 2018 年 11 月,未來不知道會不會有變動。

一開始申請完簽證,入境的時候會拿到一張在留卡。但是那張在留卡上面的名字是英文字,如果想要加註漢字,就要到入國管理局去更換,如果在留卡仍有兩個月以上才期滿,更換就需要自費 1300 日圓。

閱讀全文 >>

這兩年來工作的主力機是 MacBook Pro,原本的 x220 比較少出動,系統的 debian testing 也因此許久沒更新。

前幾天拿出來用 aptitude 升級套件的時候,因為衝突與相依數量太多,一度讓 aptitude 不會動。同時自己又不知道在哪個地方犯了傻,有些套件只更新到一半就重開機,結果掛載家目錄的時候失敗,一直無法開機,連 tty 都沒拿到。

所幸只是小問題,以下紀錄過程,希望能給類似的苦主一點幫助。

閱讀全文 >>

開發的過程要寫程式,寫程式我們都知道要寫測試,寫測試的時候經常看見 Stub, Dummy, Mock 等等這些名詞。使用 Testing Framework 的時候,更是經常使用到看起來功能類似,不同名稱的物件。稍微理解這些名詞的概念,使用測試框架的時候會有點幫助。

閱讀全文 >>

先講結論:這些 functions 目的是希望,執行程式碼裡面的 function literal 的時候有更好的可讀性。

Function identifier return value
let it last line of literal
run this last line of literal
also it this
apply this this

Let it Run this literal, it Also Apply this

這是我背誦記憶的口訣:Let 用 it,Run 用 this,都是回傳 function literal 最後一行的值。Also 用 it,Apply 用 this,都是回傳 this

閱讀全文 >>
Next →