星期日, 12月 31, 2006

2006 vs 2007

首先,我得感謝的是我爸媽,總是默默的支持我,雖然我在這邊過的不是那麼快樂,但是我已不計較當初他們幫我做的選擇。相較之下,我得要視為一個挑戰,而且有能力突破現狀。

這一年來似乎發生了不少事,似乎最精采的事集中在後半年...前半年相較於後半年可謂之頹廢,而且還不小心被別人列出黑名單,但是現在卻能高高興興的一起去家樂福,可謂是意料之外,相較於上半年對於 C++, OOP, GP 的瘋狂追求,或許那時候確實是一個人在過生活,宿舍四個人相處冷漠,也在上半年中學到人不可能一直在高處,追求programming的道理或許才是能帶給我真實的快樂和一定的意義。感謝maibells0在這一路上的幫助與陪伴,他永遠是我最好的朋友之一。

下半年(或者是說從暑假開始),認識了Josh Ko,無論在 programming 或 life 皆帶給我很正面影響的人(雖然生活作息不是XD),有人可以討論 programming 是一件很快樂的事,也從他介紹給我的東西知道世界之廣相對於自我的渺小,可謂是我2006年遇到的最佳好友,感謝他。

很快的進入開學了,換了新室友,不過因為我自身生活習慣太差,即將搬離這個美好的寢,但是認識了Morshues, yagami, LoveErica 這些人都是我的最佳室友,我搬出去我會想念的,gb014388, fire7617,雖然一個常騙我(玩笑性的),一個常嗆我(當然也是玩笑性的),但是不得不說,你們在生活上助我甚大,非常感謝。能夠居家型的過生活,就是一個最好的生活,讓我們一起朝居家型型男前進吧!

女性部分,chris 和 mandy 從年頭認識到年尾,都是一樣的帥氣和慵懶(我真的找不到別的形容詞),eating 和 clara 成為好友,都是我很感謝的人,最該感謝的,刷姊,我一直把你當刷姊看嘿

最後,認識了efang是我最大的幸運,我想,就這樣子和她過下去,人生就此回歸於簡單而平淡(感謝Josh Ko徒弟aoc90058幫我點播)

---
我知道這篇或許很廢話,很普通,但就是想po
---
補充完女生,相較之下,我的下半年真的是否極泰來

王婧-勇敢

/* 這也許是一首很普通的歌,但是對我而言別具意義 */
歌曲:勇敢
歌手:王婧 專輯:我要的未來
歌手:王婧
詞:昊宇
曲:lee jae hak

喜歡就是不需要有什麼道理
古董可以拿來做個玩具
下雨天氣不一定要撐傘才出門去呼吸
真心我不要用嘴巴說明
愛你或許因為你的表情
灰姑娘的悲劇
王子降臨出現奇跡
因為你
我勇敢學會向前看
才知道世界另一半
未知的愛
謝謝上帝把你送來
要我誠實面對愛
愛上你我不怕孤單
眼神藏了心情很多秘密動機
努力揣測你愛我的證據
失敗可以忽略當作練習相信未來很美麗
真心我不要用嘴巴說明
愛你或許因為你的表情
灰姑娘的悲劇
王子降臨出現奇跡
因為你
我勇敢學會向前看
才知道世界另一半
未知的愛
謝謝上帝把你送來
要我誠實面對愛
喜歡就是不需要有什麼道理
失敗可以忽略當作練習
這一切因為你
我勇敢學會向前看
才知道世界另一半
謝謝上帝把你送來
要我勇敢面對愛
只有勇敢學會向前看
才會知道世界另一半
未知的愛
謝謝上帝把你送來
要我勇敢面對愛

星期六, 12月 30, 2006

整理

最近整理,發現買的書好多沒有看啊...整理一下或許就可以來個寒假計畫了...應該是說,經過一個認真一半的暑假,更能了解如何在一個長期的假期創造出屬於自己的價值

星期五, 12月 29, 2006

圖書館

經過了一段時日於圖書館和宿舍來往奔波的日子,似乎有點習慣了,不過還是不喜歡讀書間,覺得還是很像集中營,哈,或許我的個性使然吧,不過昨日在宿舍一個晚上趕完所有作業,雖然品質會有所下降,但是專心的程度還是可以接受的,或許,想認真的態度才是影響最大...

--
我看到了在我開學貼在桌上的"持續努力"

星期四, 12月 28, 2006

思考

昨日找老師聊天,表明我大二上感覺上自己事實上並沒有學習到我想學東西,並且表示我想離開的意願,我和老師都極為認同自主學習的高度重要性,一個人每天花在不相干的事物是有可能耗費不少時間,但是這又跟系上風氣有關,老師也知道我的處境,也給我很多很寶貴的建議,同時,他也給了我一個我從未想過的問題,你怎麼保證新環境是否會克服你的問題,應該是說,你對於你想去的新環境了解嗎,很顯然的,我的思考還需要完備性

---
人生,還有太多太多事要學習

Mergesort

最近要交作業才會真正認真的開始思考合併排序的好用之處,在網路上所參考到的碼較少為template實作之,所以花了一點小功夫改寫和包裝,也還算方便,以下程式碼不算是我寫的,我只是就古狗大神找到的C code改成template型式,使用了vector,這樣子會使程式碼較為簡潔而較能夠專精於整個程式的運作程,對我而言是一個不錯的學習方式


template<class T>
void MergeSort(vector<T>& u){
merge_sort(u,0,u.size()-1);
}

template<class T>
void merge_sort(vector<T>& u,int low, int high){
if(high>low){
merge_sort(u,low,(low+high)/2);
merge_sort(u,(low+high)/2+1,high);
Merge(u,low,high);
}
}

template<class T>
void Merge(vector<T>& u, int low, int high){
vector<T> temp;

for(unsigned int i=low, j=(low+high)/2+1 ; i<=(low+high)/2 || j<=high;){
if(i>(low+high)/2) temp.push_back(u[j++]);
else if(j>high) temp.push_back(u[i++]);
else if(u[i]>u[j]) temp.push_back(u[j++]);
else if(u[i]<u[j]) temp.push_back(u[i++]);
else{
temp.push_back(u[i++]);
temp.push_back(u[j++]);
}
}
for(unsigned int i=low,j=0;i<=high;i++,j++) u[i]=temp[j];
}


補上在wiki找到的quick sort 轉成實際C++ code(也是使用vector實作之)

template<class T>
void QuickSort(vector<T>& u){
quicksort(u,0,u.size()-1);
}

template<class T>
void quicksort(vector<T>& u, int left, int right){
int l_hold=left, r_hold=right, p_pivot=0;
T pivot = u[left];
while(left<right){
while((u[right]>=pivot) && (left < right)) right--;
if(left!=right){
u[left] = u[right];
left++;
}

while((u[left]<=pivot) && (left<right)) left++;
if(left!=right){
u[right]=u[left];
right--;
}
}
u[left]=pivot;
p_pivot=left;

left = l_hold;
right = r_hold;

if(left<p_pivot) quicksort(u,left,p_pivot-1);
if(right>p_pivot) quicksort(u,p_pivot+1,right);
}

---
下一次可以自行試著寫寫看了,總覺得這個Merge的判斷會造成速度的問題

星期一, 12月 25, 2006

最近

發現,原來VHDL好好玩..XD
貼上一個可能會錯的程式碼,今天要把實驗做到有趣極了為止,晚點再po上簡化程式碼


library ieee;
use ieee.std_logic_1164.all;
Use IEEE.std_logic_arith.all;
Use IEEE.std_logic_unsigned.all;

entity fulladder7 is port(integer1,integer2: in std_logic_vector(3 downto 0);
i1,i2,s1,s2:out std_logic_vector(0 to 6));
end fulladder7;
architecture a of fulladder7 is
signal temp_sum, temp_sub: std_logic_vector(4 downto 0);
signal temp_sum2:std_logic_vector(3 downto 0);
begin
process(integer1)
begin
case integer1 is
when "0000"=> i1 <="1111110";
when "0001"=> i1 <="0110000";
when "0010"=> i1 <="1101101";
when "0011"=> i1 <="1111001";
when "0100"=> i1 <="0110011";
when "0101"=> i1 <="1011011";
when "0110"=> i1 <="1011111";
when "0111"=> i1 <="1110010";
when "1000"=> i1 <="1111111";
when "1001"=> i1 <="1111011";
when others=> i1 <="0000000";
end case;
end process;

process(integer2)
begin
case integer2 is
when "0000"=> i2 <="1111110";
when "0001"=> i2 <="0110000";
when "0010"=> i2 <="1101101";
when "0011"=> i2 <="1111001";
when "0100"=> i2 <="0110011";
when "0101"=> i2 <="1011011";
when "0110"=> i2 <="1011111";
when "0111"=> i2 <="1110010";
when "1000"=> i2 <="1111111";
when "1001"=> i2 <="1111011";
when others=> i2 <="0000000";
end case;
end process;

process(integer1, integer2)
begin
temp_sum <= integer1 + integer2;

if temp_sum >= "01010" then
temp_sub <= temp_sum - "01010";
temp_sum2 <= "0001";
else
temp_sub <= temp_sum;
temp_sum2 <= "0000";
end if;

end process;


process(temp_sub)
begin
case temp_sub is
when "00000" => s1 <= "1111110";
when "00001" => s1 <= "0110000";
when "00010" => s1 <= "1101101";
when "00011" => s1 <= "1111001";
when "00100" => s1 <= "0110011";
when "00101" => s1 <= "1011011";
when "00110" => s1 <= "1011111";
when "00111" => s1 <= "1110010";
when "01000" => s1 <= "1111111";
when "01001" => s1 <= "1111011";
when others => s1 <= "0000000";
end case;
end process;

process(temp_sum2)
begin
case temp_sum2 is
when "0000" => s2 <= "1111110";
when "0001" => s2 <= "0110000";
when others => s2 <= "0000000";
end case;
end process;
end a;


---
事實上現在就可以開始著手進行簡化工作了

星期四, 12月 21, 2006

趣事一則

這是在述說一段在民國九十年年代中期,師父(Josh Ko飾,金x獎x帝)在一緊急危難之中救了徒弟(Chen飾,金x獎最x程式角)並因此想讓其走向萬里一空的程式員道路,經過二年教導之後,徒弟終於不負期望的考上xx校資工系,但在偶遇的一次閒聊之中,發現其能力不符師父的期望,在師父在傷心與難過之下,立下了,不交作業我就開除你,於是徒弟在傷心未達師父期望之於,又怕自己被開除在即,展開了一連續查書翻書問人,自救到讓人落淚的故事

本故事乃真人真事改編,入圍金X獎十項,不看可惜

--
這年頭連掰東西都要很專業,至於有沒有這件事,我只能說,我是個看戲的

星期日, 12月 17, 2006

冷到一種極限了,開始思考怎麼樣把筆電當暖爐用XD

好貴的暖爐XD

星期五, 12月 15, 2006

Where'd You Go

今天所聽到的一首好歌,這是一首hip hop的歌,但是給了我即定以往的不同印象,是一首很能感動我心情的好歌,此首歌是述說一個故事。一個我所不了解的故事。
Where'd You Go 出自Fort Minor The Rising Tied

Where'd you go?
I miss you so,
Seems like it's been forever,
That you've been gone.

She said "Some days I feel like shit,
Some days I wanna quit, and just be normal for a bit,"
I don't understand why you have to always be gone,
I get along but the trips always feel so long,
And, I find myself tryna stay by the phone,
'Cause your voice always helps me when I feel so alone,
But I feel like an idiot, workin' my day around the call,
But when I pick up I don't have much to say,
So, I want you to know it's a little fucked up,
That I'm stuck here waitin', at times debatin',
Tellin' you that I've had it with you and your career,
Me and the rest of the family here singing "Where'd you go?"

I miss you so,
Seems like it's been forever,
That you've been gone.
Where'd you go?
I miss you so,
Seems like it's been forever,
That you've been gone,
Please come back home...

You know the place where you used to live,
Used to barbeque up burgers and ribs,
Used to have a little party every Hallowe'en with candy by the pile,
But now, you only stop by every once in a while,
Shit, I find myself just fillin' my time,
Anything to keep the thought of you from my mind,
I'm doin' fine, I plan to keep it that way,
You can call me if you find you have somethin' to say,
And I'll tell you, I want you to know it's a little fucked up,
That I'm stuck here waitin', at times debatin',
Tellin' you that I've had it with you and your career,
Me and the rest of the family here singing "Where'd you go?"

I miss you so,
Seems like it's been forever,
That you've been gone.
Where'd you go?
I miss you so,
Seems like it's been forever,
That you've been gone,
Please come back home...

I want you to know it's a little fucked up,
That I'm stuck here waitin', no longer debatin',
Tired of sittin' and hatin' and makin' these excuses,
For while you're not around, and feeling so useless,
It seems one thing has been true all along,
You don't really know what you got 'til it's gone,
I guess I've had it with you and your career,
When you come back I won't be here and you'll can sing it...

Where'd you go?
I miss you so,
Seems like it's been forever,
That you've been gone.
Where'd you go?
I miss you so,
Seems like it's been forever,
That you've been gone,
Please come back home...
Please come back home...
Please come back home...
Please come back home...
Please come back home...


星期四, 12月 14, 2006

興奮

每次Josh的blog總是帶給人驚喜,讓人興奮的睡不著覺~
我的工程數學期中考呢XD

星期一, 12月 11, 2006

99%巧克力

昨天因綠際會,獲贈99%巧克力一片,有上過笨版都知道這到底有多苦。以我自己吃的經驗是,一開始的苦是可以忍受的,但是隨之而來的酸味...真的會讓人想罵一聲髒話。把巧克力分贈鄰居好友,吃了一口之後,都是罵了一堆髒話+好苦

換了一種吃法,巧克力+奶茶(自己用奶茶粉泡的),是一種不錯的可以嚐試方式,還蠻香濃的,有興趣的人可以試試看

星期五, 12月 08, 2006

爆炸

經過好幾天的睡眠不正常之後,今天全數爆發....課是都有去上,不過睡掉了不少,老師還過來抓我脖子,也有老師說,yen3,起來,昨天幾點睡,我比個一之後繼續趴....體力完全耗盡.....

