星期六, 3月 10, 2007

換環境

試著在Dev C++寫稍大一點的程式是一件很恐怖的事,終於在昨天體會到了,不用專案即可單檔編譯一向是Dev C++顯著的優點,這對初學者而言非常的方便(我到現在還是初學者XD),但是昨天試著建構一個屬於自己的Data Structure Library時(完全不用STL),多檔連結可謂是dev c++的災難,用筆電字小,長期寫下來著實勞累,不得已,暫時換至桌上型+Visual C++ 2005 Express Edition,老實說我也不是那麼喜歡Microsoft的東西,但是僅我所認識的 Editor + Compiler 只剩CodeBlock,呃,好是好了,但是其語法顏色好像七彩霓虹燈一般,不甚習慣(我一般只有keyword 和string不同顏色),暫時且戰且走吧。

此library也只建構了Stack和Binary Search Tree,連一個能操控的Iterator Class都沒寫,看來可以盡情的發揮寫程式的心情了XD

---
小白+大螢幕 = 好的寫程式環境

星期五, 3月 09, 2007

更新

如果在做資料性網頁時,盡量保持一個原則,不要翻頁,盡量在一頁顯示重要資訊,所以這一次的更新中,採用隱藏table,左邊為課表,右邊為課程資訊,事實上可以更為簡化,可能會再做更改吧。

星期四, 3月 08, 2007

efang

親愛的宜芳

生日快樂

---

早睡

這學期受到cll老師影響(這名字有仿Josh對於cyy的命名XD),每天過著十二點睡七點起床的生活,剛開始不甚習慣,有很累的感覺,後來越來越習慣,也不太需要鬧鐘,自己就會比鬧鐘早醒來,人跟機器的競賽,似乎有一點有趣:) 身體好很多了,生活也很普通,過著專業念書的生活,有朋友嫌我一個禮拜生了14篇blog有點多,呃,我個人是沒有想那麼多,想寫就寫,有點像散記,沒有那麼專業,所以就將就點吧。好玩的一點是,我和我室友被cll老師在課堂上對學弟妹說,你們的學長很認真的早睡啊,上課都不會打嗑睡,但是有點抱歉的是,我下課會一直睡啊。

筆電對於我這學期上課的影響度達到前所未有的高,每天都要擔心用電問題,卻真的沒有一天把電用完過(螢幕調最暗,CPU速度調最低)。感覺上,這樣子的生活也不錯

最後我想說的,有看我blog的十多個人(假設StatCounter可信),有沒有人要響應我的早睡運動,響應的送台客照一張XD。

---
不過也不得不說,五天中三天八點有課XD

來一點不專業的

早上心生無聊,用LaTeX生了一篇作業題目出來(有需要),看到的人大為驚豔,我卻甚為漸愧...因為我並沒有做很細步的調整。

今日上計算機組織上了一個很簡單卻很重要的語言,事實上我們可以做成如下論述

  • RTL Register Transfer Language 針對整個Computer Organization 的 microoperation做描述

  • VHDL VHSIC Hardware Describe Language 針對boolearn function 抑或是整個電路圖描述
看起來很像,事實上一點都不像RTL相較之下還算高階一些,register 可是由flip flop做出來的,但是VHDL卻要實作整個flip flop(當然,好一點的軟體都會內建寫好的function),兩者的語法我不多做描述,google一下都有。我想說的是。
在撰寫VHDL時,你是在對電路做描述,而不是在寫高階語言,在寫作時,應對電路存有一個大局觀

這是一個很簡單的概念,也不難,問題出在那?VHDL有for, if, case switch, while, 甚至連bit vector都有了,你寫起來很像一個高階語言,但是不代表他如你所想的

if(K==1) R1 <= R3;
else R1 <= R2;
這樣子的程式碼在C/C++等高階語言中,大部分都是循序執行,看完if再看else,如果if成立,program根本不在乎else發生了什麼事。但是在VHDL中,這個if else乃是同時被執行的,意思即是,K只有0與1,所以我們會在R2和R3 assign 給R1之前,加一個K的2 to 1 multiplexer ,就可以完成選擇動作了,這也是同時被執行的意思。

那麼我們再來看一個在電路中根本不存在的東西for,那麼這樣子的東西到底怎麼樣被實作的?答案也很簡單,原地把程式碼展開,使得一個for是一個一個依序執行的變成平行執行(實際上當然沒有那麼簡單,可能還要加一個clock),簡單而言for如果跑了10次,那麼assembler就轉成十行程式碼,這或許是最快的解法,如果真的要學會VHDL,我還是得對背後的運作原理多多下功夫才行。

---
聽完今天的課有頓悟的感覺。

星期二, 3月 06, 2007

學習

從隨機客的課堂上,我想可以學習到很精采的演算法與資料結構,這是無庸置疑的,但是他更想教給我們的是做學問的態度,原因無他,我上課只有半年,但是做學問可能要做一輩子,顯然,他所述說的,與我從Josh看到的金次述說強調重點不同。

