2009年9月30日 星期三

[Linux] 安裝 Rainlendar 免費好用的行事曆 @ Ubuntu 9.04


圖片來源:Rainlendar 網站


Rainlendar 算是很不錯的行事曆軟體,過去我都在 Windows 上使用,這幾年它已分成免費版跟專業版,整體上我覺得免費就夠用了



  1. 下載 Rainlendar :http://www.rainlendar.net/ ,現在已出到 2.6 版

  2. 安裝就使用 dep 的方式,有視窗介面應該不難

  3. 下載中文語言包:Rainlendar Languages

  4. 解開後會有 zh_TW 的目錄,將它移到 /usr/share/rainlendar2/locale 即可

    •  # sudo mv zh_TW /usr/share/rainlendar2/locale

    • 接著只需在行事曆上點右鍵選 Refresh 後,即可在 Options 中設定顯示語言




2009年9月29日 星期二

[Unix] 使用 Tarball 安裝 svn client - Subversion @ FreeBSD

難得碰到某台工作站沒 svn 可用,又沒管理者權限,就來用 Tarball 安裝一下吧。


比較特別之處,過程中若該台工作站也沒安裝 SQLite 的話,必需到 SQLite 官網下載程式碼囉!



  1. http://subversion.tigris.org/ 下載最新的 svn client 原始碼 : subversion-1.6.5.tar.bz2

  2. 若工作站沒 SQLite 則到 http://www.sqlite.org/ 下載 : sqlite-amalgamation-3_6_18.zip

  3. 開始編譯及安裝

    • # tar -xvf subversion-1.6.5.tar.bz2

    • # cd subversion-1.6.5

    • 若不確定已安裝 SQLite ,那就照做下面的指令囉,若已安裝則直接跳到 configure 啦


      • # mkdir sqlite-amalgamation

      • # cd sqlite-amalgamation

      • # wget 'http://www.sqlite.org/sqlite-amalgamation-3_6_18.zip'

      • # unzip sqlite-amalgamation-3_6_18.zip

      • # cd ..



    • # ./configure --prefix=/home/ID/bin --with-ssl

    • # make && make install




2010/01/12 更新!原來上述的安裝過程不算是 tarball 安裝,因為環境並不是乾淨的,以下是安裝在 $HOME/tarball 的方式,僅供參考



  • apr-1.3.9.tar.gz @ http://apr.apache.org/

    • # ./configure --prefix=$HOME/tarball



  • apr-util-1.3.9.tar.gz @ http://apr.apache.org/

    • # ./configure --prefix=$HOME/tarball --with-apr=$HOME/tarball



  • sqlite-amalgamation-3.6.22.tar.gz @ http://www.sqlite.org/

    • # ./configure --prefix=$HOME/tarball --enable-threadsafe



  • subversion-1.6.6.tar.gz @ http://subversion.tigris.org/

    • # ./configure --prefix=$HOME/tarball --with-apr=$HOME/tarball/bin --with-apr-util=$HOME/tarball/bin --with-sqlite=$HOME/tarball --with-ssl --enable-all-static




2009年9月28日 星期一

Facebook API Example - 第一次使用、範例和教學筆記

沒想到要寫寫 Facebook API 啦!我原先以為是 Facebook 會提供一個工作站讓使用者上傳程式碼去運行,結果做這件事的還得自行找一台機器啦,但這樣也比較合情合理,畢竟電腦運算就是要耗 CPU 資源,就是要耗電。


