2014年3月25日 星期二

讓 vim 支援 multiple cscope DB

之前發現blog,有幾篇文章是比較熱門的,尤其是這篇(用 vim 有效閱讀 Android framework 程式碼),被點閱的次數還不少。不過看了之前寫的plugin,還是覺得寫得很差,都是可以動就好。

所以前幾天有點時間,就把部分拿來重寫,大致上已經修改完畢。大家可以到multi-cscope-db(github去看看。

安裝的方式跟以往相同,不過建議用 vundle 來管理你的 vim plugin。
我把 goproj.sh 的部分,移動到 vim script 裡面。所以不需這隻 shell。以後只需要在 vim 的 command line 打入

:CSBuild

就可以建立新的 DB 或是更新 DB 內容,相信這樣應該會比較好用些。

目前預設支援:

*.aidl
*.cc
*.h
*.c
*.cpp
*.java
*.py

當加上越多副檔名支援,更新或是新建  DB 的時間就會花比較多。

Fork and enjoy it! :)
歡迎討論!


2014年2月23日 星期日

Docopt - 比 argparse 更方便的 command line parser

其實不管用任何語言 c or python 在寫 console program 的時候,都會遇到一個討厭但是你又不得不做的東西,那就是 arguments parsing,就是輸入一堆參數,然後對應到不同的功能。

在 python 裡面其實已經有些 build-in module 可以用 ( argparse ),不過說真的,這 module 不得我心,寫起來覺得累贅,有點麻煩。改個小地方就要重寫一部分,加上一個參數,就會增加不少行數。

呼!這樣我寫完就下班了,人生苦短啊!

所以我就開始找相關的 module,竟然有個很方便的 module - docopt (PyCon UK 2012)。

不廢話,看個影片:




很美吧!簡潔有力,人生是彩色的啊!

作者很厲害把註解直接拿來做 parser 所需要的 patten,順便拿來當 help file。然後給你個dictionary 然後就打完收工。

這樣就完了嘛?還沒,不用急著開 terminal,現在是什麼時代,一定有提供web的試用版本(話說正式版也是免費的)。

http://try.docopt.org/

Installation:


GitHub: https://github.com/docopt/docopt

直接用 pip 來安裝

(env) $ pip install docopt 

其實不要以為只有 python 有這些東西,其實 Ruby, PHP, Lua, CoffeeScript 都已經有移植的版本!

一年多就有四個移植的版本,真是有趣啊!
這也就是 opensource 的本質與好處吧!

歡迎大家互相交流! :)








About 2014

新的年,很多東西改變了,環境也改變了,不變的是希望成長的心態,期望還可以在進步。

這Blog也荒廢很久,沒有在更新。其實去年兩年一直有在想要找時間重新來寫些東西,不過就是沒有個起頭,也是因為身邊很多事情需要自己去處理,所以也沒有太多的精力來寫文章。

一直到了最近,開始覺得自己好像退步,很多東西變得不夠敏銳,似乎有老化的傾向。所以是該準備來重新開始寫一些文章,記錄自己看到的事情與觀點。

這兩年主要的火力都放在cloud的部份去發展,所以python變成我的主力語言,雖然偶爾也會寫其他的語言,不過python的強大,很難讓我在去適應(應該是懶得關係)其他的語言。 
期望自己在今年還是能夠些比較深入的文章,不是那邊LDS。
看看可不可以介紹些好用的python module與開發上的想法。


2013年7月7日 星期日

這兩年

這兩年經歷了很多事情:
工作:
1. 嘗試自己創業接案
2. 加入一家Startup
3. 搞倒了Startup,換到一家大一些的公司去。

私人:
1.  一年內整理了三間房子,分屬不同的處理方式(很累啊!)
  • 大型工程:打掉重練,自己做統包
  • 中型工程:全部自己來
  • 小工程:請人來做
2. 手工戒指與國外求婚
3. 準備結婚的事情
4. 家人的健康問題

其實還有好多事情,已經沒辦法馬上記憶起來,不過我真的過的很充實啊!只是口袋沒有充實的感覺。。。

突然覺得長大好可怕,肩膀上的東西慢慢開始不同了。
不過日子還是要過,加油吧!

我應該要來重新開始寫blog才對...

2012年12月27日 星期四

轉角下一站

2012這年很有趣,認識了很多不一樣的人。
今年的聖誕節,應該是我很難忘的聖誕節,不過也不怎麼好過,但是還是要撐過去!加油!

只能期待2013開始,會是一個新的開始。

開始找工作!:)

2012年12月16日 星期日

2011年6月8日 星期三

Android 讓你的桌機飛起來?


稍早看到這個新聞,其實也覺得蠻有趣的,有趣到我想不通啊!這是要遠端來超頻嘛?不過如果是遠端監控那就OK。就是關於透過Android app 來讓你的桌機超頻, MSI 在 Computext 2011上所展示的 Android app。下面有參考的影片。



其實在台灣對於 CPU 的超頻是已經是見怪不怪,以前認為需要將硬體速度撐到極限,才能有最好的工作效率。不過當以軟體的角度來思考的時候,其實不然。硬體應該提供一個穩定的環境,然後透過人去操作軟體來達到工作的產出。而有效率的最大關鍵在於人,不在於硬體

當你軟體的使用模式不同,你的產出效率也會不同。
當你一直在閒晃網頁,即使給你 32 core cpu,你的產出可能比用 tablet 來工作的產出少。

而當一個開發員 Developer,你應該考量如何使用軟體或是你該產生些什麼樣的工具軟體,來減少你的工作量。讓你可以專注在那些你應該花時間的東西上面,而不是每天都在點滑鼠,然後產生些重複的東西。

與其追求硬體效能的極致,不如思考如何使用軟體,進而創造軟體。
在有限制的硬體效能下,才能看到軟體如何發揮他的價值!


只是透過手機去超頻?不知道哪些人會這樣用啊!
倒不如可以透過手機超頻然後可以炸掉電腦,這樣應該會有特別的客戶會需要!
不過既然是 Show ,當然就是什麼死人骨頭都要搬出來客戶看,才有機會爭取到訂單啊!