不要做一個verifier,而做一個prover或presenter,此乃知易行難的事,以我的聰明才智,我還要學很多很多才看會不會用嚴謹的數學語言證明某些事的存在。我從高二開始教別人寫程式語法,到大二教人學習寫C++(以程式語言的角度),有時候在準備時,真的深深的覺得,懂了並不代表你可以很嚴謹的說明出他是什麼,以前我總是討厭嚴謹的東西,現在回頭想想,嚴謹的東西才能讓自己的思考趨近於完備。以教授一個"物件"的概念,我還是翻了"世紀末軟體革命"的chapter 2,我才照本的宣科的解釋(再加上自己的見解與舉例)。現在想想,我的學習和教授兩件事都有很大的進步空間。

---
昨天當場務太累,連複習都沒了...

星期一, 3月 05, 2007

有關"序號"這回事

每個人都有過重灌繽紛的精采時代:)。

blueforest /* 淋雨是另外一種知道自己想法的方式 */ 說:
WIN98 ME的序號裝到都會背了
blueforest /* 淋雨是另外一種知道自己想法的方式 */ 說:
只要是會重灌的,我相信都經歷過這種時代
blueforest /* 淋雨是另外一種知道自己想法的方式 */ 說:
我背的是Windows 2000序號
Josh Ko 說:
XD
Josh Ko 說:
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
blueforest /* 淋雨是另外一種知道自己想法的方式 */ 說:
哇考~
Josh Ko 說:
Office 2000 的樣子 XD

星期日, 3月 04, 2007

寫ADT

有時候,寫簡單的ADT真的會感到厭煩...感覺上都在做同一件事,只是把名字換一換而己。

---
但是不寫也不能說你會..XD

星期六, 3月 03, 2007

論重灌

前幾天剛好重灌到一個讓我覺得慘不忍賭的電腦,事實上頗有感觸

當然,如果能跟Mac OS一樣,長期不重灌而依然保持一種穩定,這當然是我們這種只會基本修電腦人員所最為樂見的,只是很可惜的是,大部分的人,還是在使用在不甚穩定的Windows 系列。依我現在的使用習慣,就算是使用Windows仍然可以撐到一年不重灌而保持一定的速度(當然,沒有突發的狀況),以前的我呢,一天重灌三次都不當一回事...只是經過這些年,我還是追求一個穩定的工作環境吧。

有些人看我重灌速度就是那麼穩定,就是還不錯的狀態,很多人問我怎麼灌的,事實上,我灌電腦也沒有用什麼很特別的技巧,大家都會的重灌方法,老子有言,順其自然,我一般都使用原版,以及最常使用的軟體版本(當然,會挑過,最好軟體小速度快),若要說我跟大部分的人有什麼不一樣,就是,我大概會挑一下軟體,但是這些軟體,對於電腦稍有程度的人是很常見的,我從來不覺得使用foobar Firefox有什麼特殊的,該使用的就灌一灌,電腦的調校軟體就不要灌了,就我的經驗中,灌了調了,就不穩定了,依現在電腦本身的體質,應該是不需要做很特殊的調校就足以應付一般所需,若有特殊需求的話,就盡能力的把電腦配好一點。

Windows XP 我堅持使用原版而不使用任何調校版(最有名的就是我高中時代的SuperXP),更新一定要裝,怕WGA要不破解,要不找正版序號(幸好我們現在是學生,還有校方授權),軟體要用才灌,不要灌一堆有的沒有的,尤其是調校,就算再會用,我還是逃不掉一年要重灌一次的命運,這生命週期太短了。

怎麼樣讓自己使用電腦變快,不是在電腦重灌上下功夫,而是在自己的使用習慣上下功夫,不要亂灌,不要讓自己做一些奇奇怪怪的事(如果有不得不的原因要做,防火牆, adwarew灌一下,這是治標不治本的方法),防火牆,基本的有就好了,根據google原則中,大部分的人都是善意的,也不會有人真的閒到每天入侵你的電腦。

灌電腦就一句話,順其自然

現在的電腦的配備不至於太慢,所以,不要再花心思讓自己的電腦變的快而不穩了,變的又快又穩是可能的,但是我不會,因為這不是我的本業,我的本業是寫寫程式,打打電腦,而不是操出一台電腦的效能極限。

Free Loop

忽然聽到這首歌,甚有感觸,是一首可以讓我repeat again and again的歌


Free Loop (Daniel Powter, Daniel Powter, 2005)

I'm a little used to calling outside your name
I won't see you tonight so I can keep from going insane
But I don't know enough
I get some kinda lazy day
Hey... yeah

I've been fabulous through to fight my town a name
I'll be stooped tomorrow if I don't leave as them both the same
But I don't know enough
I get some kinda lazy day
Hey... yeah

(Chorus)
Cos it's hard for me to lose,
in my life I've found only time will tell how to figure out
How we can, baby, we can do a one night stand, yeah...
And it's hard for me to lose in my life,
I've found outside your skin right near the fire
How we can, baby, we can change and feel alright

I'm a little used to wondering outside the rain
You can leave me tomorrow if it suits you just the same
But I don't know enough
I need someone who leaves the day
Hey.... yeah

REPEAT CHORUS
REPEAT CHORUS....

課程更新

