高工時HTC工程師:我們不是沒想過要發展自己的作業系統

/

註: 備份一下.

來源http://csiecomm.blogspot.com/2011/07/b92htc.html 原網址已斷頭?看起來是一些台大學弟妹對學長的訪談內容。
http://www.mobile01.com/topicdetail.php?f=566&t=2370096&last=30927800

http://forum.inside.com.tw/viewthread.php?tid=935


受訪對象:高工時工程師(不具名)
訪問時間:2011年6月12日
訪問人員:吳文傑、李卿澄

外傳HTC公司在美歐之產品與台灣有很大的差異,請問就你所知是事實嗎?理由是什麼呢?

這問題也太針對我們公司了吧。

台灣消費者對於手機的購買習慣與國外差很多。先回答理由。我們對於買手機,與歐美市場、甚至日本有很大的差別。像我們在台灣買手機大部分習慣是跟手機零售 業者、通訊行買;在國外這種事情很少,國外通常是跟電信商買,手機綁電信商。我們出給國外的手機是出給電信商而不是自己當零售業者開店來賣,每個電信商都 有不同需求。規模大的電信商,要求可以比較多,如果這個電信商願意出比較多的錢,來提供某些規格的手機,我當然就可以給他比較好一點的規格,所以,這個問 題,我們來看的話覺得不是事實。

對公司來講,應該說,出給每一家電信商的手機都不一樣。不應以國內外來看,而應該以不同營運商來看。事實上我們每一個計畫跑得時候,電信商的要求是公司最 大的考量,因為我們公司…不能算代工啦,我想講代工可能比較好一點,我們不做OEM,我們做ODM,所以我們跟電信商一直有密切的合作關係,也因為這 種市場特性,不會去得罪電信商,大部分時候都是迎合電信商要求,以前常常可以看到電信商客製化的手機,這方面我們花了蠻多的心力。如果向三星這種做比較大 的,就比較不像我們可以給電信商這種要求,我們現在規模也變大了,但是我們跟電信商的合作模式還是如此,但是我們可以看出來這幾年狀況好很多,我們可以比 較以我們想要的規格來跟電信商談,也是因為規模做大了。

HTC公司的設計與品管流程是如何互動與配合?

品管這件事情,你如果說是軟體喔,這…太痛苦了。我們公司的軟體規格到出貨前都有可能改。公司一直在宣揚的公司核心價值dynamic ,如果是我自己說的話-毫無原則、毫無紀律可言。比如說,一個郵件程式的規格定出來之後,三天兩頭就改,那,工程師這邊也是三天兩頭跟著改,你們覺得這東 西真的有品管可言嗎?

問:規格一直改,也沒有時間Debug?

我們當然有跑壓力測試呀有的沒有的,但規格一直在改,有時後到出貨時都還有bug,我自己覺得我們公司… 有啦有啦有品管可言,但是規格常常在改,這方面我覺得做的不是很好。我覺得我們在軟體上的設計比同樣是做智慧手機的廠商好很多,我們真的花了很多心思去了 解使用者。 有些公司反而專注再外型、規格之上。

問:如果規格一直改,那code會不會很糟糕?

如果有在追我們的產品,我們有一個人機介面,更新速度很快,其實還有很多bug,不過最近幾個月有正視這些問題,有發了一些嚴格的規定在控制。

有帥哥/美女工程師在裡面嗎?(工作環境的男女比例?)

看樓層啦,我自己部門19個人一個女的,可是品管就反過來。

問:男女比例會與專業能力有關嗎?外界可能會有一些刻板印象?

我覺得專業能力跟性別沒有關係。我覺得可能是因為工時啦,所以研發人員女生比較不願意做。

工程師一定要爆肝嗎?

可以分成工作時間長和工作時間晚兩個部份來討論。

工作晚的話,這件事情我覺得是惡性循環。其實大家集中密集來公司大概是早上可是問題是老闆比你更晚來,沒有人管你幾點來,只會在意你幾點走。有些主管不會在意這些,但大環境如此,晚上打電話找不到你會覺得你不認真,星期天晚上兩點打電話找你都會覺得理所當然。

工程師一定要爆肝嗎?看公司。

有一個部份要替公司辯解一下。有些人會需要半夜在公司是因為客戶在國外,要跟客戶聯絡什麼的,所以他們早上可以不用來。

工時長的話,我覺得,因為台灣的大老闆沒有人力也是一種成本的觀念。對他們來講,勞工工作八小時和十八小時的成本是一樣的,沒有加班費呀,他們一句責任制就壓死你啦。

工作內容?會不會很單調?還是充滿挑戰?

看部門。如果是一些比較不會有新東西的部門,我們有些部門…例如說他在寫一個計算機,就是版本更新時,換幾個圖而已,他們這種部門就比較輕鬆,相對也比較單調。

像我自己這邊的話,每天睜開眼睛又是新的挑戰。

問:像是Spec又改了?

我的部門不管spec,比較屬於優化的部份,永遠都會有新的挑戰。

常常碰到一些應用程式,想都想不到怎麼會寫出這種鬼東西,要跳下去跟別人一起解決問題。每天都是新的挑戰。像android的版本一直更新,每次來…這個就很痛苦。

問:要在Android上面做一些更動?

我們更動很多,所以每次有新版本來就會很痛苦,我看到市面上對Android phone改最多的應該就是我們公司。

問:都快要可以寫自己的Android了?

我們不是沒想過要發展自己的作業系統喔,不過後來被取消了,後來發現沒有意義,如果量不夠大,平台最後還是會死掉。所以說會不會很單調或是充滿挑戰?要看部門。

面對這樣長的工作時數,是什麼樣的理由讓你願意持續努力?

我們公司內部真的有很多人是充滿理想、熱血,真的有,但這些人的熱情在現實中很快會被消磨殆盡,但我不會認為這是產業的普遍現象啦。進來之後你會發現很多 公司跟理想中的不一樣,我是以我們這邊研發部門來說啦,你們應該也知道台灣很多RD不是真的在研發,而只是在coding。

問:兩者之間的差別?是理論和實務的不同嗎?

人家開spec出來,你把他coding出來,我不知道哪裡有研發。不過我們公司真的有研發,像Magic Lab,他們那邊的工作性質和我們差很多,我這邊有很多充滿熱情的人進來很快就被磨掉,通常最快離職的也是他們。

我們公司流動率很高,當我09年進公司,04年進來的人已經資深到跟主管差不多,不過這一年來因為股價狂飆,走的人有明顯變少。若以進來年份排順序好了, 我進來兩年,我已經差不多排到50%了,所以你可以知道我們的流動率是非常高的,很多人是充滿著理想,覺得這是一家做出很棒產品的公司。我們自己也覺得公 司產品很棒,但是內部的環境會讓很多人無法達成理想。

