轉折,然後向上

活著 如果只是不甘寂靜的喧囂 那就咆哮吧 讓每個人都能聽的到 -逆鱗,周杰倫

2011-2012 回顧與展望。

帶妹妹去玩水(女友拍的這張真好)

ref: 去年的展望先來看一下數據: anobii上的書籍統計:

年份 書籍量 總頁數
2011 18 6269
2011 71 27441

論文閱讀:

只能用一個慘字來形容今年的狀況了。我其實到下半年才突然警覺今年好像沒看什麼書,仔細回想…。最大的罪魁禍首就是…  iphone !!。  因為有iphone之後我在火車上睡醒後就懶得從包包拿書本或是論文出來看,直接拿iphone出來掃rss了。下半年回神後才一路從公司拿司拿著書本離開….。下面是有寫心得的文章…。

  1. The Design of Implicit Interactions: Making Interactive Systems Less Obnoxious
  2. Aesthetic Interaction — A Pragmatist’s Aesthetics of Interactive Systems

重大事件

  • 一位國中同學被殺害
  • 一位大學同學因病身逝
  • 離開組織,前往互動的領域。

回顧

去年的目標幾乎都沒達到,可以說是目標是定來打破的(默…)。 今年對我來說是非常慘烈的一年。以往要面對的問題都是比較心靈層面的問題(ex: 要考試了,書還沒念怎麼辦。東西還沒做完怎麼辦),但今天下半年開始面對更底層的問題。 一切要從國防役結束後離開組織開始說起。

離開組織後從組織裡面接了一個案子,但是接口的課長把時程壓的很緊。原本預估要一個月的開發時間,但課長壓到兩個禮拜。那時候還不太會處理這種問題(畢竟是認識的)。導致就開始過著每天九點多起床,晚上又弄到三點半到四點的生活。 後來還是花了一個月….。壓成這樣的結果就是身體出了點狀況。接下來的一到兩個月每天上班回來就只想睡覺(但其實還是多少有寫一點東西,只是精神狀況也不好,效率很差),怎麼睡都睡不飽。很多其他的案子只好一直擱著。

這樣無異是坐吃山空。 嚴格說起來應該是我的反應太慢,早在九月底的時候計算一下金流就可以預測到這樣的狀況,然後趕快把一些小案子給結掉就可以避免這樣的情形(至少可以避免掉後來的精神壓力),畢竟結案又不是買東西,東西交出去馬上就可以銀貨兩訖,還是要等待驗收跟報帳的流程。不過這其實有點事後諸葛,就算我知道了,我的身體也難以反應。 十月底到十一月的時候,真的是最焦慮的時候。腦袋一空下來想到的就是這件事情。真的是每天都押著自己快一點快一點。也跟老師告假,非得先從學業上退了下來了。這一陣子我真的可以體會經營不善的公司老闆的心情(當然焦慮的等級還是有差)。畢竟每天門打開就會有花費啊! 不過我還算幸運,也真的感謝十方大德即時支援,靠著後來一小筆一小筆的小案子的入帳稱過了這個時期。

一路上都遇到很多貴人跟天使,謝謝各位了。

展望

新年最大的希望就是可以在工作、興趣與研究中找到一個平衡。也希望所有的人都可以平平安安,健健康康,快快樂樂。

  1. 家人跟朋友都平安健康
  2. 在工作上希望可以更加熟悉processing與硬體方面的技巧。
  3. 實作自動化測試跟持續性整合伺服器。
  4. 在學業跟研究上希望可以發表至少一篇論文
  5. 可以玩到星海 II  (T_T )

新年快樂了 !!

[vim] powerline

前幾天看到這個 vim的plugin真的覺得好棒!!  。

他的安裝有點小麻煩,因為需要修改一下字型檔案(主要是塞了還是更換了一些符號進去)。如果沒有正確的置換字型,會像是下圖這樣:

不過如果你這步驟有問題也可以使用unicode的模式來模擬,也是堪用了。安裝上建議搭配 Pathogen/Vundle 來安裝。README上是說mac下有點問題,不過github的issue 上有人測試出來了,我也試過可以正常安裝。

網路上也有人把patch過的字型放出來了   https://gist.github.com/1595572  如果你不介意字型的話。

底下是patch font的步驟。

  1.  從字體庫中複製字型-假設叫做 A  放到   bundle/vim-powerline/powerline
  2. fontforge -script fontpatcher MyFontFile.ttf
  3. 把修改過的字型放回去,mac上要放到 /Users/xxxx/Library/Fonts  底下
  4. 更改iterm的字型到   A for PowerLine 即可

#

近況

雖然應該是沒啥時間,但還是想寫些東西。最近不是很順利,學業上呢就甭題了,被生存拖累得很厲害。工作上呢,本來要寫一個給三邊長然後可以繪製出展開圖的程式。

但是一直卡在px->cm 跟計算的誤差問題,約莫可以差到 1/10 。看起來是還好啦 但是這是在公分的計算部分就差到這樣了,乘以轉換的比率就差更多了。

後來因為實在花太久了,合作的夥伴就自己用  flash寫了一個,還蠻準的。我百思不得其解。 我把程式打開來看,啊 直接在flash裡面設定單位是公分,且我是用cm當作單位,但這隻程式是用 mm  …。浮點數的運算本來就比較容易有誤差。

其實蠻洩氣的,我居然一開始沒想到,而且也拖到人家的工作時間(一方面我想是我不喜歡flash下意識就略過了吧  )。有時候想一想就是自己做事還是要找些聰明的方法…。在多媒體互動這塊還是很新手 ….   加油吧!!

