2007年8月29日 星期三

大乾麵之役

這些日子中午都和學長一同吃飯,常聽他們提到的"大乾麵",今天終於見識到了.這家店叫"水餃之家"位於長榮路跟開元路交叉附近,中午上完課就殺過去了.學長們要求一定要點大碗的,還說吃完免費請喝飲料,有這麼好康的事情,目前有吃完過的碩二碩一各一位,不知新生是否能打破紀錄.

先點100塊滷菜開開胃吧,吃阿吃阿後面有你好受的.等了許久終於來了,光看到就會倒抽一口氣,大碗的大概是小碗的2.5倍,都比碗公還高了,以45塊的價格真是太划算,學長都點水餃,看來他們真的很怕.科科~第一口還不賴,大家的嘴角是上揚的.隨著時間過去表情也略趨難過,照片裡我的嘴巴always鼓鼓的,回想起大一大二趣味一下的拼勁如今已不在,終究還是宣告失敗,有三位喀光真是佩服阿.

服用前 服用後 


小碗的炸菜肉絲麵跟大乾麵差不多高,大碗的炸菜肉絲麵就不可考了.現在已經快八點,我還不餓...下次誰來台南一定帶去體驗一下.

2007年8月23日 星期四

Night Market

晚上和噹的學長姐一起逛夜市,在她們lab裡有位德國來的交換學生,難得能和外國人接觸不能錯過啦.同行的還有她兩位同學,三位這麼高的外國人走在夜市確實吸引了大家的目光,對於台灣的小吃她們當然感到稀奇,臭豆腐,脆皮年糕,蚵仔煎,豬血湯...要用英文來介紹這些確實困擾我,老伯底子比較好,可以邊走邊做介紹.吃飯時坐下來聊天,聽她們談論著生活上的事情很新鮮,偶而能插上幾句,體會到英文不通的苦楚. 稍微展露了射氣球的功夫,打十中九自己非常得意,沒想到緊接我後面的Birta竟然全中,不禁讚嘆德國全民皆兵阿XD 這是我跟外國人talk最多的一次,英文真的很重要!

2007年8月22日 星期三

陰霾

最近一整個不順,淋到雨反而更背...做事提不起勁,花費的時間沒跟工作量成正比,上課常常打瞌睡...

早上是新生選課,成大選課系統採先搶先贏的,大家都很清楚該怎麼做.磨刀霍霍,時間還沒到我已登入系統在等待了,課程代號也都另外列成清單.九點過了發現選項沒跑出來,原來是要重新登入才會出現,天真以為按下重新整理有用,跳出了msgbox不管它直接按確定,結果出現...真哭耶~我八點起床提早到學校就為了這一刻...半個小時看著別人歡樂的挑選.其實有這個機制我早就知道了,選課前我同學也再次提醒過我,都怪自己蠢沒看清楚msgbox跳出的訊息,當成是firefox的提醒訊息...好在沒有影響很大,不過還是覺得選課系統極為差勁.

再來要說房東的鳥事,搬來五樓也半個多月了,電熱水器一直有問題,先前天氣熱還ok,連颱風天都還要恁爸洗冷水,每次洗澡總有一千萬個X.最近慢慢抓到訣竅,發現把蓮蓬頭拿到腰部以下偶爾會有熱水,不是吧,一直蹲著也太克難了.兩個禮拜前已經跟他反應,還在那邊給我裝傻,叫我用提水的,你古人阿.陸續講了好幾次才說要請人來看,希望不是做做樣子的.房東太太也照慣例拿了一顆梨子來塞住我的嘴.

台南一直下雨,搞得我房間濕氣很重,一堆東西發霉,有潔癖的人最不能忍受這種事了.前幾天偶然發現鉛筆盒發霉,昨天看到我最心愛的抱枕也遭殃,今天回來三層櫃後面滿滿的一片,一氣之下把它給拆了,還買了裝屍體用的大垃圾袋來打包,多出來就保留給房東吧. 真懷疑屋頂是不是有漏水,搞不好天花板上的黴菌都比草還高了.

想到要跟這些黴菌共枕眠就一整個火,明年一定要搬走.

2007年8月18日 星期六

推薦你使用Ubuntu

何謂Ubuntu?它是一套以桌面管理為主的Linux作業系統,背後擁有龐大的社群,所以資源取得相當的完整, 適合沒接觸過linux的人來使用.