問:流動率高是業界普遍現象嗎?

在我們公司比較嚴重,這也是一些bug一直de不出來的原因。人都走了,有些code還不如砍掉重練,有一些應用程式,過去有很嚴重的memory leak,後來人走了,來一個新人,他不去修,後來就砍掉重練,流動性高就會變成這樣子呀。

工時很長?是,但是還是要看部門。也有很爽的單位,每天大概下午七點多就可以下班,而且錢很多。

工時很長,看部門。不要提那種特例,主要有產出的部門的工時都很長。我們從農曆年就告訴我們六日加班要一直到五月,一不小心就到六月。

問:工作時數不會影響效率嗎?

會呀,可是有些公司就是希望人一直在這邊呀,我們有過一週工作時數約是九十幾到一百小時,不過那是最忙得時候。有產出的部門工時都很長,而且這件事情我們認為短時間內不會變好。

問:如何面對長工時?用笑容來面對?

如何面對長工時呢?我是例外啦,就只能哀怨的倒數了。

什麼理由願意持續努力?扣掉有理想的大家一定是為了錢才進來的,只要不像是我們這種一畢業就進來的,在業界有待過的都知道這家公司對員工的操勞的相關風評不是很好。用什麼態度面對?大概還是為了錢。可是為什麼流動性還是這麼高喔?最後大家會發現其實根本沒什麼錢。

問:有理想的人會被消磨掉理想,那有理想的人應該如何發展?

一個有理想的人要慎選部門。他們會提出一些很有創意的想法,然後會跟大家說一起來做吧,雖然不是每個意見都會成功或實行,但是這很合理,本來就不是所有的 概念都可行,有一些可行的,如果是有理想的人應該會為此感到滿足。所以如果你是有理想的人,不要來有出貨案子壓力的實戰部門,他就是一直拿著時程一直壓 你,然後spec一直改。

在求學階段時所想像未來的工作是什麼樣子?與現在的工作內容相符嗎?

我們曾經以為會跟大三、大四和研究所待在實驗室差不多,實際上是有一些差異的。

大家在唸書的時候就是被Deadline追著跑的,可是在像這種公司工作,一天可能會有好幾個Deadline,每一天都被Deadline追著跑。我相 信除了大三下以外,大學部大部分被Deadline追著跑都是特定的時候,以我自己來講,會被Deadline追著跑是因為我平常都不寫作業,應該說在唸 書的時候,沒有辦法體會每天都被人家追著跑。

你要想想看,每天都是期末考,每一天,而且不是早上考一科,下午考一科,是每個小時都在考一科,每個小時都在考,每天都在考,一個禮拜七天,我們是算日曆 天不是工作天,我們一星期是七天。所以如果你們要想像未來的工作是什麼,這個部份不只是我們公司。像有些同學在晨星、聯發科等,如果要進這種公司要想像的 就是像剛剛講得那樣,每天都是期末考週,每個小時都在考試。

問:最實際的狀況是像說,我一小時候有一個案子要交出去嗎?

做一個東西可能同時可以提供給兩三個案子用,問題是,寫程式一定會有bug,軟體品管那邊的人就追,會一直要修,同時要修問題,spec也會改,又有新的要求,你也會有一些問題,這些都在追著你。

但是這間公司的流程管理很差,每一件事情沒有優先順序觀念,只要有事情就是ASAP,事情多但是所有的事情都是ASAP。像我這星期四請假,當晚收信有兩百八十幾封信。我只是一個資深工程師,可以想像主任工程師、主管他們一天是什麼樣子狀況。

我覺得這個問題,我們那時候想像大概就是一星期一個Deadline,現在大三應該是待在202吧,可能會就是星期一個Deadline,或是有時候沒有 Deadline。如果有人要知道未來工作是什麼樣子,我提供的資訊就是就每天都是期末考,一天八科以上,一星期七天這樣。這樣就可以想像未來的工作。

唸書的時候,project搞砸了、作業搞砸了、考試搞砸了這些都是自己的分數,可是出來工作,東西搞砸了,那個壓力和對自己的成績負責是另外一回事,會 承受的壓力絕對遠大於…也不能說做爛了,扣一點分就不做,當然可以擺爛,你不爽可以把我開除呀,如果是這種心態我當然沒話說,可是如果不是,當然不要 有這種心態。這種Deadline的壓力和作業期末考的壓力完全是兩回事。而且出來工作有太多政治上的考量、問題。

問:團隊內會分黨派?

不是,所謂的政治問題不是這個意思。像是一個問題過來了,唸書的時候,我就是做出來,跑完測資可以過ok就好了。工作不是這樣,我們常常在蒐集證據,每個 人都over loading,工作量爆掉,我們要收集證據說,哪個部門常常出包害我們也連帶出什麼問題,然後要發信給大老闆們說以後有我們的問題他們要先看,我這只是 一個例子,還有很多很多的狀況,你還花很多心力在這種事情上面。這些都不是在學校時我曾經有想像過的。

問:這樣會不會造成沒有自己的生活?

對呀,沒有自己的生活呀。我維持了有三、四個月就是家裡、公司。一直到四月還五月初才跟同屆的同學約吃飯,這是大概是四個多月來第一次離開家裡公司這條 路。並不是說我的個性如此,而是沒有時間。有時間難得可以休息都回家睡覺了。不會有自己的生活。沒有自己的生活,薪水又不高,工作內容又不符合預期,那為 什麼還要在這裡呢?

問:所謂薪水不高是?有到十萬以上嗎?

跟工作付出的心力不成比例。年所得平均有。

問:國外會不會比較好?

國外好很多,國外對於勞工工時概念與台灣完全不同,差很多。

在公司工作和在求學階段比較,最不能適應的一件事是什麼呢?

不是說不能適應,是沒有想到。大家都可以念到台大資工系畢業。能力都不是問題。我甚至覺得計能力而言,以大部分業界的需求,甚至不需要台大資工系這種這麼 操的訓練方式出來的學生,跟業界比起來實務跟學校的操法也完全不一樣啦。不能適應的是搞政治那一套,人與人之間的問題比程式還要複雜,不過我相信工作都是 這樣啦,這應該是學校與出了學校之後的差別。

舉一個簡單的例子,有一隻手機,玩某一個應用程式會導致系統重啟,大家就開始釐清,為什麼只有這個應用程式會出事,到底是誰的問題,系統就怪應用程式,應 用程式就怪系統。像我的部門有另外一個責任,就是剛剛講負責穩定度嘛,這時候就要跳下來釐清到底是誰得問題,這個就是吵翻天呀。

問:會有很多的時間在開會上面嗎?

看開會的人主持會議的能力。有的主管會讓大家都站著,大家都站著大家都淚就會趕快把會開完。

