歡迎大家使用 bt 下載,愈多人用愈快下載完畢,種子檔網頁如下:
http://torrent.ubuntu.com:6969/
8.04 屬於長期維護版,在桌面版部份保證維護 3 年,而伺服器部份則是 5 年。雖然比不上 windows 久,不過在考慮重灌次數後,會發現 ubuntu LTS 比較划算,因為 windows 就算支援 10 年,可是每半年就得重灌一次(事實上,我的學弟妹們還不到半年呢),這樣比起來,還是裝個 ubuntu LTS ,1~3年之間重灌一次會比較省事。
轉移公告
計劃把 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 ,敬請舊雨新知互相走告。
何岳峰 敬上
2008年4月24日 星期四
2008年4月22日 星期二
hoamon 58 index fires!
在簡單指數化投資一文中,我找了 58 家公司作為標的物,今天(2008/4/22)正式啟動,我將會陸續買進該集合中的公司零股來力行指數化投資概念。
紀錄一下今天的大盤指數為 9037.25 。那麼,我們就先等個 10 年吧!
紀錄一下今天的大盤指數為 9037.25 。那麼,我們就先等個 10 年吧!
2008年4月12日 星期六
Google App Engine
這幾天 Google 發佈了一項服務: Google App Engine 。其目的是讓程式設計師可以容易地將網頁程式 upload 到 Google Cluster 中,交給 Google 代為管理。程式設計師可以除去系統管理的苦差事,只要專心寫程式即可。
目前它只提供 Python 語言的程式,但將來定會增加其他語言。
這對我來說真是一項天大的好消息(當然也對其他用 Python 或不用 Python 的設計師一樣),但壞消息是我到現在還沒拿到入場卷,心急呀!
不過,還沒拿到資格,也不代表只可用時間來期待,現在正是讀手冊的好時機,這名額過少的缺點,我倒認為是 Google 深思熟慮呀! 想想看,推一個新服務,總是有未知數,不知該用多少工程師或管理工具來維護整個 Google App Engine 系統,也不知道使用者對這系統的反應到底有多熱烈,所以先給少數人用,看看反應,收些回饋訊息,而最重要的是, Google App Engine 在使用上並不像 Gmail 一樣。使用者是不能快速上手的,須先了解系統架構、 API 介面、管理工具等等,反正現在給了名額,對程設師來說,也不是『馬上』就能生個系統出來,不如慢慢給,也給程設師時間來多讀點手冊。
Google App Engine 對 Django 使用者來說,最大的改變是使用 Model 的方法不同, App Engine 一律使用 Google Big Table 來儲存資料庫資料。
為了讓數以千計(未來可能是億計)的 App 妥善運作,當然是讓它們跑在 Google Cluster 上來得簡單,而不是跑在 Virtual Server Hosting 上。以後者來說,一個 App 需對應一個 http deamon, database deamon 及一個 chroot 環境,這樣雖對使用者是富有功能性的(允許使用者自行增加套件及修改系統設定),但這樣犧牲了管理系統的簡單,OSDC.tw(2008) 中所介紹的 openfoundry 正凸顯了與 Google App Engine 使用觀念上的不同。
目前在 App Engine 中操作 Big Table 的 Model 方法還依賴 GQL ,希望將來能將它改得比較像 Django Models ,或是在 Djanog Models 上直接支援 Big Table 引擎。
目前它只提供 Python 語言的程式,但將來定會增加其他語言。
這對我來說真是一項天大的好消息(當然也對其他用 Python 或不用 Python 的設計師一樣),但壞消息是我到現在還沒拿到入場卷,心急呀!
不過,還沒拿到資格,也不代表只可用時間來期待,現在正是讀手冊的好時機,這名額過少的缺點,我倒認為是 Google 深思熟慮呀! 想想看,推一個新服務,總是有未知數,不知該用多少工程師或管理工具來維護整個 Google App Engine 系統,也不知道使用者對這系統的反應到底有多熱烈,所以先給少數人用,看看反應,收些回饋訊息,而最重要的是, Google App Engine 在使用上並不像 Gmail 一樣。使用者是不能快速上手的,須先了解系統架構、 API 介面、管理工具等等,反正現在給了名額,對程設師來說,也不是『馬上』就能生個系統出來,不如慢慢給,也給程設師時間來多讀點手冊。
Google App Engine 對 Django 使用者來說,最大的改變是使用 Model 的方法不同, App Engine 一律使用 Google Big Table 來儲存資料庫資料。
為了讓數以千計(未來可能是億計)的 App 妥善運作,當然是讓它們跑在 Google Cluster 上來得簡單,而不是跑在 Virtual Server Hosting 上。以後者來說,一個 App 需對應一個 http deamon, database deamon 及一個 chroot 環境,這樣雖對使用者是富有功能性的(允許使用者自行增加套件及修改系統設定),但這樣犧牲了管理系統的簡單,OSDC.tw(2008) 中所介紹的 openfoundry 正凸顯了與 Google App Engine 使用觀念上的不同。
目前在 App Engine 中操作 Big Table 的 Model 方法還依賴 GQL ,希望將來能將它改得比較像 Django Models ,或是在 Djanog Models 上直接支援 Big Table 引擎。
2008年3月28日 星期五
英語對小學生是不重要的
老婆發過一個文:超額教師辦法會議後記,因為有人提了意見,而我又回覆她,所以我想拿這個引子繼續說。
以我這個年紀、作的工作來說,英語/英文實在是太重要了,這一點是不可否認的。我得用英文來找新的技術手冊、學新的觀念,甚至寫英文文章,未來也希望透過英語賺英語系國家的錢。對我來說,不用英文,就是讓我沒有競爭力。
但是,有一天我老婆強迫她的姪子(一個小四,一個小五)唸英語時,我問他們倆一個問題:「我肚子餓,我想要吃漢堡的英語,怎麼講?」他們支支唔唔地拖了很久,事實上,這問題他們應該要會的,我是從他們的英語課本中拿出來問他們的。接著,我告訴他們答案,並說:「其實,美國乞丐會講的食物更多種,還不只是漢堡,他們也會說牛排、可樂、薯條…,那這樣子,你們覺得為什麼要學會英語呢?又或者他可以講比你們還多的英語詞句那為什麼還要當乞丐而不是去當醫生、程式設計師、會計師、水電師傅、建築師呢?」
差別就在專業能力,而專業能力的基礎是不須要英語/英文的,在台灣,你絕對可以找到中文的教科書來教會你專業能力,而為了要看懂這些中文教科書,小時候更應該專注在國語、數學、社會、自然上。等你學好國語、數學、社會、自然後,再好好學會英語/英文,最後精進你的專業能力才是。
學英文(或是其他外語)的目的,不是和他人對話,而是博覽群書。
PS我大學聯考英文 28 分,經過一年重考後,我的英文是 24 分,但又如何呢!小時候英文不好,不影響我唸大學(第二次考試結果我是可以填中央土木或中興電機的,只是我選了中興土木,如果你想問為什麼,那這又是一篇 Blog 了)!但是現在英文不好,會影響我的競爭力。所以,我比小學生更應該在英文上下功夫。
以我這個年紀、作的工作來說,英語/英文實在是太重要了,這一點是不可否認的。我得用英文來找新的技術手冊、學新的觀念,甚至寫英文文章,未來也希望透過英語賺英語系國家的錢。對我來說,不用英文,就是讓我沒有競爭力。
但是,有一天我老婆強迫她的姪子(一個小四,一個小五)唸英語時,我問他們倆一個問題:「我肚子餓,我想要吃漢堡的英語,怎麼講?」他們支支唔唔地拖了很久,事實上,這問題他們應該要會的,我是從他們的英語課本中拿出來問他們的。接著,我告訴他們答案,並說:「其實,美國乞丐會講的食物更多種,還不只是漢堡,他們也會說牛排、可樂、薯條…,那這樣子,你們覺得為什麼要學會英語呢?又或者他可以講比你們還多的英語詞句那為什麼還要當乞丐而不是去當醫生、程式設計師、會計師、水電師傅、建築師呢?」
差別就在專業能力,而專業能力的基礎是不須要英語/英文的,在台灣,你絕對可以找到中文的教科書來教會你專業能力,而為了要看懂這些中文教科書,小時候更應該專注在國語、數學、社會、自然上。等你學好國語、數學、社會、自然後,再好好學會英語/英文,最後精進你的專業能力才是。
學英文(或是其他外語)的目的,不是和他人對話,而是博覽群書。
PS我大學聯考英文 28 分,經過一年重考後,我的英文是 24 分,但又如何呢!小時候英文不好,不影響我唸大學(第二次考試結果我是可以填中央土木或中興電機的,只是我選了中興土木,如果你想問為什麼,那這又是一篇 Blog 了)!但是現在英文不好,會影響我的競爭力。所以,我比小學生更應該在英文上下功夫。
檯面上沒有青發,我們該胡九萬的
-- 我們沒有權利討論周女士的選擇,她也沒有這個義務滿足我們的想法 --
第十二任總統選舉終於結束了,不管是新聞還是談話性節目,著墨最多的都是馬總統的家庭,而熱門的又是『馬夫人是否該辭去『周處長』的工作』。我認為這夠了。
在選票圈選欄中,我明明只看到『九萬』,沒看到『青發』,為什麼大家拼命想『胡』青發呢!!
試想,如果我們選擇的是一個單身的總統,那麼要找誰作『第一夫人』呢?所以憲法、法律根本不會制定『第一夫人』的工作是什麼,那麼為什麼有這麼多的嘴巴對『周女士』的未來該作什麼工作有意見呢?
我們來看看過去吳女士的作為,在她健康良好的情況下,她會去宣慰僑胞、國會致詞、出席國宴…,但她生病後,有作到任何一項工作嗎! 台灣還是可以照常運轉,所以『第一夫人』作什麼是不重要的。
如果你覺得『第一夫人』一定要作什麼事,才能讓台灣婦幼地位及環境提昇,那麼『馬蕭』的婦女政策就是個屁話了。『第一夫人』不須等同『婦幼部部長』。如果你還有『母儀天下』的想法,那就回到封建時代,沒有民主了,台灣也選不出女性總統了。
又如果你認為『周女士』擔任兆豐銀法務處處長,在兆豐銀將來與政府有利益衝突時,會對法官或是整個司法制度有所影響的話,那麼你就是瞧不起『台灣司法』了,天子犯法與庶民同罪,這是司法的基本。
或許你還是有疑慮,認為『第一夫人』有工作總比沒有工作對政府的影響比較大,那麼我們再回頭看看吳女士的例子,她是沒有工作的『第一夫人』,而她卻與『國務機要費案』及『SOGO禮卷案』有關,於此,你還覺得沒有工作會比較好嗎?
我的結論是『沒有第一夫人對台灣也沒有關係』及『對政府的影響力不是取決於第一夫人有沒有工作』兩點。就這個議題,我希望台灣媒體可以夠了,別再談了,不要讓人民轉移了焦點,現在最重要的是民進黨政府『平穩』地轉移政權及國民黨政府『積極』地帶台灣向前行。
檯面上沒有青發,我們該胡九萬的。
第十二任總統選舉終於結束了,不管是新聞還是談話性節目,著墨最多的都是馬總統的家庭,而熱門的又是『馬夫人是否該辭去『周處長』的工作』。我認為這夠了。
在選票圈選欄中,我明明只看到『九萬』,沒看到『青發』,為什麼大家拼命想『胡』青發呢!!
試想,如果我們選擇的是一個單身的總統,那麼要找誰作『第一夫人』呢?所以憲法、法律根本不會制定『第一夫人』的工作是什麼,那麼為什麼有這麼多的嘴巴對『周女士』的未來該作什麼工作有意見呢?
我們來看看過去吳女士的作為,在她健康良好的情況下,她會去宣慰僑胞、國會致詞、出席國宴…,但她生病後,有作到任何一項工作嗎! 台灣還是可以照常運轉,所以『第一夫人』作什麼是不重要的。
如果你覺得『第一夫人』一定要作什麼事,才能讓台灣婦幼地位及環境提昇,那麼『馬蕭』的婦女政策就是個屁話了。『第一夫人』不須等同『婦幼部部長』。如果你還有『母儀天下』的想法,那就回到封建時代,沒有民主了,台灣也選不出女性總統了。
又如果你認為『周女士』擔任兆豐銀法務處處長,在兆豐銀將來與政府有利益衝突時,會對法官或是整個司法制度有所影響的話,那麼你就是瞧不起『台灣司法』了,天子犯法與庶民同罪,這是司法的基本。
或許你還是有疑慮,認為『第一夫人』有工作總比沒有工作對政府的影響比較大,那麼我們再回頭看看吳女士的例子,她是沒有工作的『第一夫人』,而她卻與『國務機要費案』及『SOGO禮卷案』有關,於此,你還覺得沒有工作會比較好嗎?
我的結論是『沒有第一夫人對台灣也沒有關係』及『對政府的影響力不是取決於第一夫人有沒有工作』兩點。就這個議題,我希望台灣媒體可以夠了,別再談了,不要讓人民轉移了焦點,現在最重要的是民進黨政府『平穩』地轉移政權及國民黨政府『積極』地帶台灣向前行。
檯面上沒有青發,我們該胡九萬的。
2008年3月24日 星期一
How to connect MS SQL Server with Python in the Linux OS?
Basically, the general method is using ODBC Interface. In the Unix environment, we can use unixODBC library, but i had tried in failure.
So... another method is using hard core TDS protocol of Sybase Server. because MicroSoft buy the MSSQL server source code from Sybase, so they use the same protocol. maybe there are some difference between the servers. but i could not found it as far.
and i wanted using Python to program, so the requirement is below here:
# tar -zxf freetds.tgz
# cd freetds
# ./configure --prefix=/usr/local/freetds
# make
# sudo make install
# tar -zxf python-sybase.0.37.tgz #PS i try 0.37, because 0.38 is having something wrong in my server
# cd python-sybase.0.37
# sudo SYBASE=/usr/local/freetds \
CFLAGS="-DHAVE_FREETDS" \
LD_LIBRARY_PATH=/usr/local/freetds/lib:${LD_LIBRARY_PATH} \
python setup.py install
OK! installation is done!
try the freetds library is OK!
# /usr/local/freetds/bin/tsql -H {ServerIP} -p 1433 -U {Username} -P {Password}
> EXEC sp_databases
> go
this 『EXEC sp_databases』 command will show the all databases that this {Username} can read.
> use testdb
> EXEC sp_tables
> go
this 『EXEC sp_tables』 command will show the all tables of testdb.
> EXEC sp_columns @table_name = 'users'
> go
this 『EXEC sp_columns @table_name = 'users'』 command will show the all fields of table 'users'.
if everything seen OK! you can try Sybase module in the python interpreter.
# SYBASE=/usr/local/freetds CFLAGS="-DHAVE_FREETDS" LD_LIBRARY_PATH=/usr/local/freetds/lib /usr/bin/python
So... another method is using hard core TDS protocol of Sybase Server. because MicroSoft buy the MSSQL server source code from Sybase, so they use the same protocol. maybe there are some difference between the servers. but i could not found it as far.
and i wanted using Python to program, so the requirement is below here:
- freetds(http://www.freetds.org/): TDS protocol library written in C
- python-sybase(http://www.freetds.org/userguide/python.htm): python interface for controll freetds library
- python-devel (using in compile python-sybase)
# tar -zxf freetds.tgz
# cd freetds
# ./configure --prefix=/usr/local/freetds
# make
# sudo make install
# tar -zxf python-sybase.0.37.tgz #PS i try 0.37, because 0.38 is having something wrong in my server
# cd python-sybase.0.37
# sudo SYBASE=/usr/local/freetds \
CFLAGS="-DHAVE_FREETDS" \
LD_LIBRARY_PATH=/usr/local/freetds/lib:${LD_LIBRARY_PATH} \
python setup.py install
OK! installation is done!
try the freetds library is OK!
# /usr/local/freetds/bin/tsql -H {ServerIP} -p 1433 -U {Username} -P {Password}
> EXEC sp_databases
> go
this 『EXEC sp_databases』 command will show the all databases that this {Username} can read.
> use testdb
> EXEC sp_tables
> go
this 『EXEC sp_tables』 command will show the all tables of testdb.
> EXEC sp_columns @table_name = 'users'
> go
this 『EXEC sp_columns @table_name = 'users'』 command will show the all fields of table 'users'.
if everything seen OK! you can try Sybase module in the python interpreter.
# SYBASE=/usr/local/freetds CFLAGS="-DHAVE_FREETDS" LD_LIBRARY_PATH=/usr/local/freetds/lib /usr/bin/python
1 import SybaseOK! this is real done!
2 class DictCursor(Sybase.Cursor):
3 def row2dict(self, row):
4 d = {}
5 for i,elt in enumerate(row):
6 d[self.description[i][0]] = elt
7 return d
8 def fetchall(self):
9 rows = Sybase.Cursor.fetchall(self)
10 result = []
11 for row in rows:
12 result.append(self.row2dict(row))
13 return result
14 def fetchone(self):
15 return row2dict(Sybase.Cursor.fetchone(self))
16 def fetchmany(self):
17 rows = Sybase.Cursor.fetchmany(self)
18 result = []
19 for row in rows:
20 result.append(self.row2dict(row))
21 return result
22 class Connection(Sybase.Connection):
23 def dictcursor(self):
24 return DictCursor(self)
25 db = Connection(ip:port, account, password, dbname)
26 c = db.dictcursor()
27 sql = "select * from sometable"
28 c.execute(sql)
29 rows = c.fetchall()
30 for row in rows:
31 for k, v in row.items():
32 print k, v
33 print 'done'
2008年3月18日 星期二
社會不是靠著錢滾錢來成長地,靠的是你我日復一日的工作
引自 同門對決---The Great Debate between Jeremy Siegel and Zvi Bodie讀後感 :
這與我在 投資不只是「錢滾錢」而已 中提到『如果你還沒有投資自己,就不應該去投資別人』的觀念是不謀而合,不同的是我以正面方式敘述,該文以負面方式敘述。
而我也是確確實實地從投資行為中得到失望的結果,才了解到應該找個更能發揮自我、熱情的工作來做,更有希望賺到大錢。
"""人們不可能從金融市場裡,從投資的行為中,得到每年十幾趴的真實報酬,那會讓太多人,在有點本金之後,投資所得就可以維持生活,而放棄本業,以投資過活。不過,人類世界,不是靠大家在金融市場忙進忙出就會有錢,有真實價值跑出來。有真實價值的東西,是人們從事本業,所提供的服務與製造的產品。絕大多數人,將從投資的行為中,得到失望的結果,不如意的報酬,而失望的繼續工作,推動人類社會的運轉。每年 20%?!那只是用來賣雜誌、賣建議、賣whatsoever的情緒性字眼。
我的建議是,找個自己喜歡的工作,然後理性的認知,投資只是個讓資產有機會緩慢成長的管道。"""
這與我在 投資不只是「錢滾錢」而已 中提到『如果你還沒有投資自己,就不應該去投資別人』的觀念是不謀而合,不同的是我以正面方式敘述,該文以負面方式敘述。
而我也是確確實實地從投資行為中得到失望的結果,才了解到應該找個更能發揮自我、熱情的工作來做,更有希望賺到大錢。
訂閱:
文章 (Atom)