i heared about the web site( http://www.odiogo.com/ ) from my friend's blog( http://chung-kai.blogspot.com/ ). he use it to convert article to human voice and audiences can read the words and hear the english pronunciation of words at the same time.
nice tool~ i wish have one.
轉移公告
計劃把 http://blog.hoamon.info/ 文章全部轉移至 http://www.hoamon.info/blog/ 這裡,而本 Blogger 站台的文章近 500 篇,我預計在 2014-12-31 前移轉完畢,完成後 http://blog.hoamon.info/ 將只作代轉服務,一律把舊連結如 http://blog.hoamon.info/index.html 轉成 http://www.hoamon.info/blog/index.html ,敬請舊雨新知互相走告。
何岳峰 敬上
2007年11月27日 星期二
2007年11月23日 星期五
用 VirtualBox 讓 Windows Server 偷偷(背景執行)跑在 Linux Server 上
自從接觸到 VirtualBox 後,一直想要把它的 Guest OS 當成 Host OS 中的服務來使用,因為這樣子,我就可以在 Linux Server 中再跑一個 Windows Server 。會這麼作的原因是要使用 MS Office API 來出 .doc 檔。
那麼該如何在 Linux Server 中,令它在一啟動時,即啟動 Windows Server Service 呢?其實很簡單,在你的 /etc/rc.local 中加入一行
VBoxVRDP -startvm WinXP &
#如果你的 WinXP 並不是建立在 root 帳號中,而是其他使用者的話,請使用下列命令
su - UserName -c "VBoxManage startvm 'WinXP' -type vrdp"
這樣就夠了, WinXP 是 Guest OS 的名稱。這種啟動方式,讓你不須要跑一個 X window 環境來秀出 Windows Server 的視窗,它會啟動在背景中,如果你有設定 Guest OS(WinXP) 可以遠端顯示的話,你可以在別台電腦以 rdp 連線來控制 Guest OS(WinXP) 。
設定好了以背景方式啟動 Guest OS 後,再設定外部連線可以轉到 Guest OS port 。設定指令如下:
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8080
上述指令只須設定一次即可,設定後,請重新開啟 VirtualBox 軟體。這樣別人就可以從 http://x.x.x.x:8080/ 來瀏覽你的 Windows Server 的網頁伺服器了。
那麼該如何在 Linux Server 中,令它在一啟動時,即啟動 Windows Server Service 呢?其實很簡單,在你的 /etc/rc.local 中加入一行
VBoxVRDP -startvm WinXP &
#如果你的 WinXP 並不是建立在 root 帳號中,而是其他使用者的話,請使用下列命令
su - UserName -c "VBoxManage startvm 'WinXP' -type vrdp"
這樣就夠了, WinXP 是 Guest OS 的名稱。這種啟動方式,讓你不須要跑一個 X window 環境來秀出 Windows Server 的視窗,它會啟動在背景中,如果你有設定 Guest OS(WinXP) 可以遠端顯示的話,你可以在別台電腦以 rdp 連線來控制 Guest OS(WinXP) 。
設定好了以背景方式啟動 Guest OS 後,再設定外部連線可以轉到 Guest OS port 。設定指令如下:
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/Protocol" TCP
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/GuestPort" 80
# VBoxManage setextradata "WinXP" "VBoxInternal/Devices/pcnet/0/LUN#0/Config/http/HostPort" 8080
上述指令只須設定一次即可,設定後,請重新開啟 VirtualBox 軟體。這樣別人就可以從 http://x.x.x.x:8080/ 來瀏覽你的 Windows Server 的網頁伺服器了。
2007年11月18日 星期日
以email/skype/gtalk/msn作網頁認證
忘了是在那個網站上看到的,那個站長說他設計的網站在註冊帳號/密碼的部份儘量朝簡單流程考量,因為他十分討厭現在的網站要填一堆有的沒有的資料,還要 email 驗證,沒用多少服務,先得浪費一堆時間。
這激發了我對「單一簽入」系統的進一步想法。過去,我從信用卡刷卡機制方式中類推了一個身份認證的流程(其實完全抄自於銀行信用卡刷卡流程)。像是天瓏書局就是與國泰世華銀行結合,當使用者把訂單確定後,就會轉到國泰世華銀行的信用卡刷卡頁面,待信用卡認證後,國泰世華銀行網頁就會再轉回天瓏書局的頁面,天瓏網站從其中可得知使用者刷卡結果並決定訂單是否該出貨。
而「單一簽入」的流程也是使用者先來到服務網站,當他點下需要「登入」才能使用的網頁時,會先轉到認證網站去,而此時瀏覽器會帶著一個 SESSIONID ,接下來,使用者在認證網站上填入帳號/密碼,經認證網站確認後,將使用者的瀏覽頁面轉向回服務網站,而服務網站能針對 SESSIONID 繼續提供使用者服務。
這麼作有幾點好處:
上述的舊想法只簡化了認證的動作,但經過那個懶站長的抱怨後,我到有另一個想法可以結合「單一簽入」的概念,讓使用者根本不需要打密碼。
話說以前的 bbs 站台有提供 pop3 認證的功能,只要你相信站長不會偷用你的信箱,你可以直接把 pop3 帳號/密碼設在 bbs 站上,讓站主確認你就是那個 email 的擁有者。但這樣作,真的需要信心。所以直接把 email 帳號/密碼告訴站長在現今的社會是不可行的。不過,這方向滿正確的。現代人那個沒有 email ,我想大概就是那位靠著沿街賣馬鈴薯,賣到賺一間公司的老伯吧!所以說,如果你不是賣馬鈴薯賺大錢,還是要申請一個 email 。
上述的 email 認證方法,我們拿來結合進「單一簽入」系統,當使用者來到認證網站時,只需要輸入 email 帳號,按下確定後,認證網站發出一封認證信到使用者的信箱,只要使用者點選了那封信的認證連結,那麼就回到原來的認證網站,而認證網站也就確認了使用者確確實實擁有那個註冊 email 。如此一來,每次使用者都是透過點選認證信的方式來到認證網站,這樣他也不需要在認證網站上設定密碼了。
我們如果再把 email 的想法延伸到 Gtalk 、 Skype 、 MSN 等傳訊軟體,使用者只要點選認證訊息一樣可以回到認證網站,那麼使用者要作驗證的動作也就更容易。
ps. 事實上,我還在看有關 OpenID 以及 Identify 2.0 的文件,或許它們還有更好的方法。
這激發了我對「單一簽入」系統的進一步想法。過去,我從信用卡刷卡機制方式中類推了一個身份認證的流程(其實完全抄自於銀行信用卡刷卡流程)。像是天瓏書局就是與國泰世華銀行結合,當使用者把訂單確定後,就會轉到國泰世華銀行的信用卡刷卡頁面,待信用卡認證後,國泰世華銀行網頁就會再轉回天瓏書局的頁面,天瓏網站從其中可得知使用者刷卡結果並決定訂單是否該出貨。
而「單一簽入」的流程也是使用者先來到服務網站,當他點下需要「登入」才能使用的網頁時,會先轉到認證網站去,而此時瀏覽器會帶著一個 SESSIONID ,接下來,使用者在認證網站上填入帳號/密碼,經認證網站確認後,將使用者的瀏覽頁面轉向回服務網站,而服務網站能針對 SESSIONID 繼續提供使用者服務。
這麼作有幾點好處:
- 當所有的服務網站都採用相同的認證網站時,那麼使用者就不用記住非常多組的帳號/密碼了。
- 服務網站永遠不知道使用者的密碼,這提昇使用者的隱私保全。
- 除了帳號/密碼只有一組外,使用者的個人身份資料也只會有一組,這樣到了新的服務網站就可以少打很多資料了。
上述的舊想法只簡化了認證的動作,但經過那個懶站長的抱怨後,我到有另一個想法可以結合「單一簽入」的概念,讓使用者根本不需要打密碼。
話說以前的 bbs 站台有提供 pop3 認證的功能,只要你相信站長不會偷用你的信箱,你可以直接把 pop3 帳號/密碼設在 bbs 站上,讓站主確認你就是那個 email 的擁有者。但這樣作,真的需要信心。所以直接把 email 帳號/密碼告訴站長在現今的社會是不可行的。不過,這方向滿正確的。現代人那個沒有 email ,我想大概就是那位靠著沿街賣馬鈴薯,賣到賺一間公司的老伯吧!所以說,如果你不是賣馬鈴薯賺大錢,還是要申請一個 email 。
上述的 email 認證方法,我們拿來結合進「單一簽入」系統,當使用者來到認證網站時,只需要輸入 email 帳號,按下確定後,認證網站發出一封認證信到使用者的信箱,只要使用者點選了那封信的認證連結,那麼就回到原來的認證網站,而認證網站也就確認了使用者確確實實擁有那個註冊 email 。如此一來,每次使用者都是透過點選認證信的方式來到認證網站,這樣他也不需要在認證網站上設定密碼了。
我們如果再把 email 的想法延伸到 Gtalk 、 Skype 、 MSN 等傳訊軟體,使用者只要點選認證訊息一樣可以回到認證網站,那麼使用者要作驗證的動作也就更容易。
ps. 事實上,我還在看有關 OpenID 以及 Identify 2.0 的文件,或許它們還有更好的方法。
2007年11月14日 星期三
還不賴的 Google Adsense
Google 真是一個不錯的企業,雖然它的股價最近從 741 跌到 637 ,但我還是很看好它的市價會超過 MSFT 。
各位應該知道我的站放了滿多 Google Adsense 產品的,而今天最令人開心的不是這些產品幫我賺了多少收益,而是有人透過我的 Google Adsense 賺了 5 塊美金。為什麼我知道呢?請看下面這張圖。
其中在「推薦」的 Google Adsense 一列中,顯示我的收益有 5 塊美金。這代表有人是透過我的網頁中的推薦去申請 Google Adsense 的,而他/她的 Google Adsense 帳戶在每賺了 5 塊錢時,也會相同地給我 5 塊錢分紅(由 Google Adsense 官方給予的)。
不曉得是那位過客。讓我請你喝杯奶茶吧!
各位應該知道我的站放了滿多 Google Adsense 產品的,而今天最令人開心的不是這些產品幫我賺了多少收益,而是有人透過我的 Google Adsense 賺了 5 塊美金。為什麼我知道呢?請看下面這張圖。
其中在「推薦」的 Google Adsense 一列中,顯示我的收益有 5 塊美金。這代表有人是透過我的網頁中的推薦去申請 Google Adsense 的,而他/她的 Google Adsense 帳戶在每賺了 5 塊錢時,也會相同地給我 5 塊錢分紅(由 Google Adsense 官方給予的)。
不曉得是那位過客。讓我請你喝杯奶茶吧!
2007年11月9日 星期五
看中日之戰(2007世界盃)有點失落~
今天的先發陣容:陽建福先發主投,打擊排出林智勝、鄭兆行、彭政閔、陳金鋒、張泰山、謝佳賢、羅國輝、葉君璋、廖英傑。後援投手有增菘瑋、倪福德。
以上有幾個不是職棒球員,廖英傑不是,羅國輝勉強不要算(1A球隊而已,不太職業)。所以我和老婆說,今年惟一現場看的球賽其實也算是職業球賽,而且還一次看5隊呢!除了統一獅在日本沒得看。
當我到了球場,看到一堆熟面孔後,我忽然覺得台灣的職業球員很可憐,為了台灣人的民族自信心,得捨棄休息養傷的時間,為國爭光。
尤其是在回家的路上,聽到中廣主播提到倪福德今年在中信也有點使用過度的情形,他個人也說手的確是有些受傷。
唉~拿有些受傷的手來投 144 公里的球,不知道什麼時候會真的不能用。
我希望我們國人能把這業餘的比賽成績看輕點,就讓我們的業餘球員和別人的業餘打吧!要比職業的,可以在每年初的經典賽來比,這時國內的職棒球員休息也夠了,該為季初熱身了,也較符合職業球員的身體慣性。
業餘的比賽該讓業餘的出頭,要不然永遠期待陽建福、潘威倫、林英傑…,這樣只會讓他們在季前、季中、季後頻繁出賽,我們的板凳深度永遠不夠,球員的棒球生涯也容易結束。
我為了球員的長期棒球生命,我可以接受台灣在業餘比賽表現不出色,你呢?
以上有幾個不是職棒球員,廖英傑不是,羅國輝勉強不要算(1A球隊而已,不太職業)。所以我和老婆說,今年惟一現場看的球賽其實也算是職業球賽,而且還一次看5隊呢!除了統一獅在日本沒得看。
當我到了球場,看到一堆熟面孔後,我忽然覺得台灣的職業球員很可憐,為了台灣人的民族自信心,得捨棄休息養傷的時間,為國爭光。
尤其是在回家的路上,聽到中廣主播提到倪福德今年在中信也有點使用過度的情形,他個人也說手的確是有些受傷。
唉~拿有些受傷的手來投 144 公里的球,不知道什麼時候會真的不能用。
我希望我們國人能把這業餘的比賽成績看輕點,就讓我們的業餘球員和別人的業餘打吧!要比職業的,可以在每年初的經典賽來比,這時國內的職棒球員休息也夠了,該為季初熱身了,也較符合職業球員的身體慣性。
業餘的比賽該讓業餘的出頭,要不然永遠期待陽建福、潘威倫、林英傑…,這樣只會讓他們在季前、季中、季後頻繁出賽,我們的板凳深度永遠不夠,球員的棒球生涯也容易結束。
我為了球員的長期棒球生命,我可以接受台灣在業餘比賽表現不出色,你呢?
2007年11月5日 星期一
面對高油價,政府該這麼作!
當大家在吵油價該如何調整的方案時,我聽到了鄭村棋老師的一點意見,他說:「政府為什麼不趁這個機會,強迫大家作環保。」這個另類思維,我認為真是金玉良言呀!
政府是一直在強調這次的物價上漲是無法避免的,作什麼政策都無益抑制物價,且物價調漲對我們的經濟成長率也影響有限。
那如果在物價上漲中兼作環保政策,那應該對以綠色執政的民連黨來說,也是一項助力呀!
怎麼作呢?完全反應原油成本,甚至在浮動油價機制中,一律往高標調漲,然後把多拿的錢拿去補貼大眾運輸業(市區客運/長途客運)、腳踏車產業/關稅等,汔車改依每公升油耗來徵燃料稅,油耗愈高稅金愈高。
如果可以的話,應以區域來區分大眾運輸業的不同補助手段,例如:在台北市,補助金是用來作車價折扣,而在大眾運輸不發達的縣市,是以免費接駁公車代替。
政府是一直在強調這次的物價上漲是無法避免的,作什麼政策都無益抑制物價,且物價調漲對我們的經濟成長率也影響有限。
那如果在物價上漲中兼作環保政策,那應該對以綠色執政的民連黨來說,也是一項助力呀!
怎麼作呢?完全反應原油成本,甚至在浮動油價機制中,一律往高標調漲,然後把多拿的錢拿去補貼大眾運輸業(市區客運/長途客運)、腳踏車產業/關稅等,汔車改依每公升油耗來徵燃料稅,油耗愈高稅金愈高。
如果可以的話,應以區域來區分大眾運輸業的不同補助手段,例如:在台北市,補助金是用來作車價折扣,而在大眾運輸不發達的縣市,是以免費接駁公車代替。
2007年11月1日 星期四
GNU/Linux +Bash + Gnome 的易用性!
喜歡用 Ubuntu 工作,我想跟我熟一點的朋友是知道的。
但還是常常有人對我說, Linux *註1 不好用,他在 Windows 中,只要點點滑鼠兩下就夠了。
我想說的是:「他們想永遠當個小朋友。」
小朋友一開始使用電腦時,鍵盤對他們的門檻很高,又要記鍵位,十指又要有效運作,這是不容易辦到的。反觀滑鼠,只要移動它,及按下它 *註2 。
但等到長大一點,電腦使用者通常會開始記憶鍵盤快捷鍵,如: <ctrl>+C, <ctrl>+V …等,或是在 Command 中,打 ipconfig /all, arp -a, netstat -at …等指令,那使用者為什麼在這時候開始使用不直覺的鍵盤指令來工作呢。因為他不再是初學者了,他長大了,懂了比較多東西了,所以他會/能善用鍵盤。
人不是一輩子都是個初學者的 *註3 ,長大了就應該多用點鍵盤,多打些指令,節省你在這世界上痛苦的時間 *註4 。
那好吧!為了證明自己長大了,我就一直用鍵盤,不用滑鼠了,是個硬漢了吧!那倒也太辛苦了,有時候我們也會想要回到童真時期,作些大人不能作的事 註5 。偶爾用點滑鼠,沒人會責怪你的。
以上淺談了滑鼠及鍵盤的易用性,現在我們來談談 Ubuntu 給我們什麼,一個 Bash 及一個 Gnome 。
一個良好設定過的 Bash ,在上面打指令是很舒服的(命令列比較好!),而 Linux 許多的設定又可以簡單透過 vim 來作到。
但如果你懶得打字, Gnome 就排上用場了,它提供很多 GUI 管理工具,像我現在還不會在 Ubuntu 中用 vim 改網路設定,我都是到右上角的網路圖示中點右鍵設定。
所以 Ubuntu 讓我們在滑鼠及鍵盤中,都有「有效的方法」來執行你的工作。
反觀 Windows , GUI 介面很好用 * 註6,但內鍵的 Command * 註7 就很難用了,兩個加乘的效率就不如 GNU/Linux + Bash + Gnome * 註8 了。
所以我一直認為用 GNU/Linux + Bash + Gnome 是比較有效率且容易使用的,而且也應該是這樣子。
你不會永遠當一個初學者,你會長大的 *註9 。
----
註1 用這個名詞,是表示朋友多半不知道什麼是 GNU, Gnome, KDE 這些東西,他們只知道 Linux 。
註2 事實上,有人也認為 Windows 的兩鍵滑鼠是錯誤的設計,對初學者而言,應該是用 Mac 的單鍵滑鼠才對,初學者在按按鍵時,才不會按錯。
註3 其實只要你停了學習的欲念,你就可以當一輩子的初學者。
註4 人生苦短,我用 Python 。
註5 穿高中制服去喝酒、到公園沙坑去堆城堡…。
註6 或許對很多人來說,它比 Linux 好用。
註7 或許是要設定吧!是我不懂 Windows 該如何對 Command 作設定。但系統裝完的預設值真的很難用。
註8 拷!要三個自由軟體才能勝過 Windows ,表示 Windows 也很厲害呀!(如果你是這麼想地,千萬不要跟別人說,把它放在自己心上吧!如果說出去,會對你有重大後果的,因為你發現了一件大家都沒發現的事實。)
註9 我會這麼說,是源自Perl 的爸爸 Larry Wall 對「易用」的看法:「當有機會讓程式員感到方便,但是讓學 Perl 的人覺得不便時,他幾乎一定站在程式員這邊。這是因為你只需要學一次 Perl ,但卻會一直使用它。」
但還是常常有人對我說, Linux *註1 不好用,他在 Windows 中,只要點點滑鼠兩下就夠了。
我想說的是:「他們想永遠當個小朋友。」
小朋友一開始使用電腦時,鍵盤對他們的門檻很高,又要記鍵位,十指又要有效運作,這是不容易辦到的。反觀滑鼠,只要移動它,及按下它 *註2 。
但等到長大一點,電腦使用者通常會開始記憶鍵盤快捷鍵,如: <ctrl>+C, <ctrl>+V …等,或是在 Command 中,打 ipconfig /all, arp -a, netstat -at …等指令,那使用者為什麼在這時候開始使用不直覺的鍵盤指令來工作呢。因為他不再是初學者了,他長大了,懂了比較多東西了,所以他會/能善用鍵盤。
人不是一輩子都是個初學者的 *註3 ,長大了就應該多用點鍵盤,多打些指令,節省你在這世界上痛苦的時間 *註4 。
那好吧!為了證明自己長大了,我就一直用鍵盤,不用滑鼠了,是個硬漢了吧!那倒也太辛苦了,有時候我們也會想要回到童真時期,作些大人不能作的事 註5 。偶爾用點滑鼠,沒人會責怪你的。
以上淺談了滑鼠及鍵盤的易用性,現在我們來談談 Ubuntu 給我們什麼,一個 Bash 及一個 Gnome 。
一個良好設定過的 Bash ,在上面打指令是很舒服的(命令列比較好!),而 Linux 許多的設定又可以簡單透過 vim 來作到。
但如果你懶得打字, Gnome 就排上用場了,它提供很多 GUI 管理工具,像我現在還不會在 Ubuntu 中用 vim 改網路設定,我都是到右上角的網路圖示中點右鍵設定。
所以 Ubuntu 讓我們在滑鼠及鍵盤中,都有「有效的方法」來執行你的工作。
反觀 Windows , GUI 介面很好用 * 註6,但內鍵的 Command * 註7 就很難用了,兩個加乘的效率就不如 GNU/Linux + Bash + Gnome * 註8 了。
所以我一直認為用 GNU/Linux + Bash + Gnome 是比較有效率且容易使用的,而且也應該是這樣子。
你不會永遠當一個初學者,你會長大的 *註9 。
----
註1 用這個名詞,是表示朋友多半不知道什麼是 GNU, Gnome, KDE 這些東西,他們只知道 Linux 。
註2 事實上,有人也認為 Windows 的兩鍵滑鼠是錯誤的設計,對初學者而言,應該是用 Mac 的單鍵滑鼠才對,初學者在按按鍵時,才不會按錯。
註3 其實只要你停了學習的欲念,你就可以當一輩子的初學者。
註4 人生苦短,我用 Python 。
註5 穿高中制服去喝酒、到公園沙坑去堆城堡…。
註6 或許對很多人來說,它比 Linux 好用。
註7 或許是要設定吧!是我不懂 Windows 該如何對 Command 作設定。但系統裝完的預設值真的很難用。
註8 拷!要三個自由軟體才能勝過 Windows ,表示 Windows 也很厲害呀!(如果你是這麼想地,千萬不要跟別人說,把它放在自己心上吧!如果說出去,會對你有重大後果的,因為你發現了一件大家都沒發現的事實。)
註9 我會這麼說,是源自Perl 的爸爸 Larry Wall 對「易用」的看法:「當有機會讓程式員感到方便,但是讓學 Perl 的人覺得不便時,他幾乎一定站在程式員這邊。這是因為你只需要學一次 Perl ,但卻會一直使用它。」
訂閱:
文章 (Atom)