問:大家太急會不會造成效益…?

開會之前很多東西就要準備好呀。

工作上所需要、面對的問題,與大學時候所學習到的知識的相關程度?

還是看部門。以我自己部門為例,因為我不是邏輯、硬體有關的部門,我可能只有數位系統設計跟數位電子學跟我沒有關係。如果是邏輯部門這兩個當然很重要。對我而言,系上的課程沒有一門不會不需要。

你以為我們真的在coding的工程師,線性代數沒有用嗎?線性代數用來分析一些記憶體問題這些都是有用的,有一些程式背後邏輯要設計時,這些都是很有用的,機率,當然也很有用呀。

問:如果剛剛有兩門課是因為工作類型而比較不需要,剩下的課程其實都需要?

對,真的都需要。從大一開始舉例,c/c++,java一定都需要,UML很重要,UML這門課真的不應該放在大一,應該放在高年級,真的要對系統概念比 較熟悉才知道那些東西在幹麼,實際上在做部門間的分工、整個程式設計的流程以及模型都很重要,這真的是很重要的一門課,我很後悔大一那時候沒學好。

問:我想大家都有機會後悔。那業界真的會用UML來做溝通?

會,而且真的很重要,會很嚴謹。就不會再有解釋,就是flow畫出來,就是這麼回事。你們現在還沒大四,大四除了資料庫就是專題。資料庫真的是很重要的一門課。一個sql下去,會寫跟不會寫的效率真的差很多。

系上的課,我回想起來我不覺得有什麼不重要的。很多人會懷疑compiler到底有沒有用,compiler好重要,對於coding出來東西的效能有很大的影響,要實際知道這一行真的編譯下去會變成什麼樣子,才有辦法想像要怎麼改善效能。

在大學的時候很少有課會要求效能,大部分是要求正確性。出來業界的體悟就是,實際上一個產品,正確性是不夠的,RAM用越少越好,不是有個標準,而是大家 會一直問你,真的不能再少嗎?快,還要更快。這很多東西跟以前在學校不一樣。我自己覺得,在學校時對效能和記憶體的要求都比較少。

相關程度?我覺得高度相關,但是學校還少教了很多東西。應該也不是少教,都有教啦,只是沒有要求。沒有要求的部份大家就自然只是知道而已。

問:有些人說課本上的知識在業界派不上用場?

像Android是一個全新的東西,他裡面很多架構都自己來,像他底層是用Linux kernel,像以前學的系統程式、作業系統這些都會用到,但google又自己疊床架屋,加了很多東西上去,如IPC,google又自己加了一套自己 的IPC,在學校學到的觀念拿出來用一切都說得通,但是細節都會不一樣所以剛開始看到會覺得很奇怪為什麼這樣搞,還有很多例子都是這樣,但大觀念沒什麼 變,所以我覺得學校很多課程不要覺得他不重要,以後會遇到什麼都不知道。

對於大家都在Android 3.0,為何HTC推出的新平板仍僅採用2.3?

這個問題非常非常簡單,因為google不給我們code呀。

因為當我們想要做平板的時候,那時候其實是2.2,我們有很多東西都是守口如瓶,其實我們平板做很久了,其實從Android 1.x 的時候就開始做,那時候其實很不適合平板就放棄了。一直到2.1~2.2在做就確定是要出了。會做這麼久的原因是因為公司想要跟其他家平板不一樣,公司花 蠻多心力在想,要如何跟其他家有差異,如果是一個有理想得人作到這個部份,他應該會很開心,因為我們在這個地方真的花蠻多力氣的。

剛剛講了很多負面的東西,是因為我們是實際上要負責一個東西實作成敗壓力,有些像做概念性、市場研究、使用者經驗研究的那種,公司花蠻多心力研究的。

問:Google為何不給code?

大家都以為我們跟google的關係很好,其實我們從2.2開始我們都是等Open source。2.2比Open source早一個星期拿到,以前2.1是只要Google有新code就拿到,從2.3開始是等Open source。

我們自己內部工程師的想法是,因為我們發現Android很多問題都沒有回報給google, 所以google就不高興,而且我們對android介面改太多,幾乎不認得那是一隻android phone,我們公司要讓使用者覺得這是一隻htc手機,而不是這是一隻windows phone或android phone,讓使用者有相同的使用者經驗。應該google為此不太爽。像有同學學長在其它公司工作,他們都知道sony、motorola、三星早早就 拿到,我們都比較晚拿到。

想要進入職場要有些什麼準備?

一定要忘記自己是台大畢業的。我想信很多人會一直把這件事情放在心上,不管是有意或無意,總是會有一些這種想法,不管是覺得優越還是榮耀,但是一畢業出了校門就請把他忘了。

我覺得這件事情要忘掉,因為真的不重要,當然你會碰到有些人說你台大畢業耶怎樣怎樣,人家會對你有一些期待,但是聽聽就算了,重點是一定要忘記這件事情。 然後說實在台大畢業他是有什麼了不起?第一個是這件事情一定要調整好,出去外面大家就是看績效、表現。從你報到的第一天開始你是哪裡畢業的就不重要了。然 後要嚴正駁斥校長說的不要在意薪水。我自己把他這句話詮釋為如果有個工作是你充滿熱誠、是夢想的話那不要在意薪水。但工作是為了賺錢,怎麼可以不在意薪 水?

如果對一些技術性層面的東西你有非常高的期許的話,這邊真的在軟體方面的技術,至少在android team這邊,我覺得我們在很多方面甚至走在google前面,很多時候是我們發現問題,然後我們自己解決掉。對於很想磨練技術的人進來,可以學到很多東西。

問:目前為止,業界的主管都是直接用有那種管理背景的嗎?

沒有,有很多是研發人員升上去,不過不會有這家公司從基層幹上去。職位升遷最快的方法是跳出來,不是在這邊待的久。在這邊待久,這個會累積快沒錯,但是用跳的會累積的更快,包含職位。

問:沒有專業背景怎麼領導?

我們公司什麼東西都叫你ASAP,理由之一就是有很多專案經理,他們不懂什麼事情是重要的,如果你要當PM,最好還是有幾年工程師的背景。學校出來就做這個,我覺得還是會被唬得一愣一愣的。

沒有專業能力,就無法分辨什麼是重要什麼不重要。例如手機自己會重開這個問題,可能的原因有千百種,如果品管報了一個手機重開,那他到底原因是什麼?到底 嚴不嚴重?這些都要有能力分辨,才要來追這個問題到底要不要趕快修。如果原因是硬體問題,你要叫軟體的人去解嗎?我們公司有時候會有工廠有問題,要軟體的 人去看。

問:這種負責管理的人不具專業能力的問題為什麼沒有解決?

