九月 19, 2012

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» My all new personal site

It's a big step to me again, so i update a new website for my personal information.

It is "http://www.hoamon.info/".  Yes, the domain name is not changed, except the content.  The new one is hosting on the Google Sites.  The ambition of my new site you can notice is converting one kind information to ten languages.  This is one of my new goals to touch different culture with native interface.


P.S. If you really like the old one, please go to "http://old.hoamon.info/".

四月 28, 2012

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 感謝 Google Drive ,我又有機會付錢給 Google 了

Google Drive 付費方案
最近的科技大新聞, Google 推出了 Google Drive ,它與 Google Docs 結合,把你在 Docs 中的文件置入 Drive 中。免費使用的話,總共有 5GB 的空間。

雖然目前,只出了 Mac , Windows 及 Android 版的同步程式。但將來出 Linux 版只是遲早(應該吧!)而已。

所以當我試用了 Windows 及 Android 版的 Google Drive sync ,我就下定決心要買額外空間。一個月付出 2.5 美金(約臺幣 75 元),能換來 Picasa Web 25G , Google Drive 25G , Gmail 25G ,這麼划算,怎麼不買帳呢!

前一次付錢給 Google 是因為 Voice ,花了 10 美元,但到現在還沒打完,因為有太多機會是使用 Skype, Gtalk, Google Hangout 來與其他人溝通。

而事實上,我使用了 GMail, Blogger, Youtube, Picasa, Docs, Search, Apps, App Engine, Finance, Calender ... 等這麼多的免費服務。心裡一直覺得過意不去, Google 可是我最喜愛的線上公司,如果不能給予實質支持,那麼我憑什麼對它有什麼更高期待呢? 相較於我討厭(痛恨)的微軟,都不得不花錢買它們的帳( NB 的預裝版 OS ),支持 Google 可說是再合理不過的事情。

除了我買帳外,剛剛也推銷給老婆,她同意花 2.5 美金去買 25G * 3 的空間。如果你要問為什麼不兩個人用一組帳號,一樣花 5 美金,但卻換來 100G 的空間呢???

答案是,我老婆不准。用不到那麼多空間,幹麼要多花錢。而且各人用各人的,才不會有安全性的問題。

也推薦給你們用用。

八月 8, 2011

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Google Call +1

現在用 Google Call 就能用網路撥號給市內電話及手機了。

費率目前是市話 0.02美金/分,手機 0.09美金/分,換算台幣大約是 0.6/分 、 2.7/分。其實市話費率與中華電信費率差不多,而長途電話方面,有一點優勢,在手機費率方面則有明顯優勢。

剛剛,我已刷卡儲值 10 美元了。話質感覺不出是網路電話,效果還不錯。

建議各位使用。

=== 後記 ===
今天很驚訝地發現, Google Call 的發話地居然是「中國大陸 - 上海」,奇怪它們不是退出中國了嗎? 還是那個只是合作的電信業者。不過從這點看來,臺灣電信公司的通話費率應該是頗高的,竟然從上海打來的電話,還能收得比中華電信網內互打還便宜。

九月 28, 2010

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 使用 Google AJAX Libraries API 時,無法離線撰寫網頁程式?

在網頁程式中,我都是使用 Google AJAX Libraries API 來 host jquery 程式庫的,然而這麼作有一個缺點,如果你是在離線作程式設計時,要手動修改樣版,把 Google 來源的 js 檔改成從本機讀取,是有點麻煩,但致少作得到。

但若是將來在系統上線後,使用者上得了你寫的網頁系統,卻無法連至 www.google.com 呢? 那怎麼辦,雖然這個機率會滿低的,但也是有可能會發生在這個網頁系統屬公司內部系統,而對外連線卻被中斷的情況下。

別怕! 很簡單,下面就是一個範例,第 6、7、8 行改成本機 host 的檔即可。