之所以要紀錄這些,目的是給自己一個筆記,雖然官方的教學已經夠清楚,但沒有中文就是不友善啦。



  1. 首先,必須要有一個 Facebook 的帳號,在此就不多講,接著登入後,連結至 Facebook | 開發人員 ,並且點選 [Set Up New Application]

  2. 輸入應用程式的名稱,例如:Example,並且觀看條款後勾選同意。

  3. 系統會為你的應用程式產生獨一無二的資訊,如 Key 等,接著回到[我的應用程式]頁面,並且看到剛剛新增的"Example"資訊,最下方有個項目是[Sample Code],即可點選"example code"可觀看範例程式和簡單安裝的過程
    教學,此範例程式已經是可以運行的程式碼,並且已將應用程式的資訊(Key)也填寫上去了。

  4. 找一台可以用的工作站,必須支援 PHP 程式語言跟 Web Service

  5. 在Web Service 的自己目錄下(Ex:/home/ID/WWW,/home/ID/
    public_html),新增 facebook 相關程式


  6. 新增 index.php 並且加入資訊

    • <?php
      // Copyright 2007 Facebook Corp.  All Rights Reserved.
      //
      // Application: Example
      // File: 'index.php'
      //   This is a sample skeleton for your application.
      //

      require_once
      'facebook.php';

      $appapikey
      = 'your_appapikey';
      $appsecret
      = 'your_appsecret';
      $facebook
      = new Facebook($appapikey, $appsecret);
      $user_id
      = $facebook->require_login();

      // Greet the currently logged-in user!
      echo
      "<p>Hello, <fb:name uid=\"$user_id\" useyou=\"false\" />!</p>";

      // Print out at most 25 of the logged-in user's friends,
      // using the friends.get API method
      echo
      "<p>Friends:";
      $friends
      = $facebook->api_client->friends_get();
      $friends
      = array_slice($friends, 0, 25);
      foreach ($friends as $friend) {
        echo
      "<br>$friend";
      }
      echo
      "</p>";
      ?>

    • 此為官方範例,結果是印出使用者 25 位朋友



  7. 最後的設定

    • 連至 Facebook | 開發人員 並且點選應用程式名稱為 "Example" 的 "編輯設定"

    • 切換至[畫布]頁面,並且至少設定以下資訊

      • 畫布頁面網址

        • http://apps.facebook.com/your_app_name/

        • 這是 Facebook 使用者連到你的應用程式的 link 位置



      • Canvas Callback URL

        • http://Your_Web_Service/facebook_example/

        • 這是你擺放運行程式碼的機器,至少提供 Web Service 跟運行 PHP 的能力







  8. 測試連結,請先登入 Facebook,接著連到 http://apps.facebook.com/your_app_name/
    位置,接著像使用其他程式服務一般,蹦出同意訊息,點選過後,就會呈現出運行結果,此例是列出使用者的名字,並且列出 25 位朋友的 ID


如此一來,就完成使用 Facebook API Example 啦,這支算是簡單的程式,剩下的就是如何善用 Facebook 的社群資訊和力量囉。


相關文章



Google Map API Example - 將 GPS 經緯度座標轉換成住址的程式

因為一些工作需要,手上拿得到 GPS 位置,但要設法轉成住址位置(Address)。花了點時間在網路看,好像沒有很現成的服務,畢竟太少人會如此使用,大部份都是用住址找地圖吧!


最後,當然還是要摸摸 Google Map API 啦,丟經緯度給它,它就是會幫你搞定!真是讚,記一下用法





  1. 首先,使用 Google API 一樣要去申請 API Key 才能用,請連結 Sign Up for the Google Maps API 申請,僅需填寫要用服務的位置,例如自己的部落格位置 http://changyy.pixnet.net/ 。之後就會蹦出一個頁面,上頭會告訴你 Key 是什麼,在使用時,要記得輸入啊

    • <script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&key=_YOUR_API_KEY_"></script>



  2. 開始使用:

    • 加了上述 Javascript 後,就可以開始使用 Google Map API 囉

    • 假設已知某點的經緯度:25.023537, 121.548010地址:

    • 接著使用以下的 Code 即可取得該點的Address位置


      • function GPS_GetAddress( response )
        {
                alert( response.Placemark[0].address );
        }

        var GPSDecoder = new GClientGeocoder();

        var location_point =  '[25.023537,121.548010地址:]';
        location_point = eval( location_point );
        GPSDecoder.getLocations( new GLatLng( location_point[0] , location_point[1]  ) , GPS_GetAddress );



    • 如此一來,就會蹦出一訊息框框顯示住址啦!此例是某科技公司的位置 XD



  3. Demo

    • 輸入經緯度:,




2009年9月25日 星期五

設置 Ubuntu 工作環境

一年前,第一次試用 Ubuntu 8.10 作業系統,當時因為螢幕老舊以及顯示卡驅動程式的問題,所以用不到一星期就撤掉它了,沒想到現在工作用的作業系統就是 Ubuntu !因為待的部門主管不建議安裝 Windows 系統,因此,正式把自己置身於 Linux 環境,慶幸自己至少安裝過 Ubuntu ,再加一點點 FreeBSD 底子,還可以撐過去啦!