因為上面沒有發現這種問題呀。因為產品還是照樣出來呀。像那種半夜兩點會打電話給你的都是那些專案經理,說有東西好急喔,他們是有多急?專案經理其實很累,因為不會做事情才會累,他們又不是真的下去coding,事情真的有這麼多嗎?都在打電話。

我看過最好笑的事情,上星期端午連假,有個東西我星期天晚上就已經處理完了。隔天過了24小時,專案經理卻發信,說那個誰趕快把這些問題釐清,後面還加 ASAP,我就回信說我24小時前就已經回了。他就不敢講話了,他連自己的事情都沒有做好,那每天都工作到這麼晚,難道是我的錯嗎?

專案經理不是主管,他可能職稱是工程師。他的身份可能跟我一樣大,甚至比我小,也不是他可以管我,是他要統籌整個案子事情,成敗他們要負責。

問:主管會有專業背景嗎 ?

會呀,研發人員的主管一定都是專業人才,這個倒是沒有問題。專案經理沒有專業能力是一件很糟糕的事情。

工程師會不善交際嗎?

其實是否不善交際還是個性的問題,可能只能說工程師不會將交際能力做為一個門檻,雖然有些部門會有這樣的需求,比如說比較偏管理的工作,但大部分的狀況下交際的能力是不會影響到工程師這份工作。

對於未來工作的重要能力及大學課程?

review code是一個蠻重要的能力,全部從頭寫幾乎可以說是不可能,而在review code的時候學習用一些tool也是很重要的,除了像gdb一類的debugger之外,學會使用看performance的工具也是很重要的,現今系 上的課比較偏向準確度的訓練,在performance的部分就相對比較少(此處是指尚未做課程改革的時候),還有一件事情是大家都會很習慣助教給的測 資,要養成習慣測試,自己去想自己去生,各種可能的情況,可能讓你的程式爆掉,這種應該要從大一就要有習慣。

[轉錄] 程式設計師的格言

程式設計師的格言(盜作不少)
http://www2.biglobe.ne.jp/~oni_page/other/etc/pr03.html

(翻譯beta r2 by but=HO)

http://buttaiwan.wordpress.com/2008/10/12/programmers_rule/


譯註:
PG = Programmer (剛進去只負責聽命寫程式的)
SE = System Engineer (日本說的 SE 算是 team leader ? 還是工程師不過自己不寫 code)

=======================================

1
每天有24小時。
所謂的「今天之內」,是指到明天早上為止。

2
程式不會照自己所想的跑。只會照所寫的跑。


3
需求規格在程式寫完後才會敲定。
基本規格要客戶看到成品後才會決定。
詳細規格要使用者用過後才會確定。

4
我對軟體設計的方式導出的結論,有兩種方式。
一是把軟體設計得單純到很明顯不會有缺陷,
不然就是把軟體設計得複雜到沒有明顯的缺陷。
- C.A.R.Hoare

5
程式碼不要在開發現場寫! 去客戶那寫!
除錯不要在期限前做! 上線後再做!


6
畫面藍了。

7
先說「沒辦法」的人贏。

8
有意見的話你寫

9
要殺一個程式設計師不需要刀,改三次規格就好

10
首先要先懷疑別人,被懷疑的人或許會把問題解決掉。
(註:通常會「先懷疑自己」)

11
開發沒有終點。只有釋出(release)。

12
無論規格多晚才能確定,結案期限永遠不會變。

這是所謂的「期限守恆定理」。

13
客戶總是覺得水跟追加需求是不用錢的。

14
付錢愈計較的客人愈囉唆。

15
在排定開發行程時,總是視而不見一些連小學生都會的算數。
業務部門總是一堆不知道1+1=2的人。

16
一個人掛了大家都掛了。

17
bug過了一晚可能就變成規格了。

18
好的規格找一個天才不如找三個凡人。

爛的規格找一百個凡人不如找一個天才。

19
客製軟體中30%的價格用在確認規格上。
30%用在修改規格上。
30%用在找bug。
結果初期規格反映在價格上占的比例只有10%。

20
對客戶來說SE是部下,程式設計師是家畜。
對SE來說客人是錢,對程式設計師來說顧客是看不見的病毒。
除了弄完程式以外,沒有其他驅除的辦法。

21
顧客想受SE喜歡,要自己了解到系統開發需要時間與金錢,早點確定規格。

SE想受顧客喜歡,則要讓程式設計師討厭自己。

22
很多SE跟程式設計師都暗自想著有錢有閒的話什麼系統都想自己動手做,
不過都沒這種機會。

23
品質的劣化程度依規格改變的次數與規模而定。

24
業務是認為空想能夠實現的夢想家。
SE則是深信任何障礙都能突破的冒險家。
程式設計師則是被夢想家和冒險家拋到漆黑海裡的漂流者。

25
有才能的程式設計師第一次看到設計細節時,要先理解程式的目的。

接下來要設法讓SE了解到以指定的方法、工時並無法完成這個工作。

26
程式是運氣與直覺堆砌而成的奇蹟。
若不具備這兩者,不可能以這樣的工時實現這樣的規格。
修改規格是對奇蹟吐槽的褻瀆行為。
而追加修改則是相信奇蹟還會重現的無謀行動。

27
程式設計師聽了「把自己當作顧客去著想!」而開始思考。
啊,像夢一樣。

28
對於因為興趣而寫程式的人來說,所謂的技術是程式語言能力。

對於因為工作而寫程式的人來說,所謂的技術是邏輯思考能力與人際溝通能力。
程式語言可以看著手冊溝通,客戶不行。

29
程式系統在交貨之前會不斷縮小。
先用元件定義取悅老闆。
再拿經費概算要部長妥協現實的方案。
在運用會議中,課長會嘗識減少自己責任範圍。
在細節會議中,負責人會把範圍縮到自己記得的部分。

30
SE需要持久力,程式設計師需要爆發力。

31

準時離開公司,工作會變多。

32
完美的程式需要完美的時間與金錢。
聽說揮霍著美國的國家預算的NASA,也覺得時間跟錢不夠。

33
詳細設計要在程式碼的註解裡做完。
註解是唯一的自衛手段,至少要讓自己看懂。

34
還有時間看程式碼的話就執行他。
CPU跑得比腦細胞快。至少這時候可以休息。

35
程式的異常該稱為「bug」還是「規格上的限制」是看期限還剩多久決定的。


36
所謂便服日,好像社會上把他叫做假日
(註) 日本有些公司會有所謂便服日(不用穿西裝的日子),通常是星期五,但...

37
地獄持續一段時間後,充滿殺氣的怒吼會變多。
再持續一段時間,說話會變少但牢騷會變多,壟罩在凝重的氣氛裡。
再持續下去,反而會海闊天空,四周洋溢充滿活力的聲音。
這種狀態稱為「Programmer's High」,也是倒下來的人開始出現的時候。


