Comments

今年的 Ruby Conf Taiwan 2012 實在太精彩,太感動了,一定要寫下來紀錄一下。

前夜祭

首先是經過 ihower 三年的邀請,今年終於邀請到 Ruby 之父 Matz 來到台灣。由於 Matz 提早到台灣,所以在 Ruby Conf 的前一天晚上也臨時加開了 Matz 見面會,能有這個近距離和大師接觸,聊天,提問的機會實在非常難得。不過也許是這時候大家把問題都問的差不多了,結果隔天 Matz 的 keynote 反而沒什麼人提問(笑)。

matz and I

Read on →
Mac
Comments

我現在用來開發 iOS 的電腦是公司提供的一台 Macbook Pro 13” 2010 mid 4G ram。使用上還算堪用,但時不時的 lag 以及 freeze 實在非常挑戰開發者的耐心。尤其當我 Xcode 開著,git 切換 branch 然後 Xcode 重新 index 的時候簡直慘不忍睹。

畢竟電腦還是自己在用,開心順手最重要,所以決定自己投資一點下去升級。因為光碟機很少在用,所以查了一下以前看過的硬碟轉接托架,意外發現非常便宜才 200 多元,還附拆機工具組。參考玩物喪誌的心得一樣購買 Jeyi 的硬碟托架以及 Micron M4 7mm 超薄 SSD。別人踩過一次的雷就不用再踩了。

把光碟機拆下,原本的位置裝上 SSD。內裝的硬碟則不動。如果把內裝硬碟裝在硬碟托架的話硬碟的感震偵測會無法作用。拆機安裝部分參考 ifixit 的說明。最需要注意的是螺絲不要滑牙了。

在拆機的過程中也順便把家裡的 Mac mini server 8G 出包版的記憶體拆下與 MBP 的 4G 對調,兩組都是 DDR 3 1066 的規格,對換毫無困難。

裝上以後開機確認是否有抓到及辨識到 SSD 固態硬碟,link speed 也跑到 SATA II 全速。接著使用 Carbon Copy Cloner 先把原本的系統碟備份到外接 USB 硬碟。再改用 USB 硬碟開機,準備做 Fusion Drive。

會使用 Fusion Drive 的原因是 SSD 實在不夠大,原本要自己安排哪些目錄放 SSD,哪些少用放 HD ,但是使用 Fusion Drive 技術的話可以將 SSD 與 HD 變成一顆邏輯磁碟,而系統會自己幫你判斷哪些常用的檔案放在 SSD, 不常用的則移去 HD ,兼顧了速度與容量和便利性,似乎是個不錯的選擇,所以決定試試看。

參考 Fusion drive on older Macs? YES! 的說明做好 Fusion Drive,再用 Carbon Copy Cloner 把外接 USB 硬碟的資料複製回做好的 Fusion Drive。值得一提的是 Fusion Drive 似乎無法製作 Recovery Partition,這部份只好無視他的 warning 。

最後把 Fusion Drive 設為開機碟重開就完成了這次的升級。相關照片和紀錄都放在 Facebook 相簿 中。

PHP
Comments

今天聊到這個問題,喚起我沈睡的記憶…應該寫下來不然兩年後我大概又會忘了。

在 PHP 中 array + arrayarray_merge 的行為是不一樣的,陣列相加的效能會比 array_merge 來的好,但換來的代價是可能不是你預期的行為以及資料流失。

PHP 的陣列可以有 key 也可以沒有 key,也可以兩者混合。不過所謂的沒有 key ,其實他還是有 key ,只是是自動編上去的 int 流水號 key 例如 0,1,2,3…不管是哪一種,在陣列相加以及 array_merge 的行為都不一樣。

先講一下 array_merge 的行為,array_merge($a, $b) 的話,如果 $a$b 裡面有 key 相同的元素,則會後蓋前也就是 $b 的值會蓋掉 $a 的值。那如果是沒有 key (流水號 key)的值,則會以附加在尾端 (append) 的方式合併上去,而所有流水號 key 的 index 則會重排。

Read on →
Comments

使用 Xcode 的 OCUnit 來做單元測試網路連線時,由於 OCUnit 不會等 block 執行,所以會直接跳到 pass。一般正常作法應該是用 mock object 來測試,不過總有要實際測試真實連線的時候。這時可以使用以下的 snippet:

Comments

最近在玩 go,編輯器主要是使用 vim 搭配 gocode。我習慣用 pathogen.vim 來管理我的 vim 套件,不過 go 官方附的 vim syntax plugin 和 gocode 提供的 autocompletion plugin 目錄結構都無法直接當成 git submodule 引入我的 vim 設定中。

由於我個人潔癖作祟,不想再用 copy 的方式來管理我的 vim plugins,所以我決定自己把這兩份 plugin 抽出來獨立成各自的 git repositories,就可以當成 git submodule 引用了。

Read on →
Comments

cover

⋯⋯《身體調校聖經》所提供的,是對人類重建身體的全新探索,全盤收錄幾百位優異運動員、幾十位醫師,以及幾千小時讓人目瞪口呆的個人實驗智慧;從奧林匹克訓練中心到地下實驗室,從矽谷到南非,作者提摩西.費里斯念茲在茲的改變人生問題是:

  對所有關於身體的事情,如何以最小的改變來創造最大的成果?⋯⋯

前陣子很紅的《身體調校聖經》,看了許多人的心得和推薦以後覺得很有意思,也買了一本。

我的故事很平常,跟大多數人一樣,入伍時有著健康的好身材,退伍就業沒多久就因為天天坐在電腦前缺乏運動而發胖。從 70 kg 暴增到 90 kg。一直都有要減重的念頭,卻遲遲沒有實行。直到看了這本書。

Read on →