1 <link rel="stylesheet" title="default" type="text/css" media="screen" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css"> 2 <script type="text/javascript" src="http://www.google.com/jsapi"></script>
3
4 <script type="text/javascript">
5 if (typeof google == 'undefined') {
6 document.write(unescape('%3Cscript src="/localmedia/jquery-1.4.min.js" type="text/javascript"%3E%3C/script%3E'));
7 document.write(unescape('%3Cscript src="/localmedia/jquery-ui-1.7.2.custom.min.js" type="text/javascript"%3E%3C/script%3E'));
8 document.write(unescape('%3Clink type="text/css" href="/localmedia/smoothness/jquery-ui-1.7.2.custom.css" /%3E'));
9 } else {
10 google.load("jquery", "1.4.0");
11 google.load("jqueryui", "1.7.2");
12 }
13 </script>


延伸閱讀: Using CDN Hosted jQuery with a Local Fall-back Copy

十二月 15, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 懂基本原理與不懂基本原理的差別

我在使用 Google AJAX Library api 時,遇到一個奇怪的問題:


//第一段
<script src="http://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.3.2");
google.load("jqueryui", "1.7.2");
</script>
<script>
var $p = $('<p>123</p>');
alert($p.text()); // it works
</script>

以上程式碼居然不等於下面的程式碼!

//第二段
<script src="http://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.3.2");
google.load("jqueryui", "1.7.2");
var $p = $('<p>123</p>'); //會發生「未定義 $ 」問題。
alert($p.text());
</script>

但第一段程式碼可換成下面程式碼

//第三段
<script src="http://www.google.com/jsapi"></script>
<script>
google.load("jquery", "1.3.2");
google.load("jqueryui", "1.7.2");
google.setOnLoadCallback(function() {
var $p = $('<p>123</p>');
alert($p.text()); // it works
});
</script>

也就是 js 引擎對 <script> 區塊的判讀有特殊行為存在,要不然就是 jsapi.js 程式有獨到之處,但因為我不懂 js 引擎也沒仔細去看 jsapi.js 程式碼,所以我只能 try and error ,慢慢兜。

十一月 21, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 莫明奇妙的 _ 網域名稱錯誤: 只發生在 IE 上

嚴格地說,這也不是 IE 的錯, IE 只是遵守規範而已。但是因為 Firefox 的容錯能力,讓我們一時以為是 IE 太爛了。

問題是這樣的:

我學弟使用 Windows 加 apache 配置一個測試網站給業主使用時,一直面臨 IE 不能登入,但 Firefox 卻正常的問題,而該網站在 django development server 運作時,卻又沒有問題。他搞了非常久,大概有一個月吧!

我幫他 debug 時,一開始,我就把問題縮小在 IE 瀏覽這 apache 上的測試網站時,它不會紀錄 Cookies,沒用 Cookies ,那怎麼保持認證連線呢! 只是那時候,我也是找不出為什麼那該死的 IE 就是沒法使用 Cookies ,而優秀的 Firefox 就可以呢! 然後,我使用了 Ubuntu Linux 配置這個測試網站結果發現它可以讓 IE 正常運作,所以我們當時只能歸納這問題,一定是他的 XP 出了狀況。

結果前兩天,他要把測試網站放到業主的機器上去 run 時,還是出了相同的問題,然而這次不一樣的是那個機器有兩個 django-based site ,但一個正常,一個不正常。這就有點說不過去了。

於是,這次我請教了 Google 大神,問它: django cookie session problem ie ,而它回我: http://code.djangoproject.com/ticket/7264#comment:3

這原來是 _ 的錯,因為學弟習慣將測試網址設成 test_XXX.YYY.ZZZ ,而我習慣設成 XXXtest.YYY.ZZZ ,因為我知道在買網址時只可以買英數字加連字詞(-)的,所以我不會在網域名稱中放入 _ ,也就是這個習慣讓我在 Ubuntu Linux 中架的測試網站是可以讓 IE 正常使用,但學弟架在 Windows 上的測試網址卻包含了 _ ,讓 IE 勇於拒絕他的要求了。

這同時也解釋了為什麼在 django development server 運作時, IE 可以正常的現象,因為它會使用 http://127.0.0.1:8000/ 作瀏覽網址。

哈哈,真不曉得該怪 IE ,還是得怪 Firefox 呢! 不過,話說回來,要是早點問 Google 大神,這問題就不會拖一個月了。