不過也可以知道...被老師認識之後上課能睡的機率太低了XD

星期三, 12月 06, 2006

趣事

Lucky貓的acm園地經過一陣子的沈寂,總算復活了,不過就其放設地點而言,從高雄私立道明中學,移至國立高雄中學,今天沒有查以前,我一直以為放在某間大學,想不到我的想法錯的如此離譜,不過,有個好網站就是好的XD

最近讀fundamental of data structure讀的甚為有趣,在amazon上查到第二版,不知道是真的還是假的,如果是真的,我可能考慮向天瓏詢問何時會進貨,看看有什麼不同

怪個性

最近念書,發現我的個性和高中沒什麼兩樣,喜歡大地方,喜歡安靜,但是不喜歡人多,我很喜歡圖書館,但是我不喜歡很多人的圖書館,擠在一起念書的情形會讓我喘不過氣,我也不喜歡自修室,那對我而言是一個集中營,我不喜歡這種壓迫的感覺

總合上述,我真是一個難搞的人XD btw,我今天找到一個人比較少的圖書館了,但是得騎車去...XD

星期一, 12月 04, 2006

台客背影

忽見得去年背影照一張,甚有台客風格(有人說,我本來就是台客),有趣,故放上來

星期六, 12月 02, 2006

資料儲存

上課時老師提及一個有趣的程式

#include <stdio.h>
#include <stdlib.h>
int main(){
int n=0x1234;
char *s = (char*)&n;
for(unsigned int i=0;i<4;i++){
printf("%02x ",s[i]);
}
system("pause");
}

這個程式有趣之處是所印出來的答案是 34 12 00 00 ,喔,跟我預先想的00 00 12 34是不一樣的,事實上,儲存方法沒有好壞,只是在管線設計時的傳輸資料的不同處,這就見仁見智了,這個程式在x86的電腦跑起來應該都是一樣的答案,但是在大型電腦或者是mac,我就不知道了。

寫程式

一剛始跟有沒有人陪有關係(笑),後來呢,跟自己的興趣比較相關,到底要做什麼呢,思考中

用程式發展程式,似乎是個有趣的方向(偏software engineering??) 再思考吧

星期四, 11月 30, 2006

小蠍

高中

國立成功大學資訊工程研究所正取



恭喜恭喜~^^

淡大資工冷了四年,總算要去享受南部熱情的陽光了XD

ps. 小蠍,彰中電研第二屆程設組教學長。第一個教授我寫程式的人

最近

好啦,最近認識我的朋友,都知道我發生了不少事,雖然這事對我而言是很突然,不過我想我會盡力去維持,哈,在這我很感謝在這一路上支持我的朋友(笑)

好啦,廢話說完,最近在上資料結構時,深深的感到無力感,我無法理解一個資料結構的期中考是用八十幾題的選擇題做為完成,沒有證明題,沒有程式寫作題,也沒有思考題,只有一堆的名詞解釋和簡單的程式推導,完全讓人學不到東西的考試,而老師出的題目我幾乎只能用瞬殺來形容,我自己又出了一題更難的給自己寫,也是出乎意料順利的完成,或許....我真的應該對自己要求再高很多,不然,我只會讓自己越來越懶惰,最近正在看DA的Tree,只是簡單的bianry tree而己,實作成ADT,大概再給自己幾天時間吧,畢竟我還答應人要把企畫書生出來,接下來就是red black tree,這或許對我而言會比較有趣一些(但是Josh Ko 畫成虛實樹,我喜歡這個style,笑)。

接下來,心定下來就是該好好衝了~(笑)

星期五, 11月 24, 2006

架bbs站

最近,系上的bbs站硬碟壞軌,我又剛好接了站務,迫不得己,重新架了一個站,不過,說起來也蠻簡單的,利用現成的說明書,即把東西架好,但是又可以看懂部分程式碼達成修改之目地,這我想,為什麼架bbs站是如此有趣的原因。

但是架站從頭架起,有點累,我承認我是個懶人(笑),故我也只是利用我之前架過的站,再做了一些簡單的修改,但是之前架過的站,整整花了一個禮拜,每天下課時間都在修改,所以...算是一個功能頗完備的系統了(雖然看compiler waring message還不少)

廢話不多說,還是繼續修正吧
telnet://bbs.csie.cgu.edu.tw

星期二, 11月 21, 2006

最近修電腦

雖然修電腦常常會是以重灌了事(我得承認,我是個懶人),但是最近修到的電腦都是一些看似嚴重,其實只是接觸不良的問題,算是不幸中的大幸,畢竟,資料或是硬體損失一時之間都是讓人難以承受

---
還好螞蟻事件不會再重演:)

星期一, 11月 20, 2006

期中考過後

生活又在三天內,從期中考的超級不正常,變成可以超級早起啦

我回來了XD

好啦

該回來了

星期一, 11月 06, 2006

電子學筆記部分電子化

這似乎是一個不小的功程,誰叫我打字慢呢,哈,電子化的是有關band pass filter
的部分,事實上,也只是做了一點公式推導而己

---
好久沒有寫blog了..Orz

星期日, 10月 22, 2006

在Windows下安裝MikTeX + ConTEXT

1. 下載 MikTeX 和 ConTEXT

MikTeX http://www.miktex.org/Default.aspx

ConTEXT http://www.inet.hr/%7Eedkirin/ConTEXTsetup.exe

LaTeX 語法標識檔
http://context.cx/component/option,com_docman/task,doc_download/gid,97/Itemid,48/

2. 各自安裝,如果安裝為預設路徑的話把LaTeX語法標識檔 LaTeX.chl複製到
C:\Program Files\ConTEXT\Highlighters

3. 開啟ConTEXT Options >> Enviorment Options 在 General tag中的下方有一個
language,選擇"繁體中文",重新開啟ConTEXT

4. 使得一個空白檔案存成xxx.tex

5. 選項 >> 環境選項 >> 執行鍵 >> 加入 >> 輸入"tex"

6. 選擇F9 >> 執行 >> "C:\Program Files\MiKTeX 2.5\miktex\bin\latex.exe"
>> 參數 >> "%n"

7. 選擇F10 >> 執行 >> "C:\Program Files\MiKTeX 2.5\miktex\bin\yap.exe"
>> 參數 >> "%F.dvi"

8. 選擇F12 >> 執行 >> "C:\Program Files\MiKTeX 2.5\miktex\bin\pdflatex.exe"
>> 參數 >> "%n"

設定完成

f9即是complie為dvi檔

f10為看dvi檔

f12為complie 為pdf檔

星期四, 10月 19, 2006

青出於藍

當初基於寫作業方便的心推薦同學使用LaTeX,他現在已經排出很漂亮的版,可見我對有關於美術的事,我還是沒啥天份...,不過,有人可以一起用非課內的東西,還真的是一件頗令人高興的事

---
排版的精要是,你要怎麼留空白

星期二, 10月 17, 2006

時間

事實上,大二的時間頗緊,一堆事要做,一個禮拜接了兩攤教學,還好都是教有關硬體以及我學過的東西,不然我還真的不一定應付的過來,作業一堆,不過到目前為止尚可勝任,但是要用LaTeX來交作業的話,勢必得把寫作業的時間拉長才行

我還沒有忘我自己的程式要練習,看來很有可能拖到假日了


---
LaTeX的預設版面還真寬...

星期五, 10月 13, 2006

LaTeX

用context + MikTeX 來做一個練習,效果還不錯,雖然還沒把編輯寫成一個執行鍵,只能慢慢的用指令來complie , 不過也蠻高興的,克服了不少問題,也大概知道怎麼做會比較好一點了

最該克服的是,LaTeX的常用符號...如\ {} ,我在一般的習慣上,我並不是用盲打來打這些符號,所以我可能需要練習盲打來克服吧

---
LaTeX比想像中的好玩,但是指令也比想像中的多..orz

星期三, 10月 11, 2006

聽錄音

在Josh 的blog中有一篇是這樣子的金次有感 約十分鐘,有很大的感觸

君子務本,本立而道生 -- 這個我的想法很簡單,我以前就有這樣子的想法,道家為兩個字"自然"自然不是什麼事都不做,而是每件事都照著其法則運行著,白話一點,就是每個人做好自己的本份,我深感認同,雖然以前有過類似的想法,但是陳金次教授的論述更為完備

大學之道:在明明德,在親民,在止於至善。我用自己解法來看,明白自己要做的什麼,做到最好(差很多,不過我喜歡自己的解釋),做到最好,我捫心自問,我想做的事,我應該可以做的更好

--
大學之道:在明明德,在親民,在止於至善 ^^

星期二, 10月 10, 2006

水準上的差異

前幾天課堂上教了使用recursive的 binary search (在有序區間),於是,我照了自己的想法來寫一個簡單的function


bool BinarySearch(int* a, int left, int right,const int SearchValue){
if(left==right){
if(a[left]=SearchValue) return true;
else return false;
}
else if(left int pivot=(left+right)/2;

if(a[pivot]==SearchValue) return true;
else if(a[pivot]>SearchValue) BinarySearch(a,left,pivot,SearchValue);
else BinarySearch(a,pivot,right,SearchValue);
}
else ;
}


再來看看我參考STL源碼剖析的p.376 lower_bound function 的改良寫法

bool BinarySearch(int *a,int left,int right,int value){
int len=right-left;
while(len>0){
int half = len >> 1; /* half/=2 */
int middle = left + half;

if(a[middle]==value){
left=middle;
break;
}
else if(a[middle]< value){
left = middle+1;
len = len - half - 1;
}
else len = half;
}

if(a[left]==value) return true;
else return false;
}



技巧可謂高下立判

星期六, 10月 07, 2006

不能結婚的男人

看完嘍,最近看的日劇中,怨屋本舖是劇情很吸引人,不錯看的日劇,但是不會讓人想看第二次,但是不能結婚的男人可以,我想我在這邊就不用官方網站了而直接引用別人的blog,極其寫實,點出我想要說的,也能點出我說不出來的,真是佩服別人的描述功力(笑)

專業人士很多,我不是很專業啦,只是我有時候會跟男主角一樣很堅持的要求而傷到別人,以前還會有人管的住我,現在卻是一個也無嘍(笑),常常會講出違心的話,只是我身邊沒有那麼多紅粉知已,我身邊倒是很多好朋友,也就是說,我從未寂寞過,因為身邊總是有人吧,當然,我一點都不懷疑,我的感應力可能比男主角還低,不過低也無妨,反正我身邊的朋友,女生少~哈

---
STL的binary search真是令我感動.XD

星期五, 10月 06, 2006

不喜歡的課

還真的不少,其中以嘴炮課最多

沒有實力,空談沒有屁用

這種課還不是在事後分析別人的成功,別人成功就成功,別人失敗就失敗

上這種課有啥屁用

星期一, 10月 02, 2006

最近

我得了一種怪病....

一定要把桌子整理乾淨的病....

---
大一上我的桌子,好像沒有空的地方...

星期六, 9月 30, 2006

Thinking in Java 4/e

終於要開始動工了,為了怕自己懶惰,在旁邊的sidebar新增百分比進度(可能會變動很慢),現在是手動寫,以後可能考慮寫一個非常的簡單的java script來顯示自己的進度....

附上最近寢室照一張,書桌上的書暫時不知道怎麼處理..XDD


---
就先這樣吧

How to Program的書

今年大二唯一比較有趣的選修,網際網路程式設計的用書有兩本

Internet & World Wide Web How to Program, 3/e by Harvey M. Deitel , Paul J. Deitel , Andrew B. Goldberg
對於網頁設計常識缺少的我是一個不錯的選擇,不過說真的,認真看的話,也許一個月吧,實在是不想花太多時間在其中

Visual C# 2005 How to Program, 2/e by Harvey & Paul, Deitel & Associates
這本為Person International Edition,故內容為全黑白,不改其系列之本色,的確是初學者的一本好書,但是,我還是覺得廢話很多XD

How to Program 系列一向以簡單易讀為聞名(我現在看這個系列幾乎不用查字典,看The C++ PL,查到死XD),也因為這樣被選為入門教材....我想我會盡快花時間把第一本看完吧,第二本的話,我大概會配合著The C# Programming Language 2/e一起看

---
唯一美中不足的就是,第一本是桃紅色的...

放假

老實說,我不知道寫blog有沒有放假這回事,但是我就是放假了,一連放了好幾天,我沒有跟Josh要求自己一天至少一篇blog的習慣(笑),連最愛去Josh的blog開玩笑留言的動力都取消改成放假了,所以看起來整個blog很像空轉狀態

放了那麼多天假,也是該回來的時候了,畢竟,前方還有大好前途,不,是大堆書籍,等著我,Thinking in Java 4/e總是要開始的,不然到時候無法實踐諾言,這不是我的作風

---
我還真是一個說放假就放假的人

星期三, 9月 27, 2006

不知為何

不知為何,我總是會有想要放自己長假,在某件事情上,例如說,寫blog和回別人的blog,不是說沒有動力,而是覺得有點累想休息,結果一放就可能是十來天就是,可能因為硬體講義做完想休息一下,但是自己都沒有想到會休息那麼久

事實上也不算休息,一直都在念書和寫作業就是,工程數學比想像中的還要難很多啊..Orz

星期五, 9月 22, 2006

午餐

就一杯奶茶,一片厚片解決了,清閒的打著電腦,似乎也是個不錯的生活

---
今天禮拜五,要記得打籃球

Word排版藝術

網際網路程式設計老師說,事實上Word不好排版,呃,某方面而言是,但是我敢肯定他一定沒看過Word排版藝術,他推薦TeX,但是.....對於中文的處理問題,事實上大到爆炸

星期四, 9月 21, 2006

封面

原本打算是要一行字再加上一條線封面就完成了,沒辦法,我美術不好,還是不要亂畫的好,想不到我的高中電研直屬學弟說要幫忙畫,很感謝,也很高興,在此列入贈予名單

--
畫封面是一種藝術XD

星期三, 9月 20, 2006


這本書的定義是資料收集。