三十而立

古人說三十而立,放到當今也相當適合。 有點存款,身體也足以遠行去看看這個世界,好像真的站起來了一樣。有些有小朋友的,則好似走到岔路,開始過著另外一種截然不同的生活。

但是有些人卻先躺著了。

上禮拜深夜收到大學同學的來信,信中提到一位同學已經走了。不禁令人錯愕。在這個年紀真的是太早了點。但是人生的許多意外,我們好像也沒有什麼說不要的權利。國中的時候很喜歡看林清玄的書,但對於所謂的『活在當下』一直都沒有真正的體悟。有些東西果然真的要有一些經歷才行啊 !

很難想像也快要步入「很久沒有聯絡,一有消息不是結婚就是遠行」的年紀了。

相逢即是有緣。一路好走。

[redmine ]透過 rest api 新增issue的時候給予作者id

組織裡面的學弟想要撰寫一個比較友善的前端給使用者來回報問題,然後系統會自動塞入我們的專案管理系統redmine中。不過目前的版本並沒有此一功能,除非先把每個使用者的api key給撈出來,然後在給予不同的api key ,可是這樣比較奇怪啦…。

所以我就寫了一個小小的plugin 可以偵測是否有要更換author  ,這個plugin會在save前把author置換掉。

不過這個程式寫的比較簡略,他沒有去檢查如果沒這個使用者的時候怎麼辦就是了,不過應該可以用了。他需要放兩個地方,gitst裡面都有寫了~~~~~

source: https://gist.github.com/1232512

ref:  http://www.redmine.org/projects/redmine/wiki/Hooks  (範例似乎有誤…)

processing 與 GUI 的一些想法

在寫 processing的時候 ,常常會遇到需要調整參數來影響顯示出來的結果。一般來說可能的作法有幾種:

  1. 寫在程式裡面,改變參數需要重新執行。(作法很簡單但很麻煩)
  2. 寫在外部檔案裡面,每次draw 時去更新。(每次都讀檔,有點浪費)
  3. 利用 gui lib ex : p5controller  (ui程式都混在一起,而且 p5controller那邊複雜一點的 widget 程式很大一包。很不好看)
  4. 使用 swing, or awt (官網上說,不建議使用,因為其更新週期之類的不太一樣。我也不太喜歡用,有點麻煩。)

這幾種作法都有其缺點,而且主要的壞處就是把gui的邏輯給混進來了。小的不太喜愛。

我後來想了一下好像還有幾種可能的衍生方式:

5. 透過 socket server 喬接。(不過要額外寫一隻 server 跟gui介面….)

6. 起另外一隻 thread 去定期撈file。 (中庸多了,不錯)

 

5,6的方式有個好處是把設定介面給割開了,而且可以用其他方式實作,不一定要用java的介面,也可以是網頁介面,當然這樣就不能用applet的方式跑了。

 

後來想了想我選擇了 6.的方式,但是希望之後逐步改進,例如使用yml當做設定檔,那麼就會有一個可以讀yml就產生控制介面的程式。這樣只要痛一次就好了!!

tmuxinator

前一陣子逛到 tmux 的官網,看到一個tmuxinator連結。 好奇之下點進去用,真的是驚為天人!!

簡單的說就是一個管理tmux session的工具。想像一下下面的情境:

 開發rails 專案

我們的 tmux環境可能會是:

  1. session 1:  vim
  2. session 2 :  rails s
  3. session 3:  git(pull)

這時候每次重開機(或是當機)就很麻煩,要全部手動來一次。有了 tmuxinator 你再也不用怕了!!

1. 安裝

gem i tmuxinator

2. 建立一個專案的設定檔

tmuxinator new project_name

他會建立一個 ~/.tmuxinator/project_name.yml 設定檔,不過呢,我裝的版本好像有點問題沒有自己建立 ~/.tmuxinator ,阿反正就自己開一下。然後有時候editor會有點問題,那就自己 vim  ~/.tmuxinator/project_name.yml 吧!!

裡面的設定大概長這樣

# ~/.tmuxinator/vote.yml # you can make as many tabs as you wish... project_name:  abc project_root: ~/projects/abc/src rvm: 1.9.2 pre: tabs: - editor: layout: main-vertical panes: - vim -S session.vim - #empty, will just run plain bash - server: rails s - logs: tail -f log/development.log - console: rails c

(格式跑掉了,請去官網看好勒~~)

這設定其實很簡單。pre: 後面接的是預執行的指令:(ex:如果是php的話可能會是啟動apache server)

再來tabs底下第一個session 的名字叫做 editor, 然後有分割視窗(!!), 第一個分割視窗透過vim 的session記錄功能打開之前的檔案。第二個分割視窗則是留一個空白的shell

第二個session的名字叫做server,執行  rails s 指令叫起伺服器  …..

——-

要啟動專案只要鍵入   mux start project_name 即可。剩下的請看官網囉!!

超讚的

[dp]週報 – 從 delicious 跳船到 diigo

經過強者我學弟的某日的偶然一提:

 

後來又再去試用一下 diigo,一試用之下驚為天人!! 真的覺得 delicious 太不長進了。

diigo有幾點功能很棒:

  1. 很方便使用的群組功能
  2. 也有跟 firefox一樣的toolbar
  3. iphone的 app(可以下載網頁離線閱讀,真的很棒)。
  4. 可以自動同步到 delicious

 

所以決定跳船了!!

 

links for 2011-09-08

links for 2011-09-07

Follow

Get every new post delivered to your Inbox.