在傳統印象裡會感覺linux不人性化,只能在文字模式下跑,只適合拿來架設伺服器,或是x-window安裝設定很麻煩...在從前可能是這樣子,不過在ubuntu的世界裡完全改觀了,圖形化介面,安裝步驟比xp還少,週邊裝置幾乎都可順利啟用不需另外安裝驅動程式,開機直接進桌面,只要你會用windows就一定會用ubuntu.相關套件齊全,一條指令即可安裝所需軟體,一般使用者上網找資料,聊天,文書處理,看影片聽音樂...都可輕易滿足,安全性高不太需要煩惱中毒的問題.

Windows用的好好的幹嘛要換,這...我也不知道怎麼回答你,身為資工人多接觸其他的系統有益無害啦,真的是好東西才推薦給大家的.不敢說對以後謀生有幫助,但至少可以在解決問題中得到成就感,且不自覺提昇了英文閱讀能力(時常都要找國外的資料哩).

對於初學者要轉換跑道不可能完全沒問題啦,還是有很多東西要學習的,最起碼你得適應新的操作介面.照著步驟來,慢慢就能上手.

1.取得安裝光碟
這裡到Ubuntu 7.04下載頁,裡面有分三種版本,Desktop Server Alternate,各版本又分x86與amd64.就選擇desktop吧,alternate版具救援模式,可以載下來備用.若想取得免費CD請點這裡,我大概2個禮拜就收到了.

2.開始安裝 (*在設定網路好前的步驟最好做個筆記,因為開始安裝就沒辦法看了)
大部分的人會把windows安裝在c槽,也就是第一顆硬碟的第一個partition(分割區),就算是安裝在其他槽,windows還是會把開機檔案放在第一個partition,因此得另外準備一個給ubuntu使用.如果你沒有多的partition得用軟體切出一塊,無論如何請務必看"挪出空間安裝 Ubuntu".再來就可以放進cd開始安裝了,安裝步驟請看"圖形介面安裝指南"每個步驟都有圖片指示.切記分割區要選好,帳號密碼請牢記,以後會常常用到.
安裝完成後多重開機選單也會自動設定好,可選擇要進windows或ubuntu.如果沒看見windows選項請自行新增,參考"增加 Windows 開機項目".

3.進入桌面
自行熟悉一下操作介面,設定解析度,字型,桌布...
認識Terminal(終端機). 所有的事情不可能全靠滑鼠點選完成,必要時還是得透過文字模式下指令(就像下面的網路設定).這邊有兩個網站(網址一, 網址二)列了一些基本指令,以後可以慢慢看.
另外,你在桌面底下都是以"一般使用者"的權限在操作,如果需要"管理者"權限時,系統會跳出視窗要求你輸入密碼.而在指令模式如果想提昇權限時,記得在指令前加sudo,這個指令就會以管理者權限來執行,如sudo apt-get install ...

4.設定網路
adsl用戶:請看"設定ADSL網路連線"
dhcp用戶:系統->管理->網路, 選擇網路連線->屬性->使用dhcp
打開firefox看看是不是成功連上線了.
可以看一下常見問題:Ubuntu7.04 FAQ. 或是看一下使用手冊,有很多想做的事情.

5.安裝軟體
(1)透過apt-get指令,軟體可以自動下載,安裝,設定.什麼是APT? 指令的使用下面這個網站寫的很完整:Apt-get使用指南
(2)Synaptic圖形化套件管理工具,它把套件庫可以裝的軟體都列出來了,透過標記的方式即可安裝/移除.參考:HowToUseSynaptic

6.安裝中文輸入法
如果選擇繁體中文安裝作業系統後,中文輸入法應該已經有了,系統->偏好設定->SCIM輸入法設定
自行安裝,設定的步驟參考:UbuntuL10n

6.推薦軟體
Automatix2-套件管理程式
PCManX-BBS
emesene-MSN
amaroK-音樂播放
AcetoneISO2-虛擬光碟
StartUp Manager-GRUB圖形介面管理程式
Nvidia顯示卡驅動程式
ATI顯示卡驅動程式, 成功安裝x1400
Compiz-桌面特效
VirtualBox-虛擬機器
Wine-Windows的模擬器
Gnome-RDP-遠端桌面
MONO-.Net程式撰寫
epsxe-玩ps遊戲
跑 WoW (World of Warcraft)
其他像燒錄,看影片,FTP下載,抓bt,驢子,JRE,RSS閱讀,網頁編輯,c語言撰寫,RAR壓縮,磁碟分割...請參考Ubuntu6.10Guidetw

如果能走到這一步,大概就能做你平常在windows下做的事情,其他像是遇到電視卡無法驅動,中文變亂碼,影片需外掛字幕...等問題,只能靠自己解決了,當然要找我一起討論也歡迎.
至於要玩到什麼程度端看個人摟.