第一版是我高中時代(2001~2004)曾任彰中電研社硬體教學,一時無心插柳,我從雜誌整理的資料印印(約110頁)整理之後就變成彰中電研硬體講義,想不到大受好評,事後更成為硬體組教戰手冊XD

在我大學時代(2005~),曾心生想法,我曾經一度訂了PC home, PC Shopper, PC Home Advanced 這些雜誌,有一句話是這樣子說的 ”沒有整理過的知識,不是你的知識” 空有那麼多雜誌,空有那麼多好文章,所以我決定再花多一點心力,讓自己所整理的資料變的更好,這就是第二版的由來

電腦硬體 Computer hardware 對我而言,是也熟悉不過的字眼,我一直認為,對於Computer Hardware要有基礎認知,學習電腦才會有一定的感覺,當然,不是來學習Computer Organization & Architecture,這是資工系的事,這本資料的收集,只是希望能給予一個概觀,當然,靠這本來學習專業技術也是大錯特錯的。

為什麼不自己寫作?事實上觀看這些資料,就知道廣度之大,也非我所專精,我目前鐘愛於C++ Programming 唯一寫過比較像樣的東西都是關於此方面,為什麼使用雜誌當作資料來源?一般計算機概論用書寫的較為死板,而且很容易偏為Windows操作指南,不然就是邏輯閘與組合語言之實作,就算有寫的好的書,我直接推薦即可,我何必再東抄西剪呢,選用雜誌當來源還有一個很重要的原因,電腦雜誌大部分是寫給非本科系的人看的,所以用詞或說明會較為平易近人,當然,副作用就是,有時候會講的不夠深入,但是深入部分,就留給專業人員吧,我還不夠專業

製作此本書時,把每本雜誌的目錄大概翻一下,再看看裡面有什麼我所遺漏的,利用影印機影印,割黑邊,再用電腦印出每頁的頁碼,貼上資料,再做一些重排整理,歷時大概四個月,也因為整理的資料量超出自己預期,高達六百頁,故分成 理論篇 和 技術深入/軟體兩本 兩大部分,理論篇主要部分為硬體運作的基本原理討論,大部分使用的是專欄的資料,故整體性高,而技術深入/軟體篇則比較像懷舊文章或特有技術介紹,我不諱言,這部分極像文章收集簿,哈。

在此要感謝,長期支持我的爸媽,電研社的學長學弟們,還有許許多的朋友,這本書才得告完成

祝 閱讀愉快

趙文仕 yen3

星期二, 9月 19, 2006

貼完了

yes,貼完了,接下來應該會快很多..

--
最痛苦的時期過去了..XDD

貼完

如果順利的話,今天應該可以把剩下的硬體資料貼完,進入後製階段,包括寫序,記錄每篇文章起始頁數(不小的工程XD),在每篇前面寫上一小段文章(或許我懶的寫),剛剛隨手一數,大概還有三十頁要貼,事實上這可以一下子就貼完,只是室友在睡覺,無法用印表機印剩下的頁數,不急,大概頁數為291(理論篇)+280(技術深入/軟體篇)=571(不包括序和目錄),由於頁數過大,打算做成兩本,呃,大概印一印,大概500元跑不掉

---
還真貴.Orz

睡眠

昨天,早早一點半就睡了,事實上還不夠早,今天早上八點有課,理論上應該十二點就要睡了,結果歸納下來,可能開學後的睡眠與讀書會比暑假還來要的準時有效率

---
這大概就是一種習慣?

星期一, 9月 18, 2006

硬體技術資料整理第二版

第一版是在我高二的時候,社團時的隨興整理,但是也整理出一百頁,結果被彰中電研硬體組當成傳家寶傳下去了,呃,無心插柳柳成蔭?

第二版,是升大一的暑假開始整理,原本預計大一上會完成,因為種種"偷懶"的原因,大概今年九月底會完成初稿,如果順利(假設沒有偷懶XD),十月中可以出版,不要跟我要電子檔,這都是從雜誌影印的,我會有一個贈予名單,如果你覺得你不在名單之內的,請留言說明你要,不然我只印一次,當然,你還得付錢(一本接近600頁,我負擔不起..Orz),此外,順便徵個封面,不然.....拿到封面不要打我(我沒有美術細胞可言)

目錄在這

此外順帶一提,如果有網友看到有興趣的,而非我認識的(基本上這機率很低),歡迎來信,我們再討論

---
這次,我再也不想拖稿了

駭客與畫家

駭客與畫家 by Paul Graham 莊友欣、莊惠淳編譯

這本書,老實說跟電腦深度技術的關連性不大(除了第10 11 14章的連結性特別明顯之外),是一本值得看的書,其中偏愛"第一章 為什麼書呆子不受歡迎"也是一絕,整體而言,這本書給我的感覺是,能夠把一些想法做更好的整理,或者可以從中獲拾,喔,原來是這樣子啊,本書的書背有言

如果想瞭解駭客獎要做的事,這本書能給你答案。如果你是個駭客,你大概能在其中發現自己的身影
這裡指的駭客(Hacker),跟在一般人眼中"能夠隨意入侵他人電腦的人"的駭客,在這邊定義成"一個可以隨心所欲做自己事的程式設計師(programmer)",事實上,有某程度的雷同,但是怎麼個相同法,我相信,看書會有更深刻的了解

此外,這本書我懷疑是不是作者寫某一個專欄收集而成的文章,因為本書共15篇文章,但是互相不關連,此外,本書尚有附專有名詞解釋(特別在計算機領域上,但所提供的解釋則是比我一般所見簡單許多),還附有索引,這跟一般的書似乎不太一樣,但這不一樣則絕對是一件好事

---
駭客事實上跟畫家一樣....hmm....有趣的概念

開學

開學了,離開了暑假歡樂的氣氛,開始過著翻書打筆電的生活,同時也是後blog時代的來臨了

--
看完駭客與畫家,有一些想法了XD

星期六, 9月 16, 2006

問題真多

重新拿到筆電過後,第一個要克服的是無線網路問題,在Windows下能順利抓到,還能遠端,現在在Ubuntu上幾乎無解..整個人就是一個頭兩個大,第二個問題是,我螢幕解析度是1024*768,但是這筆電應該是1280*960,所以整體看起來就是有點奇怪,現在這兩個問題對我而言都是無解...Orz

雖然Ubuntu可以很順利的遠端到桌上型電腦上,但是似乎怪怪的,聲音無法留在遠端電腦上,這似乎有點麻煩(又不怎麼麻煩,哈),所以還有很多事要解決

---
Mac真好,都沒有這些問題要解決 .Orz

星期五, 9月 15, 2006

文學雜誌

呃,我什麼時候開始看文學雜誌的,從我高三上開始,那時候想寫小說就開始看了,果然隔行如隔山,一看之下才發現有那麼多種,不過,我好像也只看了三本,聯合文學、印刻、野葡萄

聯合文學:號稱台灣文學的指標,如果去了解的話,會發現這本雜誌事出突然,目前的風格,並不是那麼的喜歡,所以暫時沒有在看

印刻:為原聯合文學編者群出走所創辦的雜誌,據高中國文老師解釋,此本偏向社會文學,也是我認為我在看之中,最難看懂的一本,但是剛好又都是我有興趣的主題,所以我還是會勉強看

野葡萄:號稱最歡樂的文學雜誌,接觸文學的最佳入門,裡面述說的千奇百怪,早期由8P掌握,現在脫離其色彩,更成為多元化的雜誌,更有時下新興作家的專欄,喜歡接觸新文學的人,是一個不錯的選擇

現在比較想看的是後面兩本,不是說聯合文學不好,而是給我一個定位不明的感覺,而印刻和野葡萄的定位非常好,我非常喜歡(因為我本身也不是專業人士)

---
考慮變成長期訂戶..XD

無線網路

筆電下,Windows可以用筆電了,雖然訊號跟預期上有強弱的差異,不過可以接受,但是Ubuntu Linux一點都抓不到訊號,打算明天開始找解決方案

---
如果筆電也用Windows,這豈不是太沒有意義了

星期四, 9月 14, 2006

有感

事實上,長期學習C++下來有一個想法,事實上,利用C++語法寫出一個程式是還算簡單的,雖然C++語法繁多,體系龐大,但整體而言是一個精密的系統,不難學。

觀念要清楚,這是不用說的了,重點是要清楚所寫每一行後面所帶來的效率成本,這就有趣了,而我現在大部分看的書,最主要都在討論,C++高階細節背後所帶來的成本。

我曾經聽人說過,使用 vector 是不智的,背後帶來的成本太高了,因為把一大串的member fucntion在定義時皆instantiate,事實上不全然是這個樣子

vector <int> u;
vector <float> v;

就這兩行而言,當初有人跟我解釋說,complier 會把其中的 member function 全部instantiate,但是這是一個非常大的錯誤,根據C++ Primer 3/e中文版 p.830的描述


一個 class tempaltemember function 本身也是一個template,Standard C++ 規定,像這樣子的一個member function,只有在它被呼叫(invoke)或是其位址被取得時(我猜是 a pointer to class member function)才需要被具現出來

也就是說,事實上,雖然上面兩行程式碼,會有兩個 instantiation ,但是如果不呼叫其中的 member function , 則背後則不會有任何 code 產生,也就是說,當你invoke時,方為產生的話,就如同你手工精鋉的一樣,所以,一開始所討論的效率問題是不存在的

---
有時候,研究高階的細節,可能遠比躲掉低階的錯誤來的困難

對人

我捫心自問,到底是要拿熱情開朗去面對人(但是常嚇到人或讓人感到不適,哈),還是要拿沉默的嚴謹態度去面對呢?

後者

---
前提是我還得夠專業

星期三, 9月 13, 2006

第一章效應

不論什麼書,我都覺得第一章好難懂啊....(或許是概論,或許是導引,who knows),但是從第二章之後就會漸入佳境,之後就會一章一章的接著快速看完,回頭再看第一章,就覺得沒有什麼了..XD

---
難不成這就是萬事起頭難?

星期一, 9月 11, 2006

AP架設完成

接下來就是看自己如何使用這項機能了
繼續加油吧,有趣的事情會發生嗎~^^

事實上,這樣子念書會方便很多吧~
也該是去圖書館玩的時候到了

台北行

一開始就騎錯路了.....結果在騎錯路的結果下還是很順利的到了台北,也在天瓏買到書,看見倒扁的狀況,見到Josh,算是這幾天來比較高興的事之一,交付索引檔,稍做討論(事實上都是我在說..XD),照了兩張工作區照片,等待同學,買了AP,可以進行宿舍念書計畫第二階段了,哈

依約調了飲料,Josh只喝了兩口,算了,超出預期(預期是只有一口),目前喝過的都說不錯,反應調好,其他的我喝了,事實上雖然臉紅,但沒啥反應就繼續騎車了

莫名奇妙騎了60km,是不長,但是好奇的是,我怎麼騎到60km的(雖然在台北一直在繞來繞去,但是也沒有這個感覺..Orz)

---
事實上,大概很少會有機會再坐校車了..XD

星期六, 9月 09, 2006

從早上七點到現在未閉眼,這正常,從早上十點到晚上八點沒有好好坐過...這對我而言還蠻好玩的,只是有點累....哈,只是忙新生家長坐談會的事,連我自己都不知道會這樣

--
想要補眠,卻累到睡不著..Orz

MacPro

雖然我本身不是用蘋果,不過本身的硬體直覺還是會關注一下,今天看到MacPro的技術規格(真是密密麻麻的規格)G5退休了,真的是很令人感傷。來看一下規格吧

CPU
PowerMac對CPU需要用到水冷(我記得早期的貨是空冷,出來是吵到不行,但是可能相對PC一族還是很安靜),散熱一直都是很大的問題,使用Xeon64,嗯,硬體上的問題不大,軟體上的整合性可能需要再討論。

Memory
規格是這樣子寫的

667MHz DDR2 ECC 全緩衝 DIMM (FB-DIMM) 記憶體
共八個 FB-DIMM 記憶體插槽位於兩張記憶體轉接卡上(每一張卡上有四個插槽),支援高達 16GB 主記憶體

嗯...支援ECC的好物,看來脫離32到64位元之後,上一代的PowerMac只支援到8GB,這一代採用轉接卡,只是Memory的製造功力有所改進了,管線有重新設計過,達成支援16GB(2GB*8)的目標 ?

Display Interface Card
nVIDIA Geforce 7300GT為標準配備,老實說,我怎麼覺得效能還好的感覺(以這種價格而言),但是最多可以四張串聯...是一張卡雙核心,再做 SLI ? 老實說不清楚,不過,最高階Nvidia Quadro FX 4500 512MB, Stereo 3D 這張卡可以說是猛到爆炸(雖然拿來玩遊戲大概會死的很慘吧...Orz)

HardDisk
上面說支援高達2TB,這大概也是神人等級

事實上,PowerMac在去年有一個報導,美國有一個大學,一次買了500台,使用光纖傳送資料,建造出一台SPRC可以列在前一百的超級電腦,這次的新款,不知道有沒有人要這樣子做的?這應該很有趣

---
上次Josh估,配到最高級的MacPro一台55萬...Orz

錯誤

不想發生的事,卻發生了

或許是一種錯過

下雨了

每當下雨,總是讓人感到特別寧靜,放個歌,喝杯咖啡,不用故意裝浪漫,這對我而言就是一種享受,室友還在睡,我似乎變成第一個睡第一個起來的,在新寢室也是如此,算是趣事一件吧

---
但是很少一天會睡滿八個小時,七個小時就可以偷笑了

星期五, 9月 08, 2006

小白vs小黑


目前唯一的兩隻鍵盤,小白是TaClick(PTT客製鍵盤,cherry青軸),小黑是ACK 230U(順發稱之為淑女鍵盤),好打的感覺不同,特照此照留念一下

programming language

前個月,我在撰寫 寫程式的Free Talk 中,所使用的programming language解釋,來自wiki


Computer programming (often simply programming or coding) is the craft of writing a set of commands or instructions that can later be compiled and/or interpreted and then inherently transformed to an executable that an electronic machine can execute or "run". Programming requires mainly logic, but has elements of science, mathematics, engineering, and — many would argue — art.