這次是從 Ubuntu 7.10 安裝,接著慢慢地升級,經過了 8.04 、8.10 到現在的 9.04 ,再幾天過後,說不定又得更新到 9.10 版啦!這次在設置環境中,一開始因為有點趕著要申請停車證的問題,弄得有點心煩,而公司系統的申請表,有些重要網頁完全只能用 IE 開,更讓我對不能安裝 Windows 有點反感。所幸地,一切都過去了,經過兩天適應,該申請的東西也都搞定了,開始用 VMWare 安裝其他所需的系統,如 FreeBSD 7.2 跟 Windows XP 啦,相信以後表單問題就可以靠 VMWare 裡的 XP 解決吧。順手記一下這次安裝 Ubuntu 的筆記。



  1. 更新系統,老樣子,[系統]->[管理]->[更新管理員]。

    • 用來更新軟體跟系統

    • 總覺得網路應該要很快啊?但每一次系統版本升級都花了約 1 小時在下載東西。



  2. 安裝軟體

    • 除了內建的安裝方式,這次我試了 Lazybuntu !它是整合好的各類套件下載與安裝的管理軟體,首先我把它所有預設選取的套件都清掉,然後再點選上頭的中文支援的部分,至少這樣我可以正常使用新酷音啦!系統選單的也被完整翻譯成中文囉!據說是因為安裝光碟只有一片,有些東西並沒完全納入,導致並沒有完全中文化。

    • 其實,只要能輸入中文,這樣至少就夠用囉!原先我從 7.10 並沒有安裝新酷音,讓我挺不方便的。我覺得新酷音算是最接近 Windows 上用的注音輸入法,其他有的選字非常怪,也就是常用的沒有在前面,反而一些很少用的字都在前面。

    • 另外,若找到的軟體只有 RPM 的安裝方式,並需透過 alien 的方式安裝

      • # sudo apt-get install alien

      • # sudo alien -k file.rpm

      • 這樣它就會把 file.rpm 轉換成 *.dep ,就可以安裝啦





  3. 工作環境

    • 新增內建軟體捷徑至工作列上

      • CPU 使用率

        • 提醒自己目前電腦狀態



      • 鎖定螢幕

        • 因為還沒記住快速鍵,有這個至少離開座位時可以很快速地鎖住螢幕。



      • 終端機

        • 點一下就開啟較方便,可以再設定快速鍵,只是我還沒想到哪個比較好,以前在 Windows 上習慣用[視窗鍵] + [R] 來執行,但 Ubuntu 這個組合鍵有其他意義,Ubuntu 使用 [Alt] + [F2] 來執行。



      • 筆記本

        • 用來筆記自己學動的東西,以前在 Windows 上一樣習慣用 [視窗鍵] + [R] 輸入 notepad 來呼叫,現在則是擺在工具列上,至少滑鼠點一下就能蹦出來筆記東西。





    • 休閒軟體

      • MSN Messenger : emesene


        • # sudo apt-get install emesene

        • 很貼近 Windows 上的 MSN Messenger,原先只是內建的無法更新輸入法才換成這套,換了才發現這套挺好用



      • Skype

        • 使用內建的套件管理或新添套件的方式安裝的。



      • 線上免費廣播軟體 : Hinedo

        • 目前還未成功,有安裝成功但執行時會自行關掉,看不到使用介面

        • 經過一連串的測試,發現還是不能運作,勉強先用 cmd line 播放囉

          • # cd ~/.config/hinedo/
            # less menu ,就能看到電台列表囉
            # ./update_menu ,則是更新電台
            # ./play xxx ,後頭的 xxx 就是電台代號,這樣運行下去至少可以聽廣播啦





      • Putty

        • 雖然可以不用,但既然是視窗介面,那就用一下吧

          • # sudo apt-get install putty





      • Flash 無法正確顯示中文 (亂碼)


        • # cd /etc/fonts/conf.d

        • # sudo mv 49-sansserif.conf 49-sansserif.conf.bak







  4. 一些好用的快速鍵

    • 切換 Workspace

      • Ctrl + Alt + Right/Left Arrow



    • 將目前的視窗移到另一個 Workspace

      • Ctrl + Alt + Shift + Right/Left Arrow



    • 快速開啟已點選的檔案之內容屬性

      • 點選 + Alt + Enter



    • 鎖住螢幕

      • Ctrl + Alt + l



    • 顯示桌面

      • Ctrl + Alt + d