38
遠處的火災一定燒到這裡。

39
禱告,然後跑吧。

40
程式不是用腦記的,要用身體記住。

41
明天能放假的話死了也罷。

42
外面有下雨耶,昨天開始下的嗎?

43
若不能心靜不移,身體會掛。
若不讓自己殘忍,自己會被殺。

44
客戶會說謊,業務會作夢,SE會做白日夢。
程式設計師則惦惦。(愈來愈自言自語)


45
(日文文字遊戲)
SE總是不負責的說「別逞強」,
業務總是無理取鬧不准說「沒辦法」。

46
規格書就像航海圖,客戶則是洋流。洋流陰晴不定,航海圖就變垃圾。
程式設計師必須在沒有航海圖的海上憑自己的力量找到大陸。

47
再嘮嘮叨叨下去也是要付錢的。

48
多想個10秒鐘,你可以不說「嗯,這個做得到」。

49
人是無法從別人失敗記取教訓的動物。

砍成本、改規格、加需求、趕上線,從來沒有人從眾多失敗中記取教訓。

50
老手用來提振精神的魔法格言:
「不過比起以前來說算是…」
新人用來提起幹勁的魔法格言:
「把這件工作做完的話…」他們還不知道工作是沒有終點的。

51
所謂交案期限,是指開發現場從公司換到客戶那裡的日子。

52
程式、SE、經理不是職務。是逃不掉的責任。

53
業務是最難搞的客戶。


54
能夠迅速想到解法的程式設計師太多了。
他們能用一分鐘想到方法,用一天去寫程式。
不需要花一小時想到解法,再用一小時去寫程式。
- Jon Bentley

55
漂亮的規格,可以從沒有bug出現看出來。
明明爛的就是設計,為什麼是這樣…

56
上線後的除錯才叫做bug。

57
追加需求確定後交貨期限就無法確定,
交貨期限確定後追加需求就無法確定。

這稱為「追加需求與交貨期限的測不準原理」。

58
除三個錯就會冒出一個錯。
這稱為bug的無窮迴圈。

59
不祥的預感總會實現。
不過程式設計師不會去煩惱不祥的預感,那是SE的工作。

60
要解決地獄的辦法,就是客戶把錢交出來。

61
不懂電腦的操作者是發現bug的天才。而且無法重現。

62
每次開會就更改規格的客戶,
他的操作手冊要等到操作寫好的程式後才能寫出來。


63
搞不懂的時候,Currency(長整數)比Interger(整數)好用。
Variant(字串、數字都能存的萬能變數)又比Currency(長整數)好用。
安全第一。
(VB程式設計師如是說)

64
啊,那是微軟的規格。

65
程式設計師所不滿的規格也一定會讓客戶不滿。
(這是說程式設計師覺得難寫的地方常常是SE溝通有落差)

66
程式設計師需要的技能,

包括交涉、時程管理、業務分析、提案、設計、程式語言、架構、維護、使用。
SE需要的技能則減掉程式語言、架構、維護與使用。
專案經理需要的能力則再減掉業務分析、提案與設計。
業務需要的能力再扣掉時程管理。

67
正因為健康,才能做不健康的事。

68
規、規格、是規格啦。不過有一點跟規格不太一樣啦。

69
那是你說的規格。

70
開發室沒有窗戶,那是因為以前…


71
爛了也是因為規格。

72
SE: 真沒辦法。
PG: 也沒註解。
(碰到不知道是誰寫的程式,大家都束手無策的狀態)

73
為什麼你不能兩三下解決掉他啦。
因為之前兩三下搞定的東西也被你兩三下就否定了。

74
不會動的bug就只是普通的bug。(會動的bug則能視為規格)

75
今天好好清理bug,bug應該死光了吧。

咦?Windows也死了唷。

76
客戶不會去想最壞的情況。要他面對最壞的情況,他會認為是漫天開價。
SE則會顧慮最壞的情況,準備應付最壞的情況。
程式設計師比誰都早預料到最壞的情況,而無視最壞的情況。

77
唯一不產生bug的方法,就是不寫程式。
第二好的方法,就是在時程跟人員確定之後的每次改規格,都重新檢視過整個專案。

78
共同責任是程式設計師的責任。

管理職?那是啥?好吃嗎?我沒吃過耶。

79
如果可以改行的話,想找個準時下班不叫「逃跑」的工作。

80
對職業程式設計師來說,漂亮的程式是單純而自然的邏輯、簡單而基本的指令、豐富的註解,
也就是新手程式設計師也能馬上動手改的程式。
而要寫租這樣的程式,需要單純、簡單、美麗的規格。
但可惜客人總是喜歡搞很複雜。

81
設計者應該是不該要求製作者製作出超過設計以上內容的吧…


82
無論是做的比規格書裡的多,還是只照規格書裡的寫,SE都會找程式設計師的碴。
所以程式設計師只做規格書裡的寫的內容。

83
SE對程式設計師說的「常識」每三小時變一次。

84
自己看規格書。不能跑的是規格。

85
「沒辦法」是要看把一天當多少小時來算。
一天常常指的是3人日,一個月常常是指4.5人月喔。

86
工時要減掉一半的單體測試與一半的系統測試,

而交貨期則要另外加上上線後的兩個月。

87
能拿到錢的規格變更稱為「受理項目」,
拿不到錢的規格變更則稱為「SE的規格確認失誤」。
程式設計師是這麼看的。

88
累了。我想睡了。可以回家嗎。
(累了吧,我也累了。好累喔怎麼了。反正就是規格啦,管他的)

89
試圖降低成本的話,為了配合預算,品質會下降,不過漫天開價做出來的品質也不見得好到哪裡去。

90

REDO到底該怎麼唸一直搞不懂。是利斗嗎、李度嗎、R E D O嗎,難道是 red 零 嗎? 拜託加上注音吧。
(譯註:我比較煩惱 Linux)

91
有人在程式碼註解裡寫日記。
像「今天是雨天…」,「想回家…」之類的。
甚至還有「修改日: 2003/10/10 不能同意你更多」這種註解出現。
說到這個,好像也看過「吃大便」這樣的註解。

92
小學生時第一次看到電腦
國中時第一次學會怎麼用

高中與大學學會程式語言
出社會後才發現自己走錯路

93
「不要讓老闆當業務比較好」

94
說來說去,要去研究根本不知道為什麼會動的東西為什麼不會動了,找拿破崙來也沒搞頭。


------------------------

ex 1
就算程式裡沒bug,編譯器會有bug。
就算編譯器沒bug,OS會有bug。
就算一切都沒bug,客戶會決定什麼是bug。


ex 2
規格與規格書是不同的東西。