十一月 12, 2009
» The Go programming language

Go 號稱可以寫得和 Python 一樣快,又跑得和 C 一樣快。簡直就是一隻不會吃草的馬。

有空要來試試看,至少陣列看起來有點用,不像 C 那麼彆腳。

八月 12, 2009
» yagt

yagt 不是 yet another google trends tool,而是 Y's API for Google Trends

動機有點複雜,但程式很簡單、功能很簡單、安裝也很簡單。我在 Python 2.5/2.6 下都測過,只要 easy_install -UZ yagt 即可安裝。裝好之後,用 python2.6 -m  yagt 就可以 invoke 指令行介面。如果沒有用 -u username 指定使用者名稱,程式會用 rawinput() 詢問;密碼則是一定用問的。

用 yagt 就可以直接在命令列把 Google Trends 的資料存成 csv 檔。中文也通。不過 Google 擋 bot 擋很兇的樣子,一不小心抓太爽的話,很容易被 Google 把你的 IP 擋掉喔。我還在等 Google unblock 我 ... :'(

七月 25, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Mercurial on Google Code is available to every project

今天晃到自己的專案 django-pgpauth 時,才發現多了 Mercurial 的選項。原來早在 5 月 28 日時就己經正式推出了。

要轉移原來的 subversion 資料庫到 hg 儲存庫中是很簡單的一件事。

在 Ubuntu 下,先安裝 python-subversion 套件。然後將 /etc/mercurial/hgrc.d/hgext.rc 中「# hgext.convert =」的註解拿掉。

接下來,作轉換的動作。

# hg convert http://projectname.googlecode.com/svn hg-client
# cd hg-client
# hg push https://projectname.googlecode.com/hg

最後,記得到 administer > source > Repository type,把 Version control system 改成 Mercurial 即可。

五月 18, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Goog News: Mercurial support for Project Hosting on Google Code

from Mercurial support for Project Hosting on Google Code

...The primary reason was to support our large base of existing Subversion users that want to use a distributed version control system. For these users we felt that Mercurial had the lowest barrier to adoption because of its similar command set, great documentation (including a great online book), and excellent tools such as Tortoise Hg. Second, given that Google Code's infrastructure is built for HTTP-based services, we found that Mercurial had the best protocol and performance characteristics for HTTP support. For more information, see our analysis.
...


Yes! My next wish is "Mercurial library" can natively works on Google App Engine.

四月 28, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 原來 Google Desktop Linux 版預設不能搜尋 .doc, .xls, .ppt 內文呀!

如果在安裝 Google Desktop Linux 前,你的系統未安裝 wv, catdoc 的話,是無法搜尋 .doc, .xls, .ppt 的檔案內文。

所以,記得一定要在安裝 Google Desktop Linux 前,先作

# sudo apt-get install wv catdoc

然後再安裝 Google Desktop 呀!

詳情請見 Google Desktop Help

四月 19, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Web System Logining By PGP key!!

I designed an experimental web site with Django Framework to show the concept of web logining by PGP key. You can take a draft on the past article.