右邊的learning linux區塊列了幾個常逛的網站
媲美Windows Ubuntu 10大應用程式-裝來玩玩看吧
17 Must-Have Free Apps for New Ubuntu Users
GetDeb-還未收入套件庫的新軟體,可以多來逛逛
如何在Windows NT/2000/XP上安装Ubuntu-特別的安裝方法
重新安裝windows後,無法進入ubuntu. 請看:HowtoRestoreGrub (限Alternate CD)

2007年8月17日 星期五

終於出太陽了

很少看見陽光會感到欣慰的,除了今天.

禮拜二是我抽兵種的日子,體檢結果拖這麼久以為可以當替代役的,不過我也不是那麼擔心啦...要上課的關係只好請老爸代抽了,反正我自己的手氣一向不太好.下午同學就丟msn來告訴我了,原來是中了陸軍,94個人抽有9支海陸,機率其實也蠻高的,頓時覺鬆了一口氣.很多人都畏懼當兵,在我想法裡認為這是人生的歷程,一種新的體驗,所以也不是那麼排斥,錯過還覺得有點可惜(頭殼壞了?),如果今天抽到的是海陸我還會這麼說嗎?我想是吧,我會從容的應付,而且好好的噱大家一頓.

學長的論文看的差不多,把問題整理起來今天一併討論完,實做流程上也都清楚了,不過有很多background的東西都還很淺,我怕一一survey時間恐怕不允許,另一方面也要開始熟悉開發工具與其程式語言.老闆又指派新的project,他總是藏了許多可以耗損我們腦袋的東西.Multi-channel Digital Wireless Speaker(多聲道數位無線喇叭),多聲道之下需考慮同步播放的問題,另外得學一下網路的東西(802.11,NTP,RBS,RTP...),還有訊號分析.

晚上在論壇看到一套軟體-PhotoZoom,發文的大大標明說"放大圖片不失真",隨然覺得豪洨還是抓來玩玩,試了一下發現效果比想像中的好,最起碼看起來比較順眼,不像其他繪圖軟體有失焦的感覺或鋸齒狀,但有些圖片放大以後變得有點假假的,直接來官網看個比較圖吧.我抓了第一張人臉的原始圖檔下來測試,放大後比官網的稍微模糊一點點,不知道跟參數的設定有沒有關係,不過比起ACDSee做出來的確實有好一些.

2007年8月13日 星期一

無名相簿瀏覽器final

delay了很久終於完成.這是上個月設計的一個程式,主要用途是在瀏覽兼下載無名相簿,之後又添加了一項"隨選"的功能,可以依自己設定的條件來挑選相簿主人,操作容易,設計簡樸.

按此下載本程式(32kb壓縮檔,最後上傳:08/14 01:16)
※程式由Visual Studio 2005撰寫,使用前需下載必要條件.Net Framework 2.0

操作簡介:
打入無名帳號(這邊借用gyba來測試一下),按下確定即可列出所有相簿.選單具自動完成與歷史紀錄功能.

點選相簿會以分頁的方式呈現內容.

"全部下載"就是把這本相簿所有照片打包,路徑可自行設定.分頁按右鍵可選擇關閉.

點選照片可以看原始大小的圖片,再點選可以另存新檔.

再來說一下另一項功能"隨選",依自己喜好設定條件,打勾表示需要這個選項,第一次搜尋較花時間.

結果出來了,下圖就是一個合乎條件的相簿主人,有沒有謊報我就不知道了,不滿意可以再按一次.本程式不保證每次挑出來都是正妹or帥哥,請小心使用.

一些心得:遇到批次作業,網路傳輸的問題都得用thread來輔助,單線執行會讓你的程式一直處在等待中,這也是我頭一次使用thread,其原理學過os的都懂,只是要套用在自己的程式上往往得思考一番,Critical Section問題也是常常碰到的,vb.net都有對應的解決方法(Monitor,Interlocked...).TabControl控制項的運用也得透過一些技巧.字串分析是最耗時間的,如何切出自己想要的部份,都要多方觀察與測試.區區一個"隨選"功能也花我很多功夫,要兼顧效率與負載,避免不需要的重複動作.

當然bug是永遠存在的,程式寫到最後也不是我能控制,最大的問題大概就是"何時,如何結束不需要的thread".如果遇到錯誤視窗跳出,請按"繼續"鈕通常可以繼續使用,如果視窗突然消失也不要太驚訝,這些都在正常的操作範圍.也歡迎大家回應給我.
目前已知的bug有:
1.新分頁的圖片還未全部load完成,按下關閉會造成嚴重的錯誤.
2.隨選功能大量連接無名的伺服器,連續玩30次可能會暫時被封鎖,浮動ip者斷線重連即可.
3.無法使用滑鼠滾輪捲動頁面.
4.超吃記憶體.
...(待發現)