ex 3
比期限更重要的是靈感與睡眠。

ex 4
比知識與經驗重要的是手冊與時間。

ex 5
能動就好了,能動的話…

ex 6
過了三天就是別人寫的程式碼。

ex 7 (大搜查線系列)
規格變動不是在會議室裡發生的!是在現場發生的!

ex 8 (大搜查線系列)
異常不是在模擬測試時發生的!是上線後才會發生的!


ex 9
漂亮的設計三天或許就膩了
骯髒的設計三天就習慣了

ex 10
bug與規格是一體兩面

ex 11
電腦裡沒有bug,bug常在人心。

ex 12
無論怎麼檢查,不管怎麼確認,上線前一晚就是睡不著。(RFC968)

ex 13
估價需要1%的經驗與99%的直覺

ex 14
沒有什麼事情比直接讓找不到任何bug的程式直接上線還要可怕的了。


ex 15
・『程式設計師』=能將SE條理不通的說明翻譯成程式碼的高手
・『SE』=與客戶討論改寫規格書、與程式設計師討論後再改寫規格書,程式出貨後還要繼續改寫規格書的人
・『PM』=每天修改自己定下的行程表的人
・『業界老鳥』=臉色蒼白缺乏表情的人
・『外包』=幫不會寫程式的正職員工寫程式的人
・『coding』=複製貼上的工作
・『單體測試』=指開始寫程式
・『除錯』=把程式碼註解掉的工作

・『新同事』=在火燒屁股的專案火上加油的人
・『出貨日』=把只完成一半的系統上線的日子
・『末班電車』=業界平均的下班時間
・『颱風假』=一年一度可以準時下班的業界假日

ex 16
當誰寫的程式碼跑出bug時,那個人大概都不在了(墨菲定理?)

ex 17
最終手段
「重開機」
意外的常常都很有效

ex 18
最強藉口
以前「那是硬體的極限」

現在「那是Windows的規格」

ex 19
「程式碼的可信度,不會比寫的人還可信。」

關於對 Unicode 補完計畫的指教與批評

作者 but (????!) 看板 SOS
標題 關於對 Unicode 補完計畫的指教與批評
時間 Sat Oct 08 20:02:15 2005
───────────────────────────────────────

首先先自我介紹
我是 Unicode 補完計畫的始作俑者
這東西是在 2001 年末弄出來的
最近的版本我參與比較少
不過大致的技術內容還是理解的

首先要道歉的是
Unicode 補完計畫這個名稱似乎取得不太好
或許叫做 Big5 補完計畫比較切合事實
事實上這東西曾經叫做 Big5 Extension
不過這名字實在太容易跟偉大中推會提的 Big5e 混淆

回到正題 首先這篇文章要對一些常見的誤解作釐清

(1) Unicode 補完計畫沒有動到 Unicode 字表
我無法理解 Unicode 補完計畫是哪裡破壞了 Unicode
Unicode 補完計畫修改的是 Big-5

(2) 日文假名是 Big5 標準
目前行政院列為標準的 Big5-2003 裡
平假名跟片假名是列為標準的
使用到假名的 Big5 文件是標準的
不標準的是微軟的 Big5-CP950

(3) Windows NT 下檔案系統「通常」是 Unicode
Windows NT 下,檔名「理論上」是 Unicode 的
所以沒有所謂的 ANSI 檔名或 Unicode 檔名
本軟體所附的「日文檔名修改程式」
用途是將日文假名與簡體字從造字轉換成真正的 Unicode 碼
(轉換前會是 Unicode 的造字區域)
也就是說轉換會是更正確的 Unicode
但本來沒有使用櫻花、font.24或中國海命名過檔案的人不需要轉換

但是,上面說的是通則
事實上這問題有點複雜
NTFS 是完全 Unicode 的,這點沒有問題
但 FAT32 其實每個檔案都會以 Unicode 與 ANSI 各存一份檔名!
這是因為長檔名支援造成的問題 本來 FAT 並不支援長檔名
所以檔名區域只有 8.3 的長度 這部分是存 ANSI
後來 Windows 為了支援長檔名才加了另一個 Unicode 部分
但是 Windows 處理 FAT32 的方式很複雜
當檔名長度短於 8.3 的時候 也就是沒有用到長檔名的時候
會直接以 ANSI 版的為準!
所以, FAT32 下檔名符合 8.3 時,檔名會是 ANSI
(這是會???問題的原因 很不幸的他剛好 8 bytes
而 1.5 版的 Unicode 補完計畫是把簡體字單向對應到繁體字)

總之,Unicode 補完計畫在 WinNT 下對檔案系統通常沒有影響
即使解安裝檔名仍會繼續存在
只是 ANSI 軟體可能會無法開啟檔名有非 Big5 字元的檔案
少數比較可能會有問題的情況就是 FAT32 下的 8.3 檔名

(4) Unicode 計畫到底收了哪些字?
前面有人提到 Unicode 補完計畫使用的造字區還是不夠存 sjis 的漢字
這是錯誤指控
事實上, Unicode 補完計畫已經收錄了 GB2312 與 SJIS 裡所有漢字
還收錄了 Big5-2003 裡定義的部首與偏旁等文字

誰需要用 Unicode 補完計畫?

Unicode 補完計畫是個用來解決現存 ANSI 軟體無法處理常用外字的工具。
就如前面有人講過的,在有些不同的領域下,可能有更好的方案。

例如,如果你根本不用 ANSI 環境的軟體,就不需要用他。
如果你願意放棄 Winamp 而改用 Foobar,
如果你願意放棄 Nero 改用 Windows XP 那個常燒壞片的功能,
如果你願意放棄打 BBS …
那很幸運的,您不需要安裝 Unicode 補完計畫。

如果你發現你用 Unicode 補完計畫真的只因為 BBS 而已,
那您也可以考慮改用 Pietty 。
我自己其實很樂見 Pietty 願意這樣設計:)
把 Unicode 補完計畫的架構縮小到應用程式的規模,
或是設計成 AppLocale 式的轉接架構這種計畫,
在 Unicode 補完計畫論壇裡去年我有提起過,
只是一直不了了之,這次 Pietty 的改版我挺驚豔的^^;

如果你同時只處理一種字碼,
例如想要用 Nero 燒日文檔名時,
那 AppLocale 或是切換系統語系就可以幫上你的忙。
如果你偏偏想要在同一張光碟裡燒 Big5 與 SJIS 特有的字,
那很不幸的,切到中文或切到日文大概 Nero 都沒辦法同時燒這兩個檔案。
這時候你還是需要 Unicode 補完計畫。

如果你跟我一樣,就是常常會用到很多 ANSI 軟體,
例如愛用 Media Player Classic、
愛用 VirtualDub …
那很不幸的,安裝 Unicode 補完計畫後使用起來可能會比較方便一點。