而我昨天在The C++ Programming Language 3/e看到programming language 解釋為(這本書終於開始看了)

A programming language serves two related purposes: it provides a vehicle for the programmer to specify actions to be executed, and it provides a set of concepts for the programmer to use when thinking about what can be done.


而其後又提到兩句話

The first purpose ideally requires a language that is "close to the machine"
The second puopose ideally requires a language that is "close to the problem to be solved"


兩者解釋大異其趣,不過我較為喜歡後面的翻譯....而不是前者死板板的解釋,程式語言(編程語言)提供兩個相關性的目的,一個為提供很明確的目標,讓programmer可以使用一些特殊的行為讓目標達成(close to the machine)。一個提供明確的概念,讓programmer善加利用而去解決問題(close to the problem to be solved)

第一章就那麼有趣了,但是對而言也是最難,我想我會漸入佳境的


---
還有Thinking in Java 4/e要看..Orz
或許等明年文章給學弟妹的時候,可以小幅改版一下

床邊讀物

最近決定把床邊讀物定為 The Design and Evolution of C++ by Bjarne Stronustrup 事實上這本保持Strousstrup一慣的風格,排版很像,用字偏難(對我而言,說不定有人會認為很簡單),講完這一本的前言,有一種感覺,這本書裡面寫著

你可能懂一個語言的技術細節,但是你不一定懂為什麼,這也是這本書的目的
我睡前不喜歡畫線和拿著字典查來查去,所以上面也只是大概翻譯,所以這本書也有可能是我第一個完全不靠字典就要大概看懂的原文書,我第一本看的原文書...C++ How to Program 5/e,上面密密麻麻的全部都是單字解釋....這樣子讀起來怪痛苦的,所以我決定睡前讀物換一個方式

如果是正常讀物呢,我只好看不懂的還是繼續痛苦下去

--
或許這是一本我看最久的床邊讀物了....XD

星期四, 9月 07, 2006

Tarzan

這裡指的是迪士尼所拍的泰山,偶爾聽到甚為懷念,家裡還有正版專輯,只可惜,要複製成mp3帶著的時候,已經不見了,勉強找到前六首,配樂已全部遺失,甚憾

事情

除了念書之外,我又接了有關工院盃的事務....大概會操很久吧,或許這是一種成熟後的代表作?我也不知道,系刊的東西,我想我會用最快的速度做完交差吧,這種事對我而言本來就不難。

系刊排版呢,原本想用LaTeX排版,但是買不到書,可能直接用Word排版吧....

---
生命的有趣在於其複雜

星期三, 9月 06, 2006

Turbo C++ complier復刻版

這年頭,連complier都可以出復刻版了,我第一個遇到的complier就是Turbo C++,那個執行的速度,編譯檔之小,甚讓我懷念(事實上我寫程式也沒幾年啊)

http://www.turboexplorer.com/

回學校就可以試試看了

星期二, 9月 05, 2006

嘉義中正

在前兩天,我到了中正大學我同學外宿的宿舍,先帶騎機車帶朋友去家樂福買東西(我朋友沒有駕照),騎了機車去嘉義順發買淑女鍵盤(代號是ack230,我也有一隻稱為小黑,但是外型跟淑女扯不上關係Orz),我從中體會到一件事,用UrMap測到順發的距離是12km,離火車站2km,但是騎車時,發現距離不到1km,電腦是人設計的,如果在設計的環節出錯時,交給電腦執行出錯也是一件有可能的事,此外就幫忙重灌電腦,我開始體會到Celeron M的慢速威力,又是SiS的系統晶片組,這樣子組起來的筆電...hmm,中間還幫忙組了一個電腦桌,雖然出了一點小問題,但是大致而言還算順利

對我而言,這趟旅行感觸最深的是什麼呢?當你時速70騎摩拖車時,迎面打過來的雨非常的痛,最好笑的是,中間還熄火兩次,哈,想起來是一個頗有趣的經驗。

對於中正大學的感想是什麼呢?資工竟然是一棟大樓,傳統螢幕可以隨意丟在走廊,我在三樓所看到,我開始思考,是否我從走廊的東西撿一撿(假設還能用的話),應該是可以組成一台可以動的電腦(還附螢幕),圖書館有八層樓...其中四層樓在放書,但是反觀我們學校,只有一層樓在放書,一整個輸掉...Orz 不過公車真的是難等,一小時一班.Orz

---
整體上而言,去了中正,看到我朋友,心情好很多~^^

星期日, 9月 03, 2006

到了嘉義

今天早上六點半起來,答應朋友要來中正大學一趟(事實上還要幫忙修電腦),所以早早就坐車了,到目前為止,對於嘉義的感覺還不錯,不過...公車設施的時間竟然是一小時一班,而搭乘火車也差不多是這個時間,交通不便算是最大的缺點吧。

不過今天運氣不錯,坐到一班頗快的自強號,從桃園到嘉義只需要兩個小時半,因為中間只停留了台中和彰化,就直達嘉義了,果然是一班頗快的火車,現在利用等公車的閒暇時間來到麥當勞,還好中華電信的無線網路還在,而Ubuntu Linux的無線網路也能順利抓到..看來螢幕解析度的問題要等到回長庚才能解決了

--
自強號桃園到嘉義 524...Orz

星期六, 9月 02, 2006

在睡前會選擇性的看一些程式設計書的譯序,似乎己成為習慣,我從來不看小說及一般書籍的序,一般寫的都不怎麼好,更有甚知,預告書的情節,這就破壞我看書的期待性了,金庸小說72集(我看的是小本的),我才開始看序,我才能了解他所要說的,他的開頭第一句

小說是寫給人看的
我非常認同這種說法,昨天看STL源碼剖析,譯序有一句是這樣子說的
天下大事,必作於細
我再也認同不過了,就跟雖然資訊系大家都是學程式設計,但是如果沒有好好的掌握程式語言這個特性,又何來以後的軟體開發呢?不過我在最後一段看到這段文字
我開玩笑地對朋友說,這本書出版,給大學課程中的「資料結構」和「演算法」兩個授課老師出了個難題。幾乎所有可能的作業題目(複雜度證明題除外),本書都有了詳盡的解答。然然而,如果學生能夠從龐大的SGI STL源碼中乾淨抽出某一部分,加上自己的包裝,做為呈堂作業,也足以證明你有資格獲得學分和高分。事實上,追蹤一流作品並於其中吸取養份,遠比自己關起門來寫個三流作品,價值高得的多─我的確認為99.99%的程式員所寫的程式,在SGI STL面前都是三流水準:)

老實說,我很直覺的認為,為什麼沒有人把STL源碼剖析列為DA和Algorithm的參考用書呢,就因為裡面有Generic paradigm一般教授都不懂,所以就不列了,這豈不是一件可惜之事(這事Josh也常跟我提及過),所以大二上大概會花時間好好研究Fundamentals of Data Structures in C++ 和 Instruction to Algorithm 2/e 和 STL 源碼剖析,當然還有Thinking in Java 4/e,哈哈,事實上那麼多書,我也得是該好好計畫一下

---
事實上,開學初我大概還要重讀"泛型程式設計與STL" 果然是充實的大二
---
STL源碼剖析好像絕版了...T___T

星期五, 9月 01, 2006

shell

最近在看鳥哥的linux私房菜中的shell中,起初我還不知道什麼叫shell而認真的看....現在才了解,原來一般人所指的shell就指是文字模式...我一整個沒暈倒....shell的中譯是殼,的確無法聊解其意思,不過若說shell是kernel和user的中介層,用shell這個字或許就可以理解了

這本書的口氣很輕鬆,我似乎有點不習慣,似乎習慣了程式設計書的那種嚴謹,想想,國中時還是偏愛這種口氣的,看來人真的會變,哈哈,我的寫作風格似乎也日趨嚴謹了(寫程式的Free Talk對我而言就是一個不小的轉變)

---
原來我今天看的書真少

星期四, 8月 31, 2006

修電腦的晚餐哲學

老實說,我的個性不是很好,有時候甚至可以用火爆來形容(上大學改了那麼多,還是一樣..Orz),對於修電腦這種事,有莫名的堅持,怎麼說....我捫心自問,我不是很會修啦,我幫別人電腦也只是該灌的灌一灌,也不會微調什麼,組電腦也只是線整一整(只要有心,大家都會整線),只是有人找我修電腦,我都會要求一件事

請對外宣稱有請過我吃一頓晚餐

但是我並不強制要求一定要吃,我本身不欠這份晚餐,我只是為了防止有人濫利用好心而己,別人請我修電腦(我不知道,我認為我不怎麼會修),只要口氣好帶有誠心的請求,我大概都會答應,我也曾經有拒絕過人的紀錄,立下這條規矩

甲:你可不可以幫我修電腦
我:記得請我吃一頓
甲:那麼你上次幫誰誰誰修,怎麼都沒要求什麼
我:.........

不為了什麼,就為了這樣子而已

---
事實上證明,立了這條規矩,請我吃的還不少XD
但是,似乎停止不了人來找我,不來找我的都是我自己個性差嚇到人XD

整線



雖然我常說電腦組好要整線,我現在也整線整了不下十台的主機,老實說,對於散熱助益有多少,我不敢保證,但是對於整體的觀感,爽度會加很多分,但是說來說去,剛好今天幫朋友組一台電腦,主機只花了18900搞定(事實上小貴),在此附上不怎麼成功的整線圖一張.....博君一笑

---
這年頭寫blog的人越來越不要臉了
---
配備如下
cpu AMD AM2 athlon 3200+ 2800
memory Kingstone DDR2 667 512*2 3100
dispaly card MSI GeForce 7300GS 256MB PCIE. 2200
motherboard MSI K9N Neo 3000
hard disk HITACHI 250gb 7200rpm 8mb 2750
dvd-rom Pioneer 16x DVD-ROM 750
dvd-rw Pioneer DVR-A11 1550
case 1300
power Seasonic s12 350w 12cm 1700
大概價格是這樣,事實上我也記得不是很清楚

星期三, 8月 30, 2006

讀PTT CSSE版