※如果想要贊助請匯款到我paypal帳戶(還未申請).

ref:
體驗.NET Multithreading的快感-以VB.NET開發Thread Pool式網路芳鄰掃瞄程式
Understanding Threading in .NET Framework using VB.NET
Multithreading in .NET - The Code Project - .NET
達可鴨的池塘總有好的idea

2007年8月11日 星期六

陰雨綿綿

這次回台中算是補慶祝父親節,雙手空空的,最大的禮物莫過於88節當天打電話回去慰問.週末下雨的時間居多,一些行程都得取消,帶了一些電影回來,家裡卻沒dvd光碟機.三兄弟難得同時在家,爺爺奶奶都會準備好料等著我們,碗公總是讓我忘記吃下多少飯.家裡的床也睡的特別安穩,在台南總是醒的比鬧鐘還早,可能是有壓力的關係吧.
和女朋友在特賣會買了一件levi's 509卻不敢拿回家,偷偷寄放著...我什麼時候變這麼孬了.衣蝶也封館特價,不過沒時間逛;世貿電腦展得花門票錢,去又會買一些有的沒的.
學長的畢業論文120頁,額外還有8篇要k,花了兩個禮拜還沒看完,看英文的東西專注力總是特別低,原本想說利用這兩天好好的...不可能.
一些想完成卻未完成的事情,一再拖延. 明天回去的車票也還沒劃位,看來得用站的了...

2007年8月6日 星期一

Visual Studio Tools - Spy++

Spy++來顯示執行中的程式的各項資訊,包括執行緒、開啟的視窗,以及隱藏的視窗等等。有了這些資訊我們可以透過API呼叫的方式來控制應用程式,不需要了解應用程式如何implement.

以Windows Media Player為例:
開啟Spy++,選擇紀錄檔訊息.

將搜尋工具的準星移到目標程式上的最外框.訊息中的"文字"與"類別"是我們需要的.

先清除全部,再選擇WM_COMMAND.按下確定後開始監控.

執行想擷取的動作,如"播放/暫停".Spy++會收到訊息.

訊息欄位說明:第一欄-訊息編號. 第二欄-視窗代碼. 第三欄-訊息代碼:S(代表送出),R(代表收到),P(代表posted),S(代表訊息已送出,但是安全管制設定禁止你取用傳回值). 第四欄-訊息、參數和傳回值選擇訊息的屬性.
選擇屬性.

wParam的16進位值是我們需要的參數.

開啟VB.Net專案,宣告參數及Function.
Public WM_MCOMMAND As Integer = Val("&H111")
Public WM_KEYDOWN As Integer = Val("&H100")
Public WM_CHAR As Integer = Val("&H102")
Public WM_KEYUP As Integer = Val("&H101")

Declare Auto Function FindWindow Lib "USER32.DLL" ( _
ByVal lpClassName As String, _
ByVal lpWindowName As String) As IntPtr

Declare Auto Function SendMessage Lib "USER32.DLL" _
(ByVal hWnd As IntPtr, ByVal Msg As Integer, _
ByVal wParam As Integer, ByVal lParam As Integer) As Integer

開啟WMP後,Call Function來執行播放/暫停的功能.
Dim wmplayerHandle As IntPtr = FindWindow("WMPlayerApp", "Windows Media Player")
SendMessage(wmplayerHandle, WM_MCOMMAND, Val("&H4978"), 0)

範例程式下載

Ref:
HOW TO:以程式碼模擬滑鼠和鍵盤事件
WM_COMMAND Notification

2007年8月4日 星期六

Multi Channel Digital Video Broadcasting Streaming Server

Multi Channel Digital Video Broadcasting Streaming Server(多通道數位電視影音串流伺服器),這是老闆派給我的第一個project,它是一個成大學生的專題,而我的工作就是練習架設一次,雖然有文件可以照著做,對於linux不熟悉的我,還是進行的很不順.

架構如下,Serer端由linux架設,接有數位電視天線,Client藉由網路向Server要求,以達到四處可以看電視的目的.

由於linux核心尚未整合,需另外下載driver及kernel source自行安裝.數位電視棒是usb介面,firmware也得另外下載,透過指令dmesg|grep dvb查看硬體是否啟動.再來就是安裝dvbstream,及server control軟體,client透過Real-time Transport Protocol接收,telnet方式轉台,這就是架設的流程.