差不多以上這些東西,剩下的會不定期地更新。


2009年9月18日 星期五

研發替代役 - 軍事基礎訓練之受訓記

清晨,在中隊集合場,可眺望山腳下烏日鄉迷霧的景色,夜晚,則可看到烏日鄉閃爍的燈景,在紀律嚴謹的部隊中,莫名形成一種偷閒的心境。經過三週的基本軍事訓練、數堂專業講座,在結訓完後,正式新增三種身份:公司成員、研發人員和替代役役男。


研發替代役,別於以前的國防役,為了符合憲法法令又不用動憲法,採用的是替代役役男身份,結訓時並領有一張研發替代役役男身分證。


事前準備,除了那張日常生活必需品清單,整體上在軍中大概會花到的額外金錢:



  • 剪髮,一次 20 元,共有兩次,40 元

  • 洗衣,大概 100 元可搞定

  • 搭車,搭到彰化火車站 70 元,台中跟高鐵站 60 元

  • 拍照,團體照一張最低消費 150 元


日常生活必需品清單中,建議衛生紙可在成功嶺的合作社購買,進成功嶺會帶去合作社一次,也是唯一一次吧,買一包平版跟一包抽取式的即可,平板用於檢查,抽取式的才是真正使用的,而到成功嶺再買衛生紙的好處,可讓衛生紙比較好看,畢竟是用在檢查的,另外,可以在多買兩件內衣,若連續兩天晨跑,可以換來穿,一件約一百。因此,金錢上大概七百元差不多可搞定,剩下的是要回家的車錢。強烈建議購買的額外品:涼性爽身粉,請買嬌娃牌(不是嬌生牌),若找不到也可以考慮買優生牌,因為優生是請嬌娃代工的。據說在光南買得到嬌娃牌,我是在全聯買優生牌。千萬不要買嬌生牌,因為它僅是爽身粉,不涼。


回想起來,第一天搭市公所專車,上車沒多久,辦事人員就強烈建議戴上口罩,車子輾轉到了古坑,最後在斗南火車站下車幾分鐘,收了某縣長送的 40 元電話卡,聽專員講講幾句話,便又搭車往目的地。覺得市公所送的小皮夾還滿夠用的,擺上幾張鈔票、證件,十足符合當兵所要帶的東西。


到成功嶺後,發現場景的白矮牆高椰子樹,曾經做夢夢到過,挺奇妙的。隨後則等待同區隊伍,拿一些兵役資料、體檢表,先做了簡單的體檢,披上不知幾萬人披過的藍袍,檢查結束後就開始剃髮。直到這一刻,比較有感覺像似被打回原形--猴子。接著,在餐廳吃飯、回隊上宿舍收發東西、處理瑣事,最後再換上運動裝,算是正式開始吧。運動裝只是短袖內衣、運動褲和運動鞋,說真的還算清涼。


在這之前,我覺得自己是作息規律的,應該對於當兵的事沒什麼好不適應的,但事實證明,不是生活規律就夠了,因為當兵的生活時間很趕,一開始最不適應,要處理的事特別多,而帶隊的隊長有團體時間的壓力,就像趕鴨子般地,慶幸的,在最後一個禮拜,經過反應會後,隊長若有空時,會告訴大家特定時間,例如待會幾點幾分要集合,讓大家清楚知道時間間隔,這大概稱得上給大夥一丁點的對時間掌控吧。


說到職位部分,我稍微觀察到,假使某團體的團長是 A 先生,次要一級的管理者是 B 先生,那整體上訓練團體的會是 B 先生而非 A 先生。這是我在軍中發現的現象。依權位的高低,依序:



  1. 署長

  2. 副署長

  3. 執行秘書

  4. 副執行秘書

  5. 大隊長

  6. 副大隊長

  7. 中隊長

  8. 副中隊長

  9. 區隊長

  10. 分對長