PTT(telnet://ptt.cc)中CSSE版(電腦科學及軟體工程),這個版不得不簡介一下,reader(賴明宗)為版主,在電腦科學領域中,頗富盛名,前兩個月,與賀元,劉燈合著的 世紀末軟體革命復刻版出版,Josh推薦,我也馬上買了一本,reader主要負責的是C++ Template技術部分簡介,其學問之廣,讓我佩服,在其版上對於任何人的問題回答,回答的答案也是讓人心服

他最近在"軟體演化"的這個討論串中的其中一篇文說到


就像我們如果沒有決定性的證據,我們是沒辦法證明一個人是好人壞人的。

但一定程度的心證是很清楚的,這是一家三十年的公司,只要持續關心軟體
產業足夠長的時間,就會知道微軟是一個有什麼性格的企業。

一家在遇到強力競爭對手時,就想用自己的勢力打垮對方,若做不到就想要
買下對方,再做不到就宣佈自己的下一版產品,會做到對方所做到的一切,
然後四處購買技術以求打敗對手,最終全部手段都失敗,才會急切想要雇用
人才來真正做出東西來,並且產品功能設計的邏輯總是不清不楚,所開放的
API 總是設計得醜陋不堪,自家的文章文件及媒體訪談全都圍繞著工程面的
細節和取巧的競爭思維,不曾表現出關心核心技術和創新的態度,所培養的
外圍合作廠商也幾乎都是同樣的功利,同樣的缺乏品質思考...

任何不以專業、技術、創新、品質、安全、設計等等實在東西做為企業競爭
優勢,而專以各種權勢財力公關行銷等等急功近利的事物為其根本,在每個
地方都顯得浮誇淺薄自大粗糙的企業,有任何可能是一家關注研發、真心地
重視電腦科學這類需要厚積而薄發的努力的企業?

而這個問題的答案,應該已經在你的心中。

當然也有可能是微軟花費二、三十年的時間來隱藏自己的實力,然而這不是
火鳳的世界,機率如何,大家自己明白。


當然,這家公司指的是微軟,雖然我不心服微軟,但是我一直說不出具體的理由(看來我的思考還有待改進,哈)。引用這篇文,應該是說,我竟然不知道怎麼說才能把這篇回文說的四平八穩,所以我決定,以這樣子的面貌吧

---
學習還有很長一段路要走呢

blog寫文量

跟自身是否有在學習與做事成正比....
有做事,就可以寫出一些東西了
偷懶就會很忠實的反應出來

--
看來以後不能常偷懶了..XD

AP

這裡指的無線網路基地台(AirPort) 由於自己有筆記型電腦,但是在長庚的宿舍沒有AP,的確會有些許不方便,當要桌上型電腦和筆記型電腦交換上網時,就需要手動切換了(也就是把網路孔讓給另外一台嘍..XD) 哈哈,還是希望有一個AP比較好,但是有很多學長也有筆電,說服他們一起購買是個可行的方法嗎?老實說我也不知道耶,哈哈,試試看嘍

--
話說一台AP還真貴...1.6k

星期二, 8月 29, 2006

Ubuntu Linux 上安裝gcin嘸蝦米

嗚呼呼,終於在Ubuntu Linux上裝好中文輸入法,嘸蝦米也能使用嘍,最主要的問題是

1. 先行安裝im-switch套件(當我使用時,這個套件預設是不安裝的,可能只有scim就不需要安裝了),可以使用"系統" > "管理" > "Synapic套件管理程式" 搜尋im-switch 標記為安裝,套用後即可安裝成功。

2. 至這裡下載,在圖形介面中按兩下後安裝

3.接著開啟文字模式,不用登入成root,輸入

im-switch -s gcin
重新登入之後,就有gcin可以用了,使用方法不太一樣,先按ctrl + space 才能再按ctrl + shift

4. 如果使用上用不到嘸蝦米輸入法,事實上在上一步就已經結束了,要嘸蝦米輸入法的話,詳細改法可以參考gcin同好會討論區的討論 改好之後記得放至 /usr/share/gcin/table 即可

事實上,上面的安裝方法非常簡單,我只是負責查資料而己,做個資料記錄也好嘍

--
看來使用Ubuntu Linux只是一個開始
--
參考資料 gcin同好會, Ubuntu wiki

到校了

如預期一樣,兩排全滿了,還不夠放...Orz 目前暫時不知道下學期的教科書放那XD 電腦也如預期中的裝好,沒有發生什麼大問題,最主要的問題是,雷射印表機竟然發出焦味,之後開是沒有了,可是一直錯誤,這個可能要克服一下,該不會是燒掉吧,我還要抱去修..Orz

--
一切而言,大致無事
--
結果雷射印表機只是沒有紙紅燈亮爽的.orz

星期五, 8月 25, 2006

重灌

搞了兩天,搞到筆電的硬碟資料都不見了(還好桌上型全部都有備份),為了搞懂Linux一些東西,不斷的重灌,發現,自己真的什麼都不會,不過灌的還蠻高興的

早期我的想法很簡單,就用Red Hat一路走來的Fedora Linux當作自己的筆電版本,但是眾所週知的...此版本實在是過於龐大,而且相容性不佳,經由學弟的推薦,我現在改用Ubuntu Linux,可能有人聽過,是一個bootable linux cd,用筆電載入後速度慢,但是尚在可接受範圍之內(main memory 只有512MB),裝了之後感覺不錯,不過一開始沒有中文輸入,後來在ptt的版看到一個blog上寫介紹,暫時有解決之道,不過現在仍然在重灌中,待會來試試,Ubuntu 會比Fedora更適合拿來用在單機而非伺服器系統上,所以我的想法很簡單,在筆電上灌Windows + Ubuntu,另外有一個FAT32 30GB的共用空間(我暫時不知道Linux怎麼讀NTFS,知道能讀,但是不知如何設定),灌Windows有很重要的原因是,我習慣用Word排版,打報告之類的,當然Open Office也可以做到,只是在Linux的排版,我想我重心會放在LaTeX上,還有不簡單卻很好用的vi

事實上,我轉換到Linux 的第一個大問題是在於中文輸入法,由於嘸蝦米不是免費的,所以到Linux中,得另行安裝,如果單純玩sever的console mode就算了,但是要成為日常生活用,要查資料,要寫東西,還是得安裝的,所以,要克服啦,還有很多事要學的


---
總算在筆電上定案為Windows + Ubuntu Linux
---
Ubuntu Linux預設沒有PPPoE,scim不能裝嘸蝦米...這對我而言真是難以克服的初學者難題

星期三, 8月 23, 2006

公開行程

等Josh回台大,我回長庚後,我帶著特調飲料去找他好了(事實上可以在他面前調)
以示慶祝啦

ice + 純喫茶檸檬紅茶 = ice純喫檸檬紅茶 = 非常好喝的怪味道

--
我喝倒是沒有拉吐子,其他人呢,我不知道XD

星期二, 8月 22, 2006

最近

都沒在看書,我承認XD
今天嘗試翻開The C++ PL第一頁....發現我連discuss都忘了...可見英文退化程度一般,不過也不擔心,大概坐在書桌前十個小時前就可以惡補回來了吧,所以最近的blog都是記錄心情居多,真廢的blog...Orz(話說,The C++ PL中寫 Part IV: Chapters 23 through 25 discuss design and software development issues. 這行話還蠻有吸引力讓我直接看後面的XD),算了,閒閒渡日,等到有心情再說,反正也快回學校了

最近遇到兩個學妹,一個是直屬學妹,稍微聊起來,一個是虎尾高中(雲林)學妹(以我一個彰中的人也才考上長庚資工,我該檢討一下XD),她還蠻熱愛學習電腦的,只是方法有點錯誤,去巨匠

老實說,我不喜歡補習班,尤其是補電腦的,不管那一個科目,觀念不好,要學什麼東西都慢,而電腦補習班極有可能教會你操作,而不教你原理,市面上一堆人會修電腦(因為經驗的累積,使得你可以做出一個相對應的模式),但是未必都是一堆人會說出為什麼,當然會有人跟我說,會說為什麼不重要,會修,會改裝,讓自己的電腦跑的快才是重要的。不過很可惜,今天我們不是一般人,一個要踏入資訊業的人,竟然只有如此程度,豈不好笑(老實說,現在我也沒啥程度可言)。

雖然認識我的人,知道我是教別人電腦相關硬體方面知識起家,但是我敢說,我的這方面的知識不強,我不會對電腦做微調動作(沒研究,本身也是懶),我對電腦的組裝的要求不大,裝的穩,散熱好,束線帶把線整理整理即可,不會做到螢光改裝,或者是自製風扇之類的,但是我維持了一個很基本的學習,理論上要把整個電腦運作方式了解的更透徹,才是我有興趣的

我不希望,我不了解電腦效能測試軟體數據所代表的背後涵義,而只是覺得越快越好,這真的很好笑

我的想法很簡單

--
老實說,我不知道其他人覺得這簡不簡單,管他的,高興就好

星期一, 8月 21, 2006

好事

什麼叫好事,讓人覺得高興的就是好事,第一件好事,Josh 的 task終於收到一個回應啦,大賀,他還真的等蠻久了,他的選課也告了一個段落了,只會更好也不會更壞,哈(我似乎一向以別人的事為高興),我自己呢,書來了,心情調整好了可以再出發了,也有小重要的一點是,汽車駕照考過啦,這個暑假一開始是機車駕照過了,暑假結束是汽車駕照,這大概也是我身上唯一目前有的證照..XD 好多好事都在今天發生了

---
一句話,爽

星期日, 8月 20, 2006

人生不如意事十常八九

沒有什麼事是絕對的

靠自己吧

----
我暫時不想喝海尼根

筆戰

如果今天在bbs上的留言討論,僅止於對罵或維護自己的利益,抑或是說,只是為了證明自己錯誤的論點,則會流於筆戰形式

當然,我不會大喊,戰吧,鄉民~今天我若是當事者,對於筆戰的雙方,兩邊論點再好都不會接受,流於爭戰的論點,沒有檢視的理由,故我絕對不想故意走入筆戰中...(無意的話,我會自動跳出)

每個人都是為了自己的利益過生活,這我當然不否認,但是是否有辦法在最不要危及他人利益過自己的生活呢,這似乎就是一門藝術,事情沒有是非,只有一種相對的論點性存在,那麼要怎麼取得平衡點呢,學習中

--
這幾天留言以來的想法

上課

Josh的在多數暴力這篇blog中,提及隨機客可能在禮拜六台大開資料結構與演算法這堂課,雖然中間我說了不少的廢話,如果是禮拜六開課的話,我打算每節課都去旁聽吧,回家這件事只好再議了,有一堂好課比回家更重要千百倍

我們大學的資料結構與演算法....相較之下,讓人期待度甚低,甚至有翹課自己的讀的打算,看來現在有新出路了。

--
靜待其變吧,真是讓人期待結果

--
事實上結果出來,雖是令人大失所望,不過要接受的

--
危機即轉機?

星期五, 8月 18, 2006

書到了

7882元....
書到了,老實說有點高興啦,但是,就希望,不要再給自己理由不念書了,也快開學了,也是要認真啊

--
The C Programming Language 2/e竟然沒有Hardcover,可惜

星期二, 8月 15, 2006

生活

又過了好幾天的頹廢生活,只是做了一本小手冊...msn聊天聊了好多....
是該回復正常生活的時候了
訂書約訂了8k左右,下個禮拜前會到嗎?我也不知道耶
能到就好,享受被書壓死的快感
快要考駕照了,一點都不想看交通法規..唉..Orz

---
還是平靜的生活好啊

星期一, 8月 14, 2006

預購書單

跟我爸媽申請預算過了.....暫時打算先買這些書~

The C++ Programming Language 3/e special edition Bjarne Strounsrup著 1425
The C# Programming Language 2/e 1377
The C Programming Language 2/e 608
這幾本就不用再解釋了...Orz C#是因為大二上有修,買一本回來擋著用

The Design and Evolution of C++ 570
這本當故事書看

Thinking in Java 4/e 1350
這本要每天看,答應了就要看完

實戰 C++ 537
買回來隨意看,英文是The Art of C++

Assembly Language for Intel-Based Computers 4/e 931
先買先看,或許可以從組合語言的藝術找到靈感

Concepts of Programming Languages 7/e 1036
這本,當故事書看

精通 vi 440
人再怎麼衰都是要會用vi的

鳥哥的 Linux 私房菜 伺服器架設篇 593.
這本,也不用說了

LaTeX: A Document Preparation System, 2/e 480
兄弟們,學LaTeX的時間到了,衝吧

上述總共9347...hmm....很好,怎麼隨意買都那麼多錢

想買而不能買的書有
C++ Primer 4/e 中文版 jjhou譯 (11月上市) ??
The Java Programming Language 4/e 中文版 Josh/ jjhou 譯(不知何時上市) ??

---
看書睡覺寫程式,人生三要素

小手冊



今天本來要寫程式的,閒閒沒事就答應別人要在中區迎新做個小手冊,我把Instruction to CGUCSIE和學程式的Free Talk外加行事曆、校內校外地圖做成一本有19頁的小手冊(A4對折後的A5),怎麼做,利用Word內建的書籍對頁,手動雙面列印,對折一訂就是一本小手冊了(我沒啥美感,所以照片看起來的封面還蠻乾淨的,我走簡單大方風格),但是只印一本,我就用影印機,一次影印了七份,對折,用訂書機訂起來,就成為這個樣子,效果還算讓人滿意,下次有空再來做小手冊吧,不過一次做那麼多本好累

---
跟學弟妹說,只有中區和南區迎新有喔,不知道北區的學弟妹會怎麼想..Orz
算了....我不可能做四十本啊...Orz

星期六, 8月 12, 2006

旅遊

嗯嗯,為期三天跟家人旅遊,照片暫時放不上來,相機在我爸那邊。


第一天,印象最深的是,從花蓮坐到新城站的莒光號火車,一路上的海,層次分明的分層,我想,這大概就是遠洋和近洋的差異吧,還有去太魯閣的九曲洞....你除了會感嘆大自然的鬼斧神工,更該感受的,當初開這條路的神奇,老實說,太魯閣不適合跟團,應該要一個人好好的騎摩拖車,慢慢的逛才是。所以我當下跟我爸提出我自己一個人再來的要求,我爸也答應了,接下來就是好好計畫了XD
第二天,花蓮遠雄海洋公園,雖然是一個遊樂區,但是我沒有玩這個的心情(香港海洋公園格局比花蓮海洋公園格局大多了),但是海洋公園裡面有一個小塔,從塔上望過去,一望無際,你的眼神終點只有海平線,偶爾會有一條小船經過,嗯,這是海洋公園最讓我覺得最有價值的部分(老實說,這站在外面就看的到了)。下午去台東小野柳,站在豆腐石上,觀看波浪的拍打,又是一番不同的景色,我氣極而生,大吼三秒,通體舒暢
第三天,去參觀了原住民的布農部落,雖然裡面的歌聲舞蹈是動人了,但是似乎被商業化了,但是不走向一條較好的道路,我的感覺,文化不是一種商業,但是我又不知道該怎麼走,事實上蠻矛盾的。從知本坐到枋寮的莒光號上,山洞無窮無盡,但是大海,跟花蓮截然不同,好乾淨,連近海下的暗礁都看的到,接著,回家了


事實上,旅遊不止這些,但是,我最有印象的是海,因為我喜歡看海,海對我而言
眼神接觸海平線時,被一望無際的深藍吸引,徹底放空,待回過神,海的不變就是改變,永遠看不厭

對我而言,花蓮的海跟台東屏東的海各有千秋,但是,一樣的感受就是,我可以徜洋其中而不回神。

令我覺得最有趣的是,我在屏東枋寮看到的摩托車,戴安全帽和沒戴安全帽的比例為三比七,這裡讓我覺得,是不是戴了安全帽才是犯法的呢,哈哈,總覺得,這是一個會讓人腳步慢下來的悠閒城市~

---
好爛的遊記

星期三, 8月 09, 2006

小芳生日快樂嘍

哈哈,我們家的快樂小芳生日嘍,變成十九歲啦~

生日快樂啦

老實說,也沒什麼好送你的,只好寫blog慶祝一下~^^

--
話說...難得有人生日比我小.XD

星期二, 8月 08, 2006

組合語言的藝術

我想恭喜我自己排完了~ya~

事實上還有很多問題是用dirty work解決的,不過,整體下來還算滿意,檔案釋出嘍
不能做為商業用途,大概是那一套吧,哈哈

doc檔 1007kb (Micosoft Word開啟)
pdf檔 1264kb (Adobe Reader開啟)

--
終於告一段落了,喔耶

星期日, 8月 06, 2006

回學弟的文

喬峰在被遺忘的資訊教育~寫了一些東西,本想直接回文,後來想想,我還是貼在我的blog吧...版面較大



>而繁瑣的計算機概論,逐漸被淡忘~
哈哈....台灣的硬體組裝界,可是一堆人沒淡忘....以修電腦為例,經驗是一個判斷的依據,你對電腦的了解程度又是一個判斷的依據。

>所以,電腦知識在無形中,被一般人認定為「不必要的」..
>然而,我也想說,學「文言文」、學「化學」等..
>這跟我以後的課程有何關係?這跟我的生活有何關係?

不管怎麼說,你的語文能力是基於文言文等等的文學之上,難不成你希望你所寫或說的文章,是一個不成章法,贅字太多的東西嗎?如果我們真的考慮我們所學的,是否音樂,美的欣賞都不要學了?
Steve Jobs(不知道去查書,這個人我懶的解釋XD),他花了好幾年在學習書法,因為他覺得書法有一種美,當然,他所做的跟書法完全沒有關係。Mac OS出來時,就因為Steve Jobs學過書法,對於文字要求的一種美感,也讓大家笑Windows長的實在難看

>既然這些被列為「正規」課程,那「資訊」為何不行?
為什麼音樂不行,為什麼美術不行,為什麼一堆課程不行?高中所學的課程,仍然是通識教育,雖然我不否認,這對特殊專長的人具有一定的扼殺程度,但是,也不是每一個都可以早早知道自己的興趣

>加上中學不注重資訊教育,難怪台灣的資訊展業比不上他國了..
比不上他國有很多原因,絕對不是單單幾句可以解決的,環境不允許,學生不努力,資訊基礎教育沒打穩,導致要進階過於困難,以至我們始終為他人做嫁

>也許哪一天,將「資訊科」列為必考科目,這一切將會改觀
>儘管這不是治本的做法,但,「它」至少可行!
那麼我們要重點發展的全部列為必考科目吧,你認為怎麼樣?經濟啦,管理啦,電子學啦,能列的全部列一列,一個國家的發展,雖然會著重於某一項,但是不代表不用健全發展,自古文人相輕,資訊人相輕,我看照你的想法,不同的行業都要相輕一下,學文學看不起學電腦,學電腦看不起學經濟,學經濟看不起學管理

這狀況,還蠻好玩的

還有一點就是,列入考試科目,按照學生心態,應付了事居多,這樣子豈不更慘?如果沒有列入考試,我覺得,電腦這門學科,在中學還存在應有的活力,是可以強調的

每個人的學習有不同的重點在,今天我最不肯犯的盲點就是,我學電腦是因為資訊很重要,所以別人也要跟著我認真學

我認為的做法其中之一有,大學每個系可以開放幾個靠專業而錄取的名額,而降低一般通識所佔的成績比例,資工系,評估每個人的計算機概論與程式設計做為判斷標準,再參考數學英文,按照一般高中做法,或許會比較願意去特別培訓,這跟學測最大的不同是,學測以成績當做第一階段,而這方法是以專業項目當做第一階段(這或許是更寬廣的保送,哈哈)

要注重資訊教育,一方面要自己覺醒,我覺得台灣從來沒有注重過基礎教育,更何況離一般人有距離的資訊教育,這就又很多事可以說了



--
台灣的教育,真是一個神奇的制度

member function adaptor 與 google

哈哈哈,事實上,經過那麼多天,我還是沒啥長進,就好像是原始的認知中前進一點點,算了,先看之前書上的說法吧


泛型程式設計與STL p.403
所謂的member function adaptors是一群小型的classes,讓你能夠獎member functions 當做function objbects來呼叫。每一個adaptor需要一個型別為X*或X&的引數,可透過該引數呼叫X的一個member function,如果那是一個virtual member function,那麼便是一個多型的函式呼叫(polymorphic function call)。因此,member function adaptors 是物件導向程式和泛型程式設計之間的橋樑


嗯,其後我又寫了
那麼為什麼不能直接使用class member function,我猜的理由是,function pointer和class member function pointer是不一樣的


老實說,我覺得這真的是一個很爛的理由...於是在回文中John解釋了
john 提到...
應該有兩個原因:
1. reusability
2. adaptability

member function有兩種呼叫方式: ->* 以及 .*

而 algorithm 接受一個 functor 應該作最少的假設, 也就是它們都能一致使用operator() 呼叫就好了, 不然就得分別替這些演算法, 再額外實作出 ->* 及 .*的版本, 累嗎?

另一個是配接能力, STL 之所以能夠配接是因為每個 functor 裡面都有定義內嵌的xxxx_argument_type 跟 result_type但 (member) function 不能作這些定義把它們包起來就能迂迴達成

bind, compose 應該算是同一概念: partial function application (currying)


到目前為止,我只看懂一半吧,大概能了解為什麼,但是,不能做這些定義把們包起來就能迂迴達成,我想Josh Ko昨天半夜給我的文件(by himself)做了很好的解釋
Josh Ko writes
member function adapter除了加上ADTU(Auto-Deducing Type Units)之外,也將那個隱喻的this指標引數轉為一般的引數(當然,只是比較淺層的語法轉換)

整篇文章是圖文並茂,我不太會做引用(笑)

那麼跟google有什麼關係? 因為我不認識John解釋給我聽的強者人物,我想了想,google打上member function adaptor,只搜尋繁體中文網頁結果,出現了有趣的現象,
第一個,jjhou的STL五篇文章之一,嗯,可理解
第二個,葉秉哲的C++程式設計語言經典本中英術語對照表,嗯,可理解
第三個,Sun的document,嗯,可理解
第四個,我的blog,這....................................

我明明什麼都沒有寫啊....這或許也是John會留言的原因,此外有時候會感嘆,資訊的provider和getter數量總是有差的,而且provider會越來越少,但是,總是會有默默無名的好心人出現(如John, Josh Ko),讓我們更了解

我所能做的,就是努力了解,讓自己更早成為一個proivder回報以前給我成長的provider

---
這篇真長.Orz

生日在排版

話說,我的十九歲生日在幹麻,嗯,玩Word排版..XD 這似乎是一件不錯的工作,當然,經過昨天的努力,我昨天終於完成排版初稿了,但是目前遇到的問題有

  • 頁首使用功能變數時,在奇數頁顯示的是偶數頁的第二層小節,但是每一章的起始頁總是從奇數頁開始,也就是說每一章的開頭的頁首,顯示的是上一章最後一節的第二層小標題(書中有提及這個問題,應該很快就獲得解決)

  • 朱邦復先生所寫的文章,有時候有五層之多(層級一,每一章。層級二,每一節,層級三,每一節中的小節。層級四,條列,層級五,條列中的子條列),我只定義了樣式的前三個層級,以及條列,條列中的子條列仍然需要解決。

這大概也是最主要的兩個問題,那麼我到目前為止的感想有
  • 排版真是一件累人的工作,要排出來是小事(活用樣式功能變數應可應付大部分的報告),但是排版所著重的細節則花很多的時間在克服

  • 要把純文字的型式表格重繪,絕對是一件dirty work(我是純手動重繪,可能是我 笨而不知道其他方法XD,慢慢重繪),幸好此本書的表格不多,但是也花了一個半小時以上在重繪表格就是

  • 樣式的設定,重要性太高了,幾乎所有的Word文字排版,由此開始也由此結束,所以要有良好而細緻的樣式庫是很重要的(我到目前為止照書上設定十來個,事實上還有很多細部沒設定)


順帶一提,Josh Ko對於我之前的blog做了如下的提醒
josh ko 提到...
小心版權問題 :)。