手中的指令是有限的,遇到什麼問題都得上網搜尋,操作介面不同習慣也不同.編譯錯誤時往往束手無策,即使有error message也不知道如何處理,只能另外尋求安裝管道,這也是挫折最大的地方. 數位天線需要在沒有遮蔽的地方訊號才夠強,在我房間裡面訊號都斷斷續續的,buffer要填滿到100%才會送出,測試時不曉得client到底有沒有收到,最後在lab終於搞定,證明流程上沒出問題.另外還學到了一個實用的工具Visual Studio Tool的Spy++,他可以紀錄應用程式改變動作時送出的訊息,如此就可從自行編寫的軟體去控制其他的應用程式.

Client端目前限定在windows application(base on .net framework),學長說老闆希望改用web service方式呈現,達到有瀏覽器的地方即可觀看,搞不好下一步就輪到我了.

Ref:
LinuxTV.org - Television with Linux
用Linux看數位電視

2007年8月3日 星期五

Lab歡樂時光

話說暑假在lab的時間都不長,都是有特別的事情才過去,自從體會到這邊這邊電費後,大概以後都會待在學校吧...今天是第一次留這麼晚,不過lab的學長幾乎都還在,這是很操的意思摟? 晚飯時間學長拿出家鄉寄來的黑鮪魚(驚),原來他們每個禮拜都會自己煮東西來吃,58%高粱醃製,250度烘烤,看來我真的選對日子了QQ.雖然已經吃飽了,還是忍不住要喀上好幾口,奠定了黑鮪魚在心裡的感覺,相信我會更有動力留在lab的.

搬來五樓後漸漸習慣,記得第一晚還有點睡不著,便宜總是要付出代價的,除了每日要爬五樓,房間真的很熱,脫掉上衣得過且過啦,反正夏天也快過了(是嗎@@).初來時水管有點不通,房東弄了罐通樂,按...原來這個東西這麼臭,看來他想徹底的讓我封口,味道久久不散大概被牆壁吸收了,光想到就讓我做噁,害我得開兩包熊寶貝把味道覆蓋過去,別騙人了其實有毒氣體還是被吸進去,今天打算買去味大師看看有沒有效了...

電費的問題阿銘提供了不少意見,要看電錶是否有被偷改,可以觀察封鉛有沒破壞的痕跡,問題是我連鉛封都找不到...用磁鐵可以讓電錶轉慢一點,壞硬碟裡面的不知道夠不夠強.考慮跟鬍鬚借個電錶來測量,不過要偷偷的,被房東發現了不知道會怎樣.

2007年8月2日 星期四

這個家越來越黑了

最近比較忙,幾天沒更新網誌了,有股怨氣要發洩一下...

話說前幾天對面要搬走的房客突然來找我,他說這邊的電錶比較快...夭壽咧,他拿出一張紙寫了好幾條公式,一邊解釋給我聽,物理的東西我是忘的差不多了啦...結論就是他測了好幾遍,只開兩支40W的日光燈一小時,電錶會計成200W,也就是快了2.5倍,到其他地方測試都有合乎他的算法...講到一半房東太太突然出現(驚)@@",她說有請電力公司測過,也不知道真假...我們沒具體證據也不好說什麼...

月底也是繳費的時候了,驚覺竟然如此的多,125度x3.5=438,拜託我搬來20天(扣除回家3天),沒冷氣,只用過一次熱水器,只用電扇不用吊扇,白天不開燈,晚上一半時間開日光燈,一半時間開檯燈,電腦出門關機,睡覺也關機...想當初在經國新城根本沒有省電的觀念,出門電燈電腦沒在關的,夏季每天都要吹2,3小時的冷氣,最多也才500初...最扯的是房東還跟我說3f有人一個月才一百多,阿是都點蠟燭的喔...

當然不只我摟,噹噹10天70度,比我還慘,她白天都在lab天黑了才回來,莫非lab的冷氣錢寄到家裡來.文欣住滿一個月150度,不過有10餘天是在彰化,多個冰箱應該也不至於多這麼多~~~

房東說電費以3.5計算,是一個平均數,台電分段式收費,用越多花越多,無分地域性,只有營利與非營利之差,且冬夏電費有分,全部以最高段來算:
夏季3.74 非夏季2.9 平均只有3.11 ,雖然說夏天用量會比其他季節來的多,不過差值還是有點距離...

看來我也要來計算電錶的轉數了,可惜對面的房客已經走了,得重新整理公式...
以後做什麼都要斤斤計較了,考慮在大門口貼個陰宅之類的...

Ref:
台灣電力公司-電價表