事實上, Unicode 補完計畫現在遭受最大的批評在於 WWW 環境。
像 MSN 之類的 Unicode 環境,
Unicode 補完計畫並不會造成任何影響,
所以沒有什麼問題。
以 BBS 這類 ANSI 環境來說,
確實要安裝 Unicode 補完計畫才能看到 Unicode 補完計畫使用者打的外字,
但似乎也沒有更好的解法,基本上我挺滿意這種狀況。
但問題在於 WWW,這是一個比較複雜的環境。
繁體中文的網頁大概仍然有九成以上是 Big5 的,
這似乎是一個 ANSI 環境。
然而,WWW 卻又支援了 &#xxxx; 這種稱為實體參照的 Unicode 表示法。
我個人覺得這種解法其實跟 Unicode 補完計畫一樣,並不怎麼高明,
他也只是一個在 ANSI 環境的頁面裡插入 Unicode 字元的 hack 而已,
而且還挺佔空間! (一個漢字就要吃 8 個 bytes!)
不幸的是,安裝 Unicode 補完計畫以後,確實會有送出的外字字元,
不會自動被轉成實體參照的問題。
關於這個問題,我們建議使用這些方式解決…

1) 使用本軟體附的「HTML文件相容轉換器」
btw, 實際上每次都要轉換實在太麻煩了…

2) 使用本身內建標準 Big5 或 Cp950 的瀏覽器
是的,這是在宣傳 FireFox 😛
當你用了 Firefox 之後,雖然整個系統是 Unicode 補完計畫字碼,
但瀏覽器環境下會是 Big5-2003 環境!
這是多麼的美好!
(ps. 不過 Firefox 採用正確的 Big5-2003,所以日文假名有列入 Big5 裡。)

雜談

(1) Unicode 時代什麼時候才會來臨?
前面有些版友指摘 Unicode 補完計畫反而阻礙 Unicode 的發展。
關於這點我在這裡不予置評,我想討論的是 ANSI 包袱為什麼丟不掉。

事實上,以 Windows 這個平台而言,
雖然 Windows NT 改以 Unicode 為核心了,
但是支援 Unicode 的開發環境實在不成熟!

以微軟自己的開發工具而言,VB 的控制項、VC++ 的 MFC 精靈等等,
大部分內部的程式碼還是使用 ANSI 的 Windows API。
一個程式要完全使用 Unicode 處理,必須全程呼叫 Unicode 的 API。
然而目前這些開發工具根本沒有對 Unicode 開發提供足夠的支援。
而 Borland 的 BCB 與 Delphi 對 Unicode 的支援更差,
連資源都是以 ANSI 的格式儲存的…

君不見大部分的共享軟體還是以 ANSI 開發的。
以 Unicode 開發的門檻真的很高,
而且對軟體的最大產地歐美地區而言,ANSI 還是有極高的人氣。

事實是,除了微軟與Adobe的部分軟體以外,
大部分軟體仍然是 ANSI 的。

再說,目前還是有很多標準是 ANSI 的。
例如 zip 檔案的規格就是 ANSI。

或許很多人討厭 Winamp 使用 Big5 儲存 id3v2 tag 而改用 Foobar,
但事實上市面上所販賣的 MP3 隨身聽,
大部分都是將 id3v2 tag 視為 Big5 讀取的。
Foobar 的 UTF-8 tag 反而在 MP3 隨身聽內常常無法顯示。

目前整個大環境,都還不足夠讓 Unicode 能夠普及。

(2) Nero 的情況
Nero 所燒出來的檔名預設是 Unicode 的(UDF 或 ISO9660 with joliet)
這是檔案系統規格, Nero 也遵守規格燒出 Unicode 的檔名。
所以,安裝有 Unicode 補完計畫所燒出來的 CD,
無論給日文語系的使用者或是沒有安裝 Unicode 補完計畫的使用者,
都能夠正常讀取。
然而, Nero 在讀取硬碟裡的檔案時,使用的是 ANSI 的 API。
所以,檔名存在有非 Big5 字元的時候, Nero 會無法讀取這個檔案。

(3) Unicode 補完計畫的文件不足
是 我們深知這個問題
但人手實在是不夠
歡迎對技術足夠理解 願意寫作的朋友加入