嗯,這是一個很大的問題,組合語言的藝術,已經被博碩重新出版(當然,最近我都沒出門,沒看過其中的排版),所以這方面,有兩個解決方案,第一方案為,寫信給朱邦復先生,說我做了這件事,所以會在blog上釋出,但是不是做為商業用途,然後請示朱先生同意否。第二方案就是,索性不在blog上釋出了,有意思的朋友直接來信,私底下流傳,不做商業用途,也不任意修改(這句話我持很大的保留XD),不違法。

算了,想那麼多事,排完版再說,現在只完成一半而己.Orz

--
排版真是"辛苦"的"有趣"

星期六, 8月 05, 2006

生日

原來,我的生日到了啊,事實上,十九歲的生日,並無特殊的感覺,回顧一下,本來想追一個女生沒追成,寫程式也沒見到多大成果,宅男一隻,文章沒寫,混混渡日,很多想做的事都沒有做,對我而言的十九歲

我沒有過生日的習慣

因此....我很感謝那些對我說生日快樂的人,不知道為什麼,突然想點首歌給自己,張懸的無狀態(04:26, mp3, 320kbs, 10.1Mb)


無狀態  張懸 詞曲:張懸 

  我喜歡永恆的短暫
  化主動為被動的昏暗
  所有公允的景觀之中 我都不存在

  我喜歡邂逅的對白 抹有某部電影的光采
  你要我給的,應該也如此的
  是這答案

  不要把美好的故事留下來
  不去制約 被制約 沒有習慣
  我喜歡獨白勝過眾人的綵排

  不要讓眼淚成為生活的客串
  不去制約 被制約 等待遺憾
  我酷嗜孤獨的愛

  我酷嗜倔強的愛


---
祝同一天生日的人生日快樂~^^

星期五, 8月 04, 2006

學程式的Free Talk 釋出

嗯,鑑於自己寫的很爛,不過還是一篇文字(不敢稱之為文章XD),所以釋出
沒有任何版權問題,要刪掉作者名稱也沒有關係,可以任意引用(這種文章也有人想要引用就神奇了XD)

學程式的Free Talk (3930字,包括標點符號,校訂者,作者名稱全部資訊)
doc檔 60kb (Microsoft Word開啟)
pdf檔 420kb (Adobe Reader開啟)

---
終於告一段落了,不過有小錯誤還是得改
Josh Ko 不用改了,謝謝你的幫忙~^^(捫心自問,這次的意思應該很清楚XD)

Word

嗯,這裡指的當然是Microsoft Word,哈哈,最近迷上了 "Word排版藝術 by 侯捷",結果這幾天以來,都沒啥在寫程式,而在瘋狂的玩Word,學排版,為什麼會這樣子?因為在寫"寫程式的Free Talk",需要用到排版而開始翻書,引起興趣。而最近網路上閒逛時,在朱邦復的網站上,有一個著作下載,而其中有 "中文電腦漫談""組合語言之藝術" 非常吸引我去閱讀,但是開啟或下載之下,發現是txt檔,引起了我重新排版的念頭。

重新排版談何容易

組合語言之藝術,共8萬7千字(包括原本的目錄),純文字檔234kb,嗯,今天的進度已經做好每節的大綱,目錄已經產生,接下來就是調整該有的文字格式(這是一項超級大工程),還有把書裡表格重繪(書裡的表格都是用符號畫出來的,有學過PE2的,就是那種畫法),當然,這本書不是我寫的,排版排完我會把doc和pdf皆呈現上來。

word排版,我似乎只應用了樣式編號層級,以及很重要的"節"的概念,當然,還有很好玩也很重要的功能變數,這些東西再加上word本身的功力,很容易就做好很多東西了,我的目錄只有按兩下就跑出來了(當然還沒設定格式)

朱邦復,香港人,寫過小說,也寫電腦,最重要的是,他發明了倉頡輸入法(他發明倉頡輸入法,剪了一整本字典,才歸納出所有的字根,好厲害),但是發明倉頡輸入法,卻不肯申請為專利,這也是至今為什麼倉頡輸入法仍然是免費的原因(嘸蝦米一直都是要錢的,就算是後來的大新倉頡也是)。一個以發揚中文電腦為已任的人, 還帶領團隊做出第一本可攜式中文電子書(我記得歌林,沒錯,以前做冷氣的,做出第一本中文電子書),至今仍在推動中文在電腦上一切的人。

---
Word排版..真有趣

星期二, 8月 01, 2006

543亂寫

最近,我好像升大二了(驚),好啦,小花來邀稿,看我可不可以對學弟妹寫一篇有關程式設計的簡單介紹,我快速趕稿(事實上我認為是嘴炮),完成3300字左右

名字定為學程式的free talk

興之所致,隨興寫就,錯誤一定多,哈

---
話說,josh,我不好意思麻煩你了,你看看,笑一笑就好

小花問我,要不要寫一些有關程式設計的介紹給剛入學的小大一啊,我想想,這也是一個不錯的主意,於是我動手開始寫了,在昨天下午開始動手寫作,半夜一點半完成初稿,兩點完成第一次改稿,效率不錯,等我改稿度到90%之後,我會再放上來討論的
---
哈,希望對小大一有幫助

星期日, 7月 30, 2006

汪汪仙貝

話說,我媽跟我說,最近我們家養的兔子越來越是好兔命了,之前給飼料不吃,現在要給到地瓜葉了,中間還有試過紅蘿蔔,事實證明,牠還不怎麼喜歡吃,我媽看到家裡有一包過期的汪汪仙貝,想要丟了,結果試著丟給兔子,牠竟然吃的很高興,吃著吃著就把地瓜葉忘了XD

原本是
地瓜葉>紅蘿蔔>飼料
現在是
汪汪仙貝>地瓜葉>紅蘿蔔>飼料

---
真是一隻神奇的兔子

看完

昨天躺在床上,心生無聊,就把有趣的"泛型程式設計與STL"看完了一次,現在對STL總算有一個初步的認識了..我對bind1st, bind2nd, compose感到神奇,但是我看到更讓我覺得神奇的東西Member Function Adaptors


在p.403有以下的敘述
所謂的member function adaptors是一群小型的classes,讓你能夠獎member functions 當做function objbects來呼叫。每一個adaptor需要一個型別為X*或X&的引數,可透過該引數呼叫X的一個member function,如果那是一個virtual member function,那麼便是一個多型的函式呼叫(polymorphic function call)。因此,member function adaptors 是物件導向程式和泛型程式設計之間的橋樑

那麼事實上,Member Function Adapptor是一個轉換器(這句話是廢話,因為這就是adaptor要做的事),但是可以利用polymorphism性質來做一個轉換,以達到更大的彈性,這也是有一個神奇又有趣的東西,哈

那麼為什麼不能直接使用class member function,我猜的理由是,function pointerclass member function pointer是不一樣的,也就是說,無法那麼順利的當argument(看來我的講述功力真差..Orz)

看完不代表會用,所以接近開學的時候,我會再把這本書翻一次吧,開學後就可以開始使用STL來試著開發了,速度慢,但是總比沒開始的好
---
睡前還看不懂的,睡一覺就了解在幹麻了,真是神奇

金庸

最近手傷,又累,不想打字,於是心生無聊,把神鵰俠侶翻出來重翻一次(我懷疑是最近中視在播,所以我又想重看了),我看著看著,看到八個字,音樂一放,我竟然感動落淚

為國為民,俠之大者

我想,如果一個人真的能做到如此的程度,被人稱之一個大俠也不為過,呃,雖然事後想想,覺得這件事頗怪的,我怎麼不是為了楊過和小龍女的生離死別而落淚呢?老實說,我也不知道,或許我想到我想要做的資訊教育吧,哈哈,這跟個jjhou有關嗎? 我也不知道,看書吧

---
這年頭的鳥學弟,把我這種為國為民的好情都搞糟了

星期六, 7月 29, 2006

賀josh

Josh Ko終於把他的The TaskIII 完成嘍,普天同慶

(話說我自己好像沒有幫到什麼,管他的,高興就好)

接下來就是期待再期待啦,哈哈

手傷雖然還包著,但是...應該....復工嘍~