閒來沒事,自己做了一個課程網頁,老實說就只是把sidebar上的schedule複製貼上,再加上一些課程網站資訊,等以後有多一點的資訊就隨時更新吧

---
課程網站上線的竟然只有兩個....

星期五, 3月 02, 2007

基礎英文

沒錯,這是一門重修課,誰叫我大一下如此帥氣,上到期中考之後就都不去上課了XD,選了是高佩倫老師的課,我在大一的"基礎英文寫作"給予她的教導,那對我而言是少數會讓我認真上的英文課之一(所以我英文從來沒好過XD),雖然她提及很多可能會發生的問題,但是我覺得一切都還好,會慢慢克服的。跟大一上課,而且是這種互動高的課,還是有一點不習慣,原因,我早己脫離這種搶著發言的時間很久很久了XD

此外老師還跟我說了很多事,還包括了朋友...慢慢來處理吧。

星期四, 3月 01, 2007

資料庫系統

database system,老師為上學期就已認識的老師,所以期待度平平,上課用書為 Fundamentals of Database Systems, 5/e by Ramez Elmasri, Shamkant B. Navathe,我對資料庫完全沒有比較好一點的概念,所以也是一門蠻值得上的課,上課分成兩節使用SQL Server 2000實作(這好像是M$的東西),一節講述概念,我也不知道這樣子的上課方法好不好,只是覺得很有趣罷了XD ,但是我有問題,為什麼不是用MySQL呢..XD

---
人生吧,就上課,不要想太多

開玩笑

什麼時候我的約會可以跟場務一樣多...

---
禮拜五聽說要去實習足球場務XD

星期三, 2月 28, 2007

228

228對我而言的意義是什麼,呃,早上有早餐聚,晚上有工院盃兩場籃球場務到晚上十點。此外還有更重要的

Josh Ko 生日快樂

發這種生日文好像不符合我的style,但,高興就好:)

星期二, 2月 27, 2007

今日上課

"資料結構與演算法"(教科書為CLRS)嗯,這學期比上學期有趣的多(就課程提鋼而言),且與隨機客接下來要上的東西有驚人的相似性...不過...第一個作業是,建一個binary search tree,然後假設unbalanced,試做方法讓它平衡之,我沒寫過,不過應該不會太難寫,反正,也是頂有趣的。

這學期似乎越來越有趣了XD

踩地雷

又完成,這次是在Java 上的console mode進行測試,由於只是單純的程式碼轉換,大約208行,所以還算順利,也有用到Java的Generic中的container(只是簡單的運用),只是由於沒有operator overloading,所以要取得ArrayList中的元素,得用ArrayList.get(i),操作上不是那麼直覺,而且,並不能回轉reference(雖然這某程度的破壞data abstraction),也不能剛ArrayList.get(i).length(再此假設每一個元素都是一個fixed sized array),是較不適應的一點,不過,除了此之外,利用Ecilpse寫作愉快,是一個相當強大的editor,我還不會用裡面一些較好用的功能(程式碼自動格式化,選段註解,這些都自己做習慣了),唯一比較需要的是刪除整行為Ctrl + D,不錯用,但是跟ConTEXT, Dev C++, PCMan 三者皆為Ctrl + Y,大異其趣,不過Ecilpse可以調,也不是那麼麻煩就是。

---
進行計畫最後一步XD

星期一, 2月 26, 2007

連續一個禮拜

工院盃很神奇的被人拖去當場務了,主要是籃球,但是我是一個連籃球規則都不懂的傢伙,還好室友是一個很聰明的人,一學即通,但是這個禮拜還是一樣的忙。

今日上"組合語言與系統程式",上課用書為System Software: An Introduction to Systems Programming, 3th Edition,. Person Education, Inc. 老師說可以用中文版(系統軟體:系統規畫導引),呃,我對中文版沒有什麼興趣,期末報告為一人一組交一個assembler ,似乎是一個還不錯有趣的作業(或許也有可能簡化至字串轉換)。課程很擠,雖然有一點點小失望,但是期待還是一堂不錯的課。

筆電今天下午修好,acer打電話來,外殼錢照算,我有說明螢幕訊號不穩定,他換了一個新螢幕給我,不用錢,但是他說,我的螢幕傷痕累累,下次要換可能就無法算保固了(如果再這樣子搞下去的話XD),建議貼個保護貼,呃...我那時候怕燈照會反光才沒有貼保護貼的,所以這次電腦回來,大概借人機會極少,也要更為小心愛護了。

筆電

因為許久之前的外殼刮傷(借人時造成的),螢幕訊號不穩,今日送光華附近的直營店,外殼收1.5k,稍嫌貴了些,不過是與人分擔,所以就最好不要有下次了。

用筆電用習慣了,看桌上型的螢幕竟然覺得好大好大...XD

第一次

今天早上趕去台大聽隨機客上的演算法,精彩可期!!那自己系上的演算法呢?不予置評,稍微算一下,這堂課會會花很多時間和精力於其上,但值得,今天主要上的是隨機演算法,聽起來不算吃力,不過以後沒有良好的基礎,就不知道了,就且戰且走吧:)

---
聊個天,一小時XD