以一個中隊來說,整體上訓練團體的是區隊長跟分隊長。若以整個替代役訓練營,在開訓和結訓典禮上,就會是中隊長來排演,但頭頭應該稱得上是大隊長。我覺得這樣的分配跟我想像中不一樣,我以為一個團體的頭頭會是常常操練團體的,算是新的體會。至於軍隊中的訓練,秉持著人是習慣性動作,做不好就不斷重做,如此而已,但也滿有效的。


在成功嶺上,替代役跟研發替代役共 4 大隊,每一大隊有 4 中隊,每一個中隊約 180 人。一個中隊又會以 16 人來分隊,所以約 11 分隊。研發替代役會佔一個大隊,每梯大概約七百多人(180 x 4)。


除了當兵常唸的經外,我覺得額外的收穫就屬人啦,以下是我印象中深刻的人物:



  • 中隊長

    • 第一次要站哨時,正好在交接時,碰到中隊長,跟我們稍微閒聊,發現他才七十一年次,他說他每天一兩點睡,早上一樣跟我們去晨跑,要我們顧好身體。沒想到年紀輕輕就能有所為,開訓典禮就是由他訓練的,我覺得他做得很好,賞罰分明,不像結訓典禮的中隊長,純粹只會一直兇人。這也讓我有所思考,在這個年紀上是不是該有明確的目標去達成。



  • 區隊長

    • 一個中隊,區隊長共有三人在輪,我發現有一位較兇,一位中等,另一位較和藹。有一次我們隊的中隊長在公開場合跟大家說,一個隊伍裡勢必有黑臉白臉,我覺得很貼切,而這些區隊長,在夜晚站哨時,卸下職務時,就很跟我們很切近。



  • 同袍

    • 由於研發都是碩士以上,所以,並不難相處。但一個團體中,還是可以看到有些人很容易打入團體,像睡我旁邊的就用一罐涼膏跟大家打成一片,並非刻意,我覺得挺厲害的,其他的則是有公差的,可投飲料時跟大家分享,也挺不賴。



  • 消防講座

    • 這是週末的兩堂課,這位公務員在課後跟大家分享人生規劃,講了不少自己的故事,也分析股票給我們參考,雖然我對股票的態度還是一樣,但也讓我學習到一些新東西。記得他說過,第一次幫人做 CPR 時,沒救活,十年後在夢中還是會一直救那位,有一種難述的心情,但至少我看到他現在很快樂,到處講講課程,分享自己的故事。或許他閒聊著薪資收入,但我發現他的另一項收入,其實是助人。讓我想到自己的處境,儘管薪資沒有很耀眼,但我擁有技術環境及更富有的時間,應該有更好的目標等著我探索的!




除此之外,同袍中恰好碰到兩位 33 屆的高中學弟,其中一位還跟我閒聊 32 屆有哪三大美女,說真的我還不知道。碰到高中學弟也感到很新鮮,偶爾閒聊幾句都挺不錯,另外,他們恰好也唸過新竹大學,隨便一扯,又扯到同實驗室的大學同學,可真是有緣份。


除了以上一些體驗外,最多的收穫是透過講座課程,以下是一些順手記下的資訊,其餘如役政署單位來的,我就沒記了。主體上落在管理階層的心態培訓,以及志願服務的概念,請了兩位中正大學的教授來分享經驗,大概是社工系的。除此之外,還有一些醫學資訊,讓我回想起修近代生物的點滴。


講師資料



  • 想贏,去贏

    • 呂翔

    • 舒爽生物科技策略長



  • 經貿全球化之趨勢與挑戰

    • 林灼榮

    • 東海大學國際貿易



  • 知識管理

    • 陳聰仁

    • 華立企業股份有限公司



  • 客戶機密維護

    • 楊惠芬



  • 智慧財產權法概論

    • 黃大洲



  • 科技人文新思維

    • 陳明惠

    • 中興大學科技管理研究所



  • 立竿見影的管理模式

    • 莊銘國

    • 健生股份有限公司



  • 認識勞動基準法

    • 陳月娥

    • 大葉大學



  • 職業道德與專業倫理, 改造自我迎向未來

    • 呂子瑜



  • 職場的健康管理

    • 楊莛歡