From 忘記思考的Number 5

 [1;32m※ Origin:  [33m土匪.山寨  [37m<bbs.techarea.org / poorman.twbbs.org>  [m
 [1;31m◆ From:  [36m220-135-30-136.HINET-IP.hinet.net [m

十大 Linux 資安 Live CD 套件

作者: mybigfish (ghoti) 看板: News
標題: [Info] 十大 Linux 資安 Live CD 套件
時間: Wed Mar 15 22:49:02 2006

◎ 十大 Linux 資安 Live CD 套件

10 Best Security Live CD Distros (Pen-Test, Forensics & Recovery)
http://www.darknet.org.uk/2006/03/10-best-security-live-cd-distros-pen-test-forensics-recovery/

這裡列出十大 Linux 資安套件,全部都是 LiveCD,因此可以很容易帶著
跑。這些套件都具有 Pen-Test(penetration test, 滲透測試)、
Forensics(鑑識)、Recovery(復原)的功能。

1. BackTrack
http://www.remote-exploit.org/index.php/BackTrack

這個作者之前有提到過,算是 WHax(WHoppix)與 Auditor 的創新混合版
,包含二者之間最好的功能,也是作者最喜愛也認為最好的一款套件。這
款套件是基於 Slackware,採模組化建構,因此使用者可以輕易的客製化。

2. Operator
http://www.ussysadmin.com/operator/

以網路安全為導向的全功能 LiveCD,由 Debian 組成,可以完全在記憶
體當中執行。基本上它的網路安全工具,可以將一台電腦變成 Pen-Test
裝置。另外還有復原以及鑑識工具,可以幫你拯救系統。

3. PHLAK
http://www.phlak.org/modules/mydownloads/
http://public.planetmirror.com/pub/phlak/?fl=p  (mirror,常掛點)

PHLAK 是 [P]rofessional [H]acker’s [L]inux [A]ssault [K]it 的縮寫
,也是模組化的 LiveCD,它有二種羽量級的 GUI(fluxbox and XFCE4)
除了許多安全工具外,還有一本特殊的筆記本,包含相關的安全文件。
PHLAK 是 Morphix 的分支,由 Alex de Landgraaf 建立。這個套件主要
針對 Pen-Test 設計 Pro 玩家不可或缺。

4. Auditor
http://www.remote-exploit.org/index.php/Auditor_mirrors

Auditor 與 WHax 整合當中,但不失為一個好選擇。它是由 KNOPPIX 組成
的 Live 系統,可以在數分鐘內開機執行。獨立於硬體之外,它提供了標準
的作業環境,所以 know-how 的建立以及遠端支援都更加方便。

5. L.A.S Linux
http://www.localareasecurity.com/download

L.A.S 是 Local Area Security 的縮寫,雖然研發有點遲緩,不過仍是一
個有用的 CD。它總是可以裝入 MiniCD (180MB) 當中。它是 Live CD,強
調安全工具以及少部份 footprint 的收集。目前旗下有 MAIN 與 SECSERV
分支,均採 GPL 授權。

6. Knoppix-STD
http://www.knoppix-std.org/download.html

好嚇人的名字,不過你放心 STD 絕對不是 sexually trasmitted disease
(自己翻… :p)STD 是基於 Linux 的安全工具,事實上它由數百種安全
工具組成,除了可以直接光碟開機之外,它還盡可能的收集安全工具,並提
供整潔的界面給使用者。

7. Helix
http://www.e-fense.com/helix/

Helix 著重於鑑識以及事件應變(Incident Response)方面,而不是網路
或是 Pen-Test 端。它以 Knoppix 組成,除了可以從 CD 上開機之外,還
可以開機進入客製化的 Linux 環境當中,甚至包含客製化的核心。具有優
良的硬體偵測能力,以及事件應變與鑑識應用軟體。

8. F.I.R.E
http://fire.dmzs.com/

有點過時,不過仍是最強的可開機鑑識方案(以 OSS 來說)也包含一些
Pen-Test 工具。此外它還提供資料回復、病毒掃描以及弱點評估的功能。

9. nUbuntu
http://www.nubuntu.org/downloads.php

又稱為 Network Ubuntu,與 Ubuntu 一樣都是 LiveCD 競技場中相當新的
成員。它是從 Ubuntu 分支出來,並且增加了安全測試 packages 與移除不
需要的 packages(Gnome、Openoffice.org 等)。這個套件是二人學習經
驗的結晶。

10. INSERT Rescue Security Toolkit
http://www.inside-security.de/insert_en.html

所有競爭者之間的強者,沒有偏重哪一方面。它是一個可開機的、完整的
Linux 系統。以 fluxbox wm 當 GUI,而且可以放入信用卡一般大小的 CD
當中。目前是以 Linux kernel 2.6.12.5 與 Knoppix 4.0.2 構成。

Extra – Knoppix
http://www.knopper.net/knoppix-mirrors/index-en.html

記住,它是其他創新者以及這些套件的基礎,所以別忘了光顧一下。雖然沒
有特殊安全套件,但它是最流暢平順的 LiveCD 套件。即將發行的 Knoppix
5 具有無縫式整合了 libntfs+fuse 的 NTFS 寫入能力。

KNOPPIX is a bootable CD or DVD with a collection of GNU/Linux
software, automatic hardware detection, and support for many
graphics cards, sound cards, SCSI and USB devices and other
peripherals. KNOPPIX can be used as a productive Linux desktop,
educational CD, rescue system, or adapted and used as a platform
for commercial software product demos. It is not necessary to
install anything on a hard disk.(總而言之它是居家、工作必備良藥
ㄟ… 良伴… XD)

※ 其他有有的資源:

* SecurityDistros
http://www.securitydistro.com/

* FrozenTech LiveCD List
http://www.frozentech.com/content/livecd.php?pick=All&showonly=security

* DistroWatch
http://distrowatch.com/

※ 其他選擇(過時或極新)

SlackPen
http://slackpen.secureslack.org/

ThePacketMaster
http://www.thepacketmaster.com/

Trinux
http://trinux.sourceforge.net/

WarLinux
https://sourceforge.net/projects/warlinux/

Network Security Toolkit
http://www.networksecuritytoolkit.org/nst/

BrutalWare
http://hysteria.sk/marko/bw2/

KCPentrix
http://www.kcpentrix.net/Site/

Plan-B
http://www.projectplanb.org/

PENToo
http://www.pentoo.ch/-PENTOO-.html


 [m     [1;31m@ [32m, [m
 [1m     [32m~ [;33;40m \ [1;34m Bigfish [m [m

 [1;36m┌───── [33m◆ [37m程式設計樂園 [33m◆ [36m─────┐ [m  ◢ [31;47m  [37;43m◤ [m  [1m找歌最方便  [36mKKBOX [37m  [33m歌詞搜尋!! [m
 [1;36m│ [31m        CSZone.kkcity.com.tw         [36m│  [37m\ [43m^_^ [32m  [37m/ [;37;43m  [m  [1;31m★ [33mhttp://www.kkbox.com.tw [31m★ [m
 [1;36m└── [34m《 [0;37mFrom:220.139.30.201      [1;34m》 [36m──┘ [m   [33;43m  [1;32m   [;33;40m◤ [m   [1m唱片公司授權,音樂盡情下載 [m

Linux 0.11內核詳解

作者: zha0 ( ) 站內: UNIX
標題: 文件-Linux 0.11內核詳解
時間: Fri Mar 11 11:39:32 2005

無意間在看到的 ^^ 覺得不錯所以 PO 出來分享
—–
學習UNIX,當然要研究<萊昂氏UNIX源代碼分析>,
學習LINUX,那當然要研究 LINUX 的內核開始,你才
真正體會到其中的精妙之處!

  今有幸得到<linux0.11內核詳細>的確是一本不
可多得的好書,高手們肯定都研究過了,象我這種菜
鳥只能脫了鞋子,趕快追!

此電子書最新1.9.5修正版下載位址是:
主站下載:
http://www.oldlinux.org/download/clk011c-1.9.5.pdf

主站如有問題不能下載,可以從其他鏡像站點下載:
http://www2.oldlinux.org/download/clk011c-1.9.5.pdf
http://oldlinux.qbang.org/download/clk011c-1.9.5.pdf
http://oldlinux.mtc.dhs.org/download/clk011c-1.9.5.pdf

linux0.11的內核下載地址是:
http://www.kernel.org/pub/linux/kernel/Historic/old-versions/

 [1;36m┌───── [33m◆ [37m程式設計樂園 [33m◆ [36m─────┐ [m [1;33m★☆  [32m數十萬 [;32m首歌曲, [1;32m22種 [;32m音樂分類  [1;33m☆★ [m
 [1;36m│ [31m        CSZone.kkcity.com.tw         [36m│ [m [1;37;44m□□ [;44m  [1;36m與各大唱片行同步的音樂收藏  [37m□□ [m
 [1;36m└── [34m《 [0;37mFrom:163.17.4.45         [1;34m》 [36m──┘ [m [1;37m快來~ [31mKKBOX  [37m→ [4;33mhttp://www.kkbox.com.tw [m
KK 免費撥接 – http://www.kkcity.com.tw/freeisp/