I hosted this project(`django-pgpauth') on Google Code. If anyone interested, just checkout or submit an issue to me.

<< Translate the above to tranditional-chinese >>

我設計了一個實驗性質網站來示範 PGP 認證如何應用在網頁系統登入上,其採用Django框架。各位可以從我之前的文章中得到初步概念。

我在Google Code上開立了 `django-pgpauth' 專案。 如果任何人有興趣的話,請直接 checkout 或是寫個 issue 給我。

三月 27, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» 如何在收信人不知情下,讓寄件人得知信件是否已開啟?

基本上,這問題的目的已經接近怪客行為了。因為你讓電腦使用者在不知情的情況下,傳遞某些訊息。

不過,因為問這問題的人不是為了收集 Email 位置,而是要確定收信人是否'''誤報'''信件接收狀態(也就是明明有收到,卻假裝沒收到來逃避作事)。所以,我提供一個廣為周知的方法來點醒他一下。

方法是'''利用圖檔'''。大家在使用 Gmail 時,有沒有發現為什麼某些信件格式是 html 且內含圖檔的信件都會被 Gmail 隱藏圖檔呢? 然後再提供一個顯示圖檔的連結, Gmail 何必脫褲子放屁,多此一舉讓使用者麻煩呢? 因為它是全球第一的 mail 服務商,別小看這個動作了。

因為圖檔是必須再連到某個伺服器來觀看的,所以如果這圖檔的 src 是 "http://some.where.from.you/?user_id=234455&mail;_id=45" ,則 http 伺服器勢必得到外部使用者的一個連線需求,且這連線還傳入了兩個變數:某個使用者及某封信件編號,如此一來,寄信者不就得到了收信者在瀏覽信件時所發出的連線需求。這樣就能確定收信者的確有收到此信。

但問題是,這個簡單的刺探動作早就被許多 webmail 或是 mail client 軟體給阻斷了。那又有什麼用呢? 是的,我們只能相信人類,人多是愚蠢的,所以如果你在信中放的是某些有趣/養眼的圖檔,誘惑他自己按下顯示圖檔的按紐,那他就中招了。

三月 14, 2009

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Google 在不久的將來會推出 Google Voice

相關新聞請見: http://www.zdnet.com.tw/news/web/0,2000085679,20136833,00.htmhttp://www.ithome.com.tw/itadm/article.php?c=53945http://tech.chinatimes.com/2007Cti/2007Cti-News/Inc/2007cti-news-Tech-inc/Tech-Content/0,4703,130509+132009031301011,00.html

這個服務其中有一個非常重要的功能:「語言轉文字」。為什麼 Google Voice 為推出這個功能呢! 除了它實際對用戶是有幫助的外,它最大的一個目的是把不容易分析的語言轉成容易儲存及解析的文字後,方便作資料挖掘(Data Mining)。那 Google 要對這東西作 Data Mining 是要幹什麼? 請看我之前所寫的「給 google 的建議(構想篇)」。

當 Google 提供的服務愈來愈多,你會不會害怕自己的隱私權愈來愈小呢? 別害怕,這世界上,有一個叫 PGP 的玩意,有空了解一下吧!
Link

一月 17, 2009
» 在 Google App Engine 1.1.7 上跑 Pylons 0.9.7 RC4

版本資訊:
OS: Ubuntu 8.10
Python 2.5.4
Pylons 0.97rc4
Google App Engine 1.1.7

步驟:

svn checkout http://appengine-monkey.googlecode.com/svn/trunk/ appengine-monkey
python2.5 appengine-boot.py --paste-deploy my-app
## my-app 可改為你的想要的應用程式名稱,如:hellopylons)
>> Enter template_engine (mako/genshi/jinja/etc: Template language) ['mako']:
>> Enter sqlalchemy (True/False: Include SQLAlchemy 0.4 configuration) [False]:
>> Enter google_app_engine (True/False: Setup default appropriate
>> for Google App Engine) [False]:True
cd my-app
source bin/activate
easy_install Pylons
cd src
paster create --template=pylons MyApplication
## MyApplication 依樣可自訂其名稱
cd my-app/src/MyApplication
python setup.py develop
cd ../..
python -m pth_relpath_fixup

編輯 my-app/development.ini:
[app:the-app]
## Change this to whatever you name your application:
use = egg:MyApplication

到此與 appengine-monkey 上差不多,但接著要多幾個動作才能見到 Welcome:

一.
File ".../appengine-monkey/my-app/src/MyApplication/MyApplication/config/environment.py", line 34, in load_environment
module_directory=os.path.join(app_conf['cache_dir'], 'templates'),
KeyError: 'cache_dir'
避免如上錯誤,編輯 my-app/src/MyApplication/config/environment.py,註解掉一行:
        ...
#module_directory=os.path.join(app_conf['cache_dir'], 'templates'),
...

二.
VersionConflict: (WebOb 0.9 (.../google_appengine/lib/webob), Requirement.parse('WebOb>=0.9.4'))
移走 google_appengine/lib/webob 來避免這錯誤:
mv google_appengine/lib/webob/ google_appengine/webob/

即 Google Appengine 1.1.7 隨附的 webob 版本 (0.9) 未達 Pylons 0.9.7 的要求 'WebOb>=0.9.4'
註:如果你有跑其它 App Engine apps,這個 google_appengine 最好單獨就給 Pylons 使用,以免造成其它程式的問題。

好,是時候了:
/usr/bin/python2.5 google_appengine/dev_appserver.py my-app
## 我使用自己 compile 的 /usr/bin/local/python2.5 google_appengine/dev_appserver.py my-app
主要參考:
Appengine-Monkey: http://code.google.com/p/appengine-monkey/wiki/Pylons

註二:
自己 compile 的 Python 要支援 SSL 才能跑 Google App Engine,在 Ubuntu 8.10 下就是裝完 libssl-dev 後重新 make && make install。

九月 4, 2008
» Picasa Web新增人臉辨識功能

這兩天Google Chrome的新聞太大,把其他一些有趣的新東西都蓋掉了,其實在發表Google Chrome的同一天,Picasa Web也更新了,除了介面變漂亮外,還增加了”Name tags”的功能。

(順便一提,這功能要開英文介面才看得到,如果用中文介面是看不到的喔。)

Name tags是幫你把照片中的人標上tag的功能,這不是完全自動的,因為現今電腦對於人臉辨識的效果還是差強人意,所以Google是採用輔助的方式來提示你照片中的人可能是誰,再由使用者自行決定正確的tag。第一次使用name tags時,Picasa會自動把所有照片掃描過一次,自動挑出所有的人臉,並把它認為相同的排在一起讓使用者方便填上名字。在第一次的tag建立工作上做得還蠻方便的,而且正確率還出乎意外的高,只能說Google的技術能力還是非常強悍。第一次建立完後,之後只要新增照片,Picasa就會自動做人臉偵測,並提示使用者每個人臉所對應的tag。

此外,在瀏覽相簿時,右邊也會多出”People in this album”的欄位,如果對某人有興趣就可以直接點他的人頭來找出所有有他身影的照片,實在非常方便。

Picasa Web推出這個殺手級的功能並不令人意外。老實說我覺得各大網路相簿早就該作人臉辨識了,尤其像是Facebook上的相片幾乎都是以人像為主,又有強大的social network基礎做支持,怎麼能不做自動化的辨識功能呢?

多了人臉辨識後,Picasa開始有了能和其他相簿明顯區隔的技術門檻,其他相簿就像還活在石器時代一樣只有基本的tag、分類功能。如果再不振作一點,這樣下去網路世界真的就要被Google統一了啊……。

九月 2, 2008
» Google瀏覽器Chrome即將現身

一向以Web上的應用程式為主力的Google,終於又要向前邁進一大步了。根據Official Google Blog的公告,Google將在明天推出自家的瀏覽器Google Chrome。

從Google blog和Google Chrome漫畫上可以看到Google Chrome有幾個特點:

  • Chrome內含新一代的Javascript引擎: V8,這是為了讓網頁上的應用程式能夠執行得更快更好,而不只是瀏覽頁面而已
  • Chrome的每一個tab都是獨立的應用程式,也就是說一個tab當掉不會影響到其他tab
  • Chrome架構在Apple Webkit和Firefox之上,可跨Windows、Mac OS X、Linux三大平台
  • Chrome是open source的

Google Chrome的意義非凡,它不只是一個瀏覽器而已,而是意味著整個Google平台的向下擴張,從雲端的網頁主機跨進使用者面前的個人電腦。從Chrome把每一個tab變成互相獨立的應用程式就能看出來,Google的意圖很明顯是想把瀏覽器變成新一代的作業系統,每個tab不再是一個頁面,而是一個應用程式,這些程式不會彼此干擾,穩定的多工切換和快速的執行全交給瀏覽器來解決。

Google會踏出這一步一點都不令人意外,甚至可以說是擴張版圖的關鍵一著。有了自家的瀏覽器後,再搭配上各種應用軟體的web化熱潮,說不定再不久Google就會說:「我們即將推出Chrome 2.0,此版本不需要任何作業系統即可安裝執行(因為所有程式和資料都在web上,你還要作業系統幹麼?),執行速度超快(底層其實是單工作業系統,不需要跟其他程式分享CPU當然超級快),open source而且免費!(微軟老兄你可以準備領便當回家了)」

(well, 以上純屬個人臆測,如有雷同純屬巧合…。)

至於Google Chrome對現今瀏覽器市場的影響,我覺得短期內並不會侵蝕太多IE的市佔率,因為
IE市佔率已經掉到60%以下,這幾乎全都是被Mozilla系列(Netscape, Firefox)所吃掉,這代表Mozilla已經跨過早期使用者和早期大眾的鴻溝並持續成長,剩下還在用IE的人大多是保守型的晚期使用者,這些人對新玩意並不熱衷,也不會因為Google出了瀏覽器就跳槽過去用用看;會去嘗鮮的一定還是用其他瀏覽器的早期使用者,所以Google Chrome得先從現有的Mozilla、Safari、Opera用戶吸引到夠多的關注,並站穩腳步後才有可能看出後續能不能搶下瀏覽器市場的主導地位。

八月 4, 2008
» 讓Google Calendar與iCal及Nokia手機行事曆同步

自從新手機N82入手後,讓我最困擾的莫過於行事曆的同步問題。

我一直都是用Google Calendar長大的,因為以往的環境是只要有電腦就一定能上網,所以我可以把所有行程資料都放在網路上,有需要時直接上網就能看到,也省去了分散式儲存會帶來的資料同步問題。然而現在多了一個隨身攜帶的smartphone,加上我又不想花錢申請3G或是其他的data plan,所以如何將不能隨時上網的手機行事曆與Google Calendar同步就成了一個麻煩的問題。

雖然在S60上已經有幾個行事曆同步程式,像是gCalSynCalSyncS60、或是GooSync.com,這幾個軟體或服務我都試用過,但很不幸都無法滿足我的需求。

gCalSync其實是完全無法執行,本來以為是憑證問題,但我即使把N82「調整」過後,也還是不能執行。CalSyncS60倒是還蠻不錯的,適合只有單一calendar的簡單情況,可惜我需要同時用很多calendar(更糟的是這些calendar還有不同時區..),CalSyncS60就無法支援了。GooSync.com是提供同步服務的網站,它的免費版也只支援一個calendar,如果要用多個就得付費才能用。

其實我差一點點就要付錢用GooSync.com了,還好在最後關鍵時刻我發現了不知道什麼時候開始Google Calendar竟然已經能和iCal同步了!Google提供了詳細的教學文章說明如何在iCal裡設定和Google Calendar做同步,不但能同步多個calendar,連多時區也不會有問題!(而且iCal還提供很方便的按鈕可以切換時區,請見下圖右上角)

按照Google的說明將Google Calendar和iCal同步後,事情就很簡單了,因為Nokia官方就有出iSync的plugin,可以自動同步通訊錄以及iCal裡的行程資料。有了這樣的解決方案,我回到家只要打開iSync,按下同步鈕,連線都不用接就能透過藍牙把最新的行事曆資料和手機做同步,實在是超級方便啊~ (當然,如果能直接在手機上透過wifi連到Google做同步就更完美了…)

Google支援iCal真是天大的福音,不僅是照顧到廣大的Mac族,而且也完美(又免費)的解決了我的困擾。

Google萬歲!!

六月 23, 2008

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» firefox's plugin: better gmail2

很習慣用 firefox 上 Gmail 。而這個外掛可以讓你在瀏覽 Gmail 時,有更好的感覺,像是在信件列表時把附件格式秀出、區別 Label 顏色、修改佈景主題…等,使用很簡單,裝好後滑鼠點點就行了。右圖是我的新 Gmail。

六月 18, 2008

hoamon's sandbox
hoamon
hoamon's sandbox is about »

tag cloud

» Google Toolbar for Firefox3 is release!

配合 6/18 firefox3 download day, Google Toolbar 也總算出了向上相容 firefox3 了。

biggo.com.tw

A Django site.