星期五, 7月 28, 2006

STL

Standard Template Library可以說是一個結構嚴謹的東西,最近看書才發現,concept是最重要的一點,六大組件相互連接性的保證,舉個例子


find 搜尋
template <class InputIterator, class EqualityComparable>
InputIterator find(InputIterator first, InputIterator last,
const EqualityComparable& value);

只需要把InputIterator和EqualityComparable定義好即可,而我們自己所設計的,無論是iterator, algorithm, function obeject,只需要遵守concept,自然,我們可以利用template強大的彈性,寫出最適合我們的組件

---
STL果然很有趣 XD

車禍

看我打的出來,就知道,事實上沒有那麼嚴重

嗯,我恍神一下,時速六十就跑去撞娃娃車了,手掌跟膝蓋看到真皮

經過三次包紮,現在是好多了,不然我也不知道現在要怎麼打字,哈,只是打字的時候,會帶有疼痛,真的痛的話,我大概就不會打了,哈,而且,還是痛在我打字分配比較重的左手,唉.....

不過手痛了,就不能寫程式了,看點靜態書也好,這或許是好事一件吧,哈

星期三, 7月 26, 2006

有點累

這個字對我似乎不陌生, 只是以前總是有方法可以解決的,這一個月,除了休息,就是一直念程式,電腦伴我渡了無數個日夜,老實說,我捫心自問,我沒有多認真,為什麼還是會感覺到累呢...

在我努力趕上前人時,前人也用更快的速度遠離我,但我卻默默超越在原地踏步的人

暑假過了一半,感覺上自己什麼事都沒有做到,程式設計也只有進步一點點...唉,跟自己預想的差很多很多,不過,也還好,總是有所前進

現在只能告訴自己,累了休息之後,要用更快的速度前進

星期二, 7月 25, 2006

打字

word打字的時候,有一種東西叫做自動完成,話說我在打什麼,我在打STL中的algorithm每個function protype,打這個幹麻,老實說,我也不知道要幹,只是打出來做個整理,自己高興,哈哈,有時候,做無聊的事反而會有學習到

利用word的自動完成,我做了下列設定

(II) = InputIterator
(OI) = OutputIterator
(FI) = ForwardIterator
(BI) = BidrectionalIterator
(UI) = UnaryFunction
(BF) = BinaryFunction

etc...果然,打字神速,不過....打完要記得調回去就是

星期一, 7月 24, 2006

睡眠

現在的生活,照這樣子下去會出人命的話,我一點都不驚訝

早上八點起來,騎摩拖車去學開車,回來寫些東西十二點吃頓飯,下午可能發困,睡一下,六七點起來(我睡了幾個小時啊...Orz),然後,寫些東西或msn閒聊到半夜,平均三點到四點睡.....

這樣子的睡眠極不正常啊,我想以後還是正常點好了,不然暑假也在爆肝..Orz

星期日, 7月 23, 2006

買印表機

從國中以來,買印表機都不是一件輕鬆的事,還記得我第一次自己買印表機是Epson Stylus C40,我整個人從陽明國中飆到彰化火車站回去,買完再一路飆回來,怎麼飆? 一手提著印表機,一手騎腳踏車,不飆不行,腳踏車還是用借的,要在一定時間之內還人,後來Epson果然常見的問題就現身了,噴嘴會卡住...Orz 所以我在我高中的時候...又是用飆的,跑去買HP deskjet 3420,算是一台不錯的噴墨,但是...因為很大台,所以我還是得一手用拿的,一手用騎腳踏車,我記得我買的是聖誕特別版(別問為什麼我印表機會有這種特別版XD),裡面還有送相紙,很不幸的,還是得一手拿一手騎

似乎我買印表機都是不怎麼順利的XD

今天呢,得知員林順發有賣Samsung ML-1610雷射印表機,當下決定衝去買一台...價錢多少,呃,一定比josh的網拍高,哈,不過我在順發有累積一些折扣,所以買起來還算很便宜,買完才發現一件事,機車放不下啊,左試右試,決定把殼拆掉...雙腳剛好可以夾住這台印表機....配件放在車箱裡面,從員林夾著這台印表機一路騎回鹿港,大概40km左右

我朋友還對我說,希望你回去腳沒有事

當然沒事啦,我的腳有那麼弱嗎...吼

for_each??

在泛型程式設計與STL (Generic Programming and STL)中,我讀到for_each 屬於 Nonmutating Algorithm,怪了...我以前不懂for_each時,都直接屬使用來改變在此range的值的,難道我想錯了...

來看看for_each的prototype(p.218)

template<class InputIterator, class UnaryFunction>
UnaryFunction for_each(InputIterator first, InputIterator last,
UnaryFunction f);

如果今天所使用的是vector<int>的話,那麼...UnaryFuncion的return type(Result Type)暫且不論,UnaryFuncion的Argument Type也必定是int才行,那麼我在gcc 上面使用int&,卻過了,這是不是傷害到原本的規格制定?

所以,我用了一個很簡單的程式碼來測試一下


#include <iostream>
#include <iterator>
#include <vector>
#include <algorithm>
using namespace std;

template<class T>
class pow2{
public:
void operator()(T &p){ p=p*p; }
};

int main(){
vector<int> u;
for(unsigned int i=0;i<5;i++) u.push_back(i+1);

for_each(u.begin(),u.end(),pow2<int>());
copy(u.begin(),u.end(),ostream_iterator<int>(cout," "));

cout << endl;
system("pause");
}




還是說,我想錯了...當然,照書上所寫的...Argument Type是會正確,還是我自己用錯了...Orz 暫時不知道,繼續看書去

星期六, 7月 22, 2006

小程式的效率改進

從名題精選百則中,有一題簡單題是這樣子寫的
寫一個程式,列出所有元素的所有子集

一開始很簡單的想法,就是用遞迴造樹,哈哈,我寫的程式碼如下




#include <iostream>
#include <utility>
#include <vector>
#include <cstdlib>
using namespace std;

void display(int index,vector<pair<int,bool> >& u);

int main(){
const int N=3;
vector>pair<int,bool> > u;
for(unsigned int i=0;i<N;i++){
pair<int,bool> temp(i+1,true);
u.push_back(temp);
}

display(0,u);
cout << endl;
system("pause");
}

void display(int index, vector<pair<int,bool> >& u){
if(index==u.size()){
cout << "{ ";
for(unsigned int i=0;i<u.size();i++){
if(u[i].second==true) cout << u[i].first << " ";
}
cout << "}" <<endl;
}
else{
u[index].second=true;
display(index+1,u);
u[index].second=false;
display(index+1,u);
}
}



此程式是超乎想像的慢,因為呼叫遞迴耗掉了不少時間,哈

後來我寫了第二個程式碼,如果集合有三個元素,那就是要印2^3種東西出來,即是表示成 000 001 ....111



#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
#include <cstdlib>
using namespace std;

void dec_bit(int x,string& s,const int size);

int main(){
const int N=3;
vector<int> u;
for(unsigned int i=0;i<N;i++) u.push_back(i+1);

unsigned int times=static_cast<int>(pow(2.0,static_cast<double>(u.size())));
for(unsigned int i=0;i<times;i++){
string control;
dec_bit(i,control,u.size());
cout << "{ ";
for(unsigned int j=0;j<u.size();j++){
if(control[j]=='1') cout << u[j] << " ";
}
cout << "}" << endl;
}
cout << endl;
system("pause");
}

void dec_bit(int x, string& s, const int length){
while(x!=0){
s+=static_cast<char>(x%2+'0');
x/=2;
}
while(s.size()<length) s+="0";
reverse(s.begin(),s.end());
}




當然,這程式很危險,因為你所能印出來的次數不能超過2^32-1,也就是說,不能超過31個元素,不然這個程式會造成致命的錯誤

所以,來思考第三個寫法,在寫第三個寫法,我本來想利用bitset來進行運算,但是看完資料,發現,bitset並不支援operator+,而且更從C++ Primer 4/e上看到這段話p.102

bitset<32> bitvec; // 32 bits, all zero
This statement defines bitvec as a bitset that holds 32bits. Just as with the elements of a vector,the bits in a bitset are not named


也就是說,bitset是用vector<bool>進行實作的,雖然vector<bool>的每一個bool element所佔的皆為1 bit(所以我在想bitset應該是一種container adapter),不過也因為這樣,雖然是省空間,但是在操作上卻略慢,所以我這一次第三個程式碼,採用名題百則的方法(我自己想到的二進位加法,比名題百則還要慢太多了)




#include <iostream>
#include <vector>
#include <cstdlib>
using namespace std;

int main(){
const int N=3;
vector<int> u;
for(unsigned int i=0;i<N;i++) u.push_back(i+1);

char* digit=new char[u.size()];
for(unsigned int i=0;i>u.size();i++) digit[i]='0';

while(1){
int index=0;
for(;index<u.size() && digit[index]=='1'; digit[index]='0',index++) ;
if(index==u.size()) break;
else digit[index]='1';

for(;index<u.size();index++){
if(digit[index]=='1') cout << u[index] << " ";
}
cout << endl;
}

cout << endl;
system("pause");
}




其中的

for(;index<u.size() && digit[index]=='1'; digit[index]='0',index++) ;
if(index==u.size()) break;
else digit[index]='1';

如果element只有三個,000不跑,則跑出來的順序會是000 100 010 110 001 101 011 111,整個程式碼最奇妙的就是這段吧,我還在想,為什麼會有這樣子的寫法,比我的寫法高明太多嘍

寫一個程式,總是要能夠想辦法改進自己寫程式的效率,這個程式寫了三遍,好像花了兩天(中間msn和電視看太多..Orz),不過我想我的速度會越來越快,應該是說,專心的時間會越來越多的, 還有真多東西要學啊...XD

真希望自己在之前寫的一句話還記得,名題百則看完做為資料結構和演算法的前導,希望我真的會把名題百則看完

星期四, 7月 20, 2006

寫程式

首先,把blog變寬嘍,這樣子會好一點,而且,寫很少字就讓人認為很多,好像在騙自己一樣....

今天無聊重寫了一下acm 673 parenthesis balance,嗯,寫出讓我自己還算滿意的程式碼(這也是當然,我都不知道重寫幾次了...Orz)



#include <iostream>
#include <string>
#include <vector>
using namespace std;

bool parenthesis_balance(const string& s);

int main(){
string s;
int input_data_sum=0;
cin >> input_data_sum;
getline(cin,s);
for(unsigned int i=0;i<input_data_sum;i++){
getline(cin,s);
if(parenthesis_balance(s)) cout << "Yes" << endl;
else cout << "No" << endl;
}
}

bool parenthesis_balance(const string& s){
vector<char> symbol;
for(unsigned int i=0;i<s.length();i++){
if(s[i]=='[' || s[i]=='(') symbol.push_back(s[i]);
else if(symbol.size()>0 && s[i]==']'&& symbol[symbol.size()-1]=='[')
symbol.pop_back();
else if(symbol.size()>0 && s[i]==')'&& symbol[symbol.size()-1]=='(')
symbol.pop_back();
else return false;
}
if(symbol.empty()) return true;
else return false;
}


粗體的地方,是一開始沒有寫而有Runtime Error,後來修正的,大部分的Runtime Error都是存取非法記憶體

po這個程式碼做什麼呢,只是想測試一下程式碼po在lblog上效果如何XD,一方面...醜媳婦總見公婆,醜程式碼總是要見大眾,所以,我覺得,還是把自己的程式碼po出來讓大家笑一下也好,哈哈

事實上是,想提醒自己,都大一結束了,只能po這種程式碼,未免太好笑,要好好再努力
我旁邊還有一本名題精選百則,今天看過之後,有一半的問題我可以快速解,還有一半的問題需要好好想想,這本看完開始看資結和演算法,希望有此做前導,會比較輕鬆

學MFC呢? 我聽從小蠍的建議,資料結構演算法要學的,MFC也是要看的

雖然 我最近這幾天查到的資料...MFC真的被罵的很慘...反倒是wxWidgets好像是個不錯的東西的樣子

ps:原來html的程式碼是這樣子排版的...我排了快一個小時..Orz

生活

回彰化最大的好處是,有冷氣吹...
不過也因為這樣,常常睡一整天
在家是會寫程式沒錯啦,我也的確沒在偷懶,但是
常常一睡就是五六個小時過去了...這真是要不得....
話說,今天還是正常點睡覺好了~哈

星期二, 7月 18, 2006

C++討論

啊,我終於醒了?昨天我是幾點睡?三點多吧....
昨天josh心情一好,我又用了較為特殊的普通方法抓了C++ ANSI/ISO IEC 14882 2003(簡言之就是C++ standard 2003),兩個人就地討論起來了,從一點到三點,不過,我不能稱之為討論,josh對standard的熟悉度,遠大於我(畢竟我才第一天抓,但是我覺得,我抓完,也不一定會看),變成他跟我說那一頁,我只能靠著Adobe Acobat的ctrl +f 跟他討論,不然就是他提出來,問我,但是我不一定會,哈哈,大部分時間還是他自己想的,由此可知雙方程度有差多少,哈,這樣子討論下來,心情還蠻好,但是也頗糟,好的原因是,有人可以講,真的是一件讓人高興的事

糟的是,這樣子的討論對josh幫助不大,我討厭不能幫助人的感覺

所以現在有想法啦,第一,請josh找別人討論,不然就是,我自己的整體實力還要再整個一直加強加強,不然,不能幫到就算了,如果害到,我會覺得很抱歉的

但是真的覺得,這場晚睡有值得(事實上本來想從昨天開始早睡),哈,期待josh的新的blog整理

星期日, 7月 16, 2006

MFC

MFC Microsoft Fundation Clases

基本上而言是一個很有趣的東西,去翻了ptt programming版精華區才知道,原來匈牙利命名法的好與壞,基本上,MFC是microsoft用來包裝windwos api(windows SDK?),但是MFC的包裝雖然是OO,但是不甚完整,連MS自己開發Office時用的都是自己對windows api重新包裝,而不用MFC,高階Microsoft的開發人員blog上面寫著,就算要用,我也不會用MFC而使用C#

就我所知,連Windows programming 大師 Charles Petzold 都不喜歡MFC,他寫過Windows SDK的書,寫過programming windows with C#,但是就是沒寫過with MFC的

那麼我學MFC,變成一個很有趣的狀況就是了,當大家都在罵時,為什麼我還要學?

當然,有理由是
1. 我書都買了,不學可惜
2. C++ with MFC還是在C++上還能算是一個開發windows programming
所以,現在的我,應該是說,會邊學邊看,為什麼MFC讓那麼多人不喜歡

我對我要學MFC所下的結論是

學MFC不論在技術、現有環境上皆為一件趣事

星期五, 7月 14, 2006

查資料

今天心血來潮,突然想到,製作CIH病毒的人到底在做什麼呢
用google一查,很順利的就查到了資料
陳盈豪

哈哈,不失當年豪氣,但是也夠膽,寫出這樣子的簡介,他是一個很典型靠實力而不靠學歷的人
我什麼時候才會有自己的實力呢? 哈哈,努力吧

星期四, 7月 13, 2006

回家

禮拜六就要回家啦,要打包的東西真多....
是時候該來規畫自己的回家生活啦..XD
回家過後還不能看學弟培訓,嗯嗯,大概等學弟暑期輔導我再回去看看吧

星期三, 7月 12, 2006

說到書這回事....
嗯,我得說,我被josh勸敗的很成功,當然,我有的書只是他的零頭而己..XD

book list

最近整理檔案才想到我做這個東西,稍微再整理一下,做成pdf
只有27本,不多,跟josh的80本比起來真的不多

哈哈,這算是抄襲嗎,我怎麼覺得有點像..orz

星期二, 7月 11, 2006

學習成績

嗯....這學期被當了兩科,普通物理學29,基礎英文53,算是預料中的是
不過對我爸而言就不是預料了,從小到大,很少會被罵的那麼慘(其中當然還有為什麼不跟家裡聯絡啦,最主要的原因是手機沒電,網路斷網,而我爸說不會用公共電話,想想也是)


基礎國文(下) 79
基礎英文(B) 53
離散數學 70
普通物理學(2) 29
普通物理學實驗(2) 79
微積分(2) 60
計算機概論(2) 97
軍訓(1) 79
體育(1) 84
網際網路技術 80
法律實務 82
平均 70.94

我們系上的計算機概論就是程式設計,想來這科還拉了真的不少,不過....啊知,人一般看到的都是你考最爛的那一科,然後就由這科決定你這學期是否有在念書,這是人性,我必需接受

事實上照家裡的邏輯,只要乖乖念到第一名即可,按照大學學程好好念書即可,事實上,照我的想法,在我們系上,如果我確立了志向,有很多課是我沒有必要去修的(但是至少要過),而且,照一般資工系的大學學程,前面的學校我不知道,在我們學校,我想,我恐怕學不到東西,應該是說,學的很少

我現在自己所學的,全台灣的大學資工系都不一定會開的課(GP,目前只知道元智侯sir有開課),但是我敢保證,經過下一個十年,他會跟OOP有等同重要的程度,你說我要念,還是不要念?

要的,只是父母會無法接受我的論點,對他們而言,我還是一個小孩(我也真的還是一個小孩),憑什麼知道,為什麼GP會是下一個十年的重點? 老實說,我也沒有很確切的證據,是一種感覺

在程式設計這條路上,我還是必需不靠學校課程,努力的走下去

唉,看剛上面的話,就知道,我真的被罵的很慘

星期一, 7月 10, 2006

真正的感想

斷網三天,造成的後果是,大略看過 Effective 3/e 中文版 和 世紀末的軟體革命 復刻版

Effective C++ 3/e 在blog中已經屢次提到,就不要再多說了,因為這幾天看的是C++ template部分就是

世紀末的軟體革命,在於OO的方面,提供給我們一個大局觀,在C++語法部分,如果以當年來看,是做了一個C++新技術的介紹,雖然當時有Ada language ,但是C++ template語法,當時來看是一個全新的概念,而且HP版的STL尚未納入C++ standard 標準,不過以現在來看,會變成一種C++高階特性的簡介,寫的還比一般的國內書好(提到這點,我覺得,這些敢出書的.....),在GUI部分,NextXT在mac os復活是無庸疑的(大概也只有steve jobs可以搞出這種美學),但是他讓我從另外一部分去了解NextXT的OO,事實上是一個極為先進的語言(but 在當時的極為先進就代表,執行會很慢),還有GUI的基礎,以事件驅動之(深入淺出MFC2/e),也讓我體認到一件事,學習GUI,也就是visual programming 必需要以OOP為基礎,不然不太可能學的好的。裡面還有是到MFC( Microsoft Foundation Classes ) 和 OWL( Object Windows Library )之異同與利弊,不過,當然,那時候還沒有C#,Java出來了,但是那時候的Java受限於硬體與本身的架構,所以一定會很慢,最後劉燈以自己寫的一個MicroWindows based on Win32做為結尾,最後跟你說,事實上寫一個GUI沒那麼難(事實上我還是覺得,好難..Orz)

最後一個想提的,這本書可以讓你在C++ OOP GUI 做一個大局觀,我想,這是很多書做不到的

值得推薦的一本好書

星期四, 7月 06, 2006

思考

如果人一輩子都不想要不跟人起摩擦
那麼就一個人過人生活吧

看書kuso感

在看侯sir所譯的Effective C++ 3e 中文版,覺得,候sir連member function都可以直接寫成成員函式,在這本書中,許多專有名詞在C++ Primer3e 中文版時而英文,時而中英並列,但在Effective C++ 3e卻是只列中文?? 我在想,是不是侯sir的水準放寬了嗎..? 不知道有沒有人跟我有一樣的感覺,哈

星期三, 7月 05, 2006

解讀錯誤

有時候,東西解讀錯誤會害了很多人,就像我禮拜一把老師講解的題目,解讀成要解數獨題目,故我把題目設定成如下
輸入一個數獨table,解出其答案

結果老師給的題目是
隨意輸出一table,符合某些規則即可
為什麼要說是某些規則呢? 因為這些規則比起數獨的規定還鬆的多

沒差,我是把數獨的程式碼寫出來了,debug中,而且還因此認識了解數獨的候選數方法
唯一候選數法
隱性唯一候選數法
很少會遇到只有ie才能開的網頁..但是寫的不錯,值得一讀

但是,解讀錯誤還是難辭其咎,下次要小心,唉

design patterns

josh ko如下所言

design patterns
面對特定情境,從前人經驗所歸納出來的解決方法
一種特定模式的解法


ps新座右銘如下
養我者父母,教我敗書者josh

話說看書

如果真的要說我最常看的書,大概一定是C++ Primer 3rd中文 & 4th英文,所以嘍,書角上捲的狀況非常嚴重,排名第二的是...Effective C++ 2nd中文,這本書就某方面而言也是快掛了,看到William的作法是,把書角包起來,雖然我從以前就看的到這個方法,但是,我怎麼沒想到呢,所以當下一口氣包了六七本書,成效不錯,現在終於能了解為什麼josh愛精裝版了,至少,你不用看到這種慘狀,哈

世紀末的軟體革命復刻版

雖然這本書,我只看了四分之一,但是我真的很佩服,書中所寫到的OO概念,正好是我所欠缺的,然而,看到裡面的插圖,真的...突然會想到我早期的電腦書插圖,真的好讓人懷念

在Willliam 的blog中 中文書也有復刻版

略事為文,紀念那夢想紛呈的年代。


只可惜,我年歲過小,沒有遇到那個繽紛的年代,算了,不想,繼續看書就是,看完才是會有一個整體的想法吧

星期二, 7月 04, 2006

Effective C++ item35

看到這一個item,我的背後冒出冷汗

Effective C++ 3e
item35 考慮virtual 函式以外的其他選擇 Consider alternatives to virtual functions

裡面都是pattern 的手法,我一路看下來,pattern似乎是一種技術,但是是怎麼樣的技術我又說不上來,

根據 http://www.oreilly.com.tw/column_sleepless.php?id=j008
裡面所提到的

Pattern 最簡單的定義是:只要是一再重複出現的事物,就是 Pattern。

我也不知道他說的是不是對的XD 不過item35所技到的技巧,真是令我驚豔

1.藉由Non-Virtual Interface(NVI)手法實現Template Method範式(此處template 與C++ tempalte無關):此pattern,我只是覺得,有點像一種包裝,只是單純為了priavte virtual function inheritance而己

2.藉由 Function Pointers 實現 Strategy 範式,後面還有說到使用trl::function 實作之:利用fucntion pointer去指向不同的function以因應不同的狀況,也是頗有趣


看到這個item....我在考慮,我是不是該開始看Design Pattern經典本啦? 不過目前要看的書好多啊,還有""世紀末的軟體革命復刻版"、"人月神話"一堆書要看,再買一本...

呃,暫時不要有這個想法好了

星期日, 7月 02, 2006

Effective C++ 3e

花了兩天多在讀這本書,我讀了一半多一點點,而且還不能說我全懂我所讀過的內容,但是大概一半有吧

我跟josh 說,3rd 比2nd難度高了許多,josh的回答比我當初想的還要好很多

josh 或許是說,新技術多了很多

嗯,能接受,一個新觀念要接受已頗不易(3rd大概只有一半多一點是延用2nd的概念,且有許多延用之後又大大加強),講述新概念時,又用的是新東西

例如說 std::trl::shared_ptr 就幾乎在每個item中都有出現,只要有資源管理,介面有關都會出現,不過我也得老實說,我還沒看此本書之前,我真的不知道有shared_ptr的這種smart pointer ,所以我看此本書的速度真的是慢上不少,但是,同時也驚訝於C++的新概念與新想法

ps 麥當勞不是看書與寫blog的地方,冷氣很涼是真的

星期六, 7月 01, 2006

讀書有感

似乎我讀了越多書,我的人生目標就會一直不斷的向下修正

國小六年級時,為了自己可以用軟體做出一個網頁而志得意滿而立下志向,我要寫一個軟體,然後大賣,現在想想,似乎是一個有趣的夢想。國中的時候開始學硬體,而立下了我一定要努力走向程式設計這條路,高二上一度認為我學完C的所有概念,直到高二下買了C++ primer 3rd中文版,才發現,原來,我離懂這個字還差了十萬八千里

從高一到現在,過了那麼多年,我依舊是一個原地踏步的人

經過了大一上的頹廢,大一下開始認真,才發現,原來我真的是一個非常普通的人。哈哈,認清這個事實也是好的,看了那麼多書,卻連一個OOP和GP都講的模模糊糊

更遑論,我立志要走軟體工程的路離我還有多遠

你說我現在人生的目標是什麼呢,我只希望我以後出社會寫程式時,不要成為拖油瓶就好

那麼我問了自己,我對於資訊基礎教育的理想呢?
我不是沒想過,教一個C++語法,可能大家都寫的出來,但是要寫的好,抑或探討學理到深處時,這不是我應付的來,但,總是開始做,然後,以此為鞭策自己的目標吧,努力講懂,要做一個資訊的provider,而不是一個資訊的getter

星期五, 6月 30, 2006

學習C++

聽從josh ko的建議,從天瓏搬回三本書回來

Effective C++ 3/e中文版 Scott Meyers著 jjhou譯 2006

我想,光看譯者我就會買了:),在這之前,我花了不少時間在研究他的第三版,此版最主要是對於C++新技術的介紹,新增了對C++ template技術的討論,還有一些隨著時代而有所更動的觀念

世紀末中軟體革命復刻版 賀元/賴明宗/劉燈 著 2006
C++ GUI 與物件導向理論

買了才發現,對物件導向的技術做了一個深度的討論,也能了解為什麼絕版了之後還是那麼多人想要,哈哈,此本書雖名為復刻版,但是也是有做諸多修正,為學習OO不可或缺的書吧,當然,也是有諸多涉獵的,不過我只看到一開始的OO,看完或許會再做一個補充報告~

人月神話-軟體專案管理之道 Frederick P.Brooks, Jr. 著 錢一一譯 2004
The Mythical Man-Month essays on Software Engineering

看這此書之前,上面一本書要先看過,不然看這本,我覺得一個災難,哈,就因為這樣,還沒開始看,所以我也無法做太多想法


學了那麼久的程式設計,高三扣掉不算的話,也二年半了,尚無成績出來,汗顏,在C++的GP&OOP,更是josh ko 的幫忙下,方得點到學習門票,只能說,自己是一個很混的人,但是,我不想像我朋友一樣,自己學的很高興,偶爾出來展露一下自己的能力,是很強沒有錯

以我自己而言,我學會多少東西,我就會盡我的能力去教會別人多少東西

我有大愛嗎,不,只因為我所學的東西也是從書,從作者而得來的,我憑什麼有理由不教人呢,當然,我不是很會教,但是我願意盡我的能力去改進我的討論方法

不過最近才有的感觸,我的個性不向是會走學習路線的,而pigtail才像是吧...有趣的是,到了大學,我變成走學習路線,他變成走活動路線,我一度以為我會走活動路線的,哈哈

說了那麼多文不達理的話,還是呆在床上繼續看書吧~哈

雜記

使用bbs那麼久,真的會對個人版產生情感

畢竟,現在這個時代,一把鍵盤就可以完成全部的操作,的確是一件快事

但是在bbs的上無法排版,也是一個難事,複製上也是一件難事

故思考,以blog為主,程式獵人為輔~開始進行下一波的寫作吧

blog宣傳,這是一個沒有必要性的事,大概就在程式獵人po一下~

要來的人自然會來

程式獵人bbs 個人版yen3

telnet://bbs.csie.cgu.edu.tw

星期三, 6月 28, 2006

追求與麻煩

任何在追求的當下都是美好的,到了卻又是麻煩的

女人是,追求的時候是美好的,到手之後, 每天的相處是麻煩的

程式設計也是,思考的時候是美好的,實作的時候是麻煩的

星期五, 6月 02, 2006

測試

事實上,當有很多blog之後
我該擔心的是,我該把文章發表到那裡去呢,事實上,我自己也不知道
一個很會寫的人,發表太多地方,只會把自己的創作數壓到極低而己