做為一個(gè)過(guò)來(lái)人(裝裝腔壯壯土氣,其實(shí)再過(guò)一個(gè)月我也才30歲,只是17歲就入行),電腦應(yīng)該是怎么學(xué)的,我對(duì)時(shí)下的肓從跟風(fēng)有非常大的意見(jiàn)。。
所謂的專(zhuān)業(yè)技術(shù)其實(shí)際是業(yè)務(wù)模型的實(shí)現(xiàn),而業(yè)務(wù)模型是市場(chǎng)需求總結(jié)出來(lái)的。。
所以技術(shù)的本質(zhì)在于利益。。怎么做學(xué)什么符合目標(biāo)(業(yè)務(wù)模型)就那么做,這是不可抵抗的原則,如果違反了,就會(huì)傷心,罵某人不識(shí)貨,其原因是因?yàn)檫`反了這個(gè)不可抵抗的原則。
因?yàn)槌ダ妫夹g(shù)什么也不是,它可以推動(dòng)火箭上天,但若沒(méi)有喝彩,汗水唯有黃土識(shí)。。
電腦就是這么學(xué)的。。
但是有幾個(gè)誤區(qū)一定不要掉進(jìn)去。。
關(guān)鍵問(wèn)題,值錢(qián)的技術(shù)是什么?
某些人,自以為自己很歷害,VC、GCC都很牛(比喻了解和有能力生產(chǎn)core),但他始終只能拿工資,聽(tīng)不懂業(yè)務(wù)模型。。更笑談項(xiàng)目設(shè)計(jì)及所謂的構(gòu)架。。
其實(shí)值錢(qián)的是標(biāo)準(zhǔn)、協(xié)議,精之那他是CTO,如果再加上業(yè)務(wù)邏輯,那他就是副總(搞技術(shù)的去當(dāng)老總就不算技術(shù)人員了,所以不在此列,因?yàn)轳R上要變質(zhì)了,就象門(mén)口賣(mài)蘋(píng)果的,專(zhuān)業(yè)知識(shí)只會(huì)用來(lái)吹牛),如果只擁有實(shí)現(xiàn)機(jī)理及構(gòu)架能力的,那他是項(xiàng)目經(jīng)理,如果只是會(huì)編程,那他只是程序員,如果編程還只是入門(mén),那他就是打字員。。Microsoft Office 是由打字員+程序員搞出來(lái)的,對(duì)吧?然而金字塔的精妙會(huì)有人說(shuō)是奴隸的功勞嗎?
某天,我老婆叫我?guī)退⑼镀保业膎otebook上沒(méi)有Windows 我執(zhí)長(zhǎng)的一些語(yǔ)言無(wú)從發(fā)揮,只有l(wèi)inux,為求簡(jiǎn)便不打算用gcc、java,想試用簡(jiǎn)便的shell腳本,可是我對(duì)shell 一無(wú)所知,咋辦呢?于是我從網(wǎng)上下了一臺(tái)參考手冊(cè),實(shí)際上我只要查一下 if 和 while的語(yǔ)法結(jié)構(gòu),不用一會(huì),我就搞定這件事。。當(dāng)不少朋友時(shí)刻在背那些命令、語(yǔ)法時(shí),我正躺在床上看鄭少秋的VCD。。(這也只是一個(gè)比喻,形容編譯語(yǔ)言并不重要,最科學(xué)的完全任務(wù)是首要的)
首先我們分析一下,if while 在多如牛毛的編程語(yǔ)言里都是存在的,因?yàn)樗^的語(yǔ)言就只有這些東西和一些類(lèi)庫(kù)擴(kuò)展函數(shù)(就象VBS 和 ASP,就象.Net Framework和API)。。這就是一種變相的潛標(biāo)準(zhǔn),正如我要寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序了,我知道,它肯定是由 “動(dòng)作 目標(biāo) 條件” 來(lái)組成,我無(wú)須去牢記那些不同數(shù)據(jù)庫(kù)各自的命令,它一文不值,因?yàn)槟鞘侨思叶ǖ模思蚁朐趺凑f(shuō)就怎么說(shuō),不如用的時(shí)候去check 就行了。。當(dāng)然這只是一種形容,一種對(duì)交集的對(duì)待,并不是說(shuō)不應(yīng)該去學(xué)習(xí)各種不同特色,至少我面試MS SQL數(shù)據(jù)庫(kù)人員時(shí),不明白聚焦列的立即中止,命令記得再多再熟也是空談。。因?yàn)樗且环N基本機(jī)理,機(jī)理不明白,就只是打字員。。
所以學(xué)技術(shù)必須先學(xué)標(biāo)準(zhǔn),要學(xué)標(biāo)準(zhǔn)必須先學(xué)習(xí)機(jī)理,考慮它如何做,為什么這么做,就可以了。背書(shū)完全沒(méi)必要。。正如我看電視,我看的是藝人們?cè)趺慈セ乇苣切┘怃J問(wèn)題,領(lǐng)導(dǎo)們是怎么博彩表現(xiàn),演講的人怎么去制造浮華噪影,考慮他每一句話的必要性、目的性和它的機(jī)理,故曰:三人行,皆有我?guī)熞病!>瓦B蘋(píng)果怎么賣(mài)也有很大的學(xué)問(wèn)要讓我們?nèi)W(xué)習(xí),其根本原因是我們求知的方向和方法不同,導(dǎo)致的層次不同。。如果小板凳坐膩了,也考慮改變一下方式,將視野拉長(zhǎng)一些,想的更復(fù)雜一些,雖然要少活了幾年。。
換個(gè)角度,學(xué)網(wǎng)絡(luò)開(kāi)發(fā)必須學(xué)TCP而不是背sock,搞移動(dòng)應(yīng)用必須學(xué)GSM而不是背AT指令。。這就是標(biāo)準(zhǔn)和協(xié)議,我的大腦里裝的僅僅是這些。。在掌握這些標(biāo)準(zhǔn)時(shí),再去探索物理實(shí)現(xiàn),廣習(xí)機(jī)理可以幫助改善開(kāi)發(fā)出來(lái)的成品的質(zhì)量。
共享原則
03 年底,我初到北京入行從未涉足的SP行業(yè),經(jīng)過(guò)半年的奮斗,我的系統(tǒng)運(yùn)作的很成功,另一個(gè)老總跟我說(shuō),拷貝一份給我吧,省得我們?cè)賱趧?dòng)。。當(dāng)時(shí)我始終不理解也不贊成。。因?yàn)槲翌櫦暗氖怯绊懜?jìng)爭(zhēng)力的關(guān)鍵技術(shù)(我們用最便宜的機(jī)器跟著最快最穩(wěn)定的MMS聯(lián)盟平臺(tái),及后來(lái)的利用移動(dòng)信道SMS成本發(fā)MMS)。。直到去年底,我才真正理解這個(gè)共享意義,我提供了一些無(wú)損競(jìng)爭(zhēng)力的核心代碼和機(jī)理給別人,人家借以加速了開(kāi)發(fā)進(jìn)度,縮減了開(kāi)發(fā)成本并提早產(chǎn)生了利潤(rùn)并占領(lǐng)市場(chǎng)。而我,也從他們那里得到了更多(比如 codeproject,sf.net),我后面的團(tuán)隊(duì)進(jìn)度比之前提升了整整一倍。。
軟件無(wú)用論
很多非專(zhuān)業(yè)朋友在報(bào)怨Linux 平臺(tái)的不是,Windows 的宏偉,亦或反之,實(shí)際上,完全忽略了,軟件與OS是二回事,好,不爭(zhēng)跨平臺(tái),就算各自組合成個(gè)體,正好我在回復(fù)一個(gè)朋友的貼子說(shuō)為什么要用linux要用ubuntu 呢,我的回貼是:
能創(chuàng)造利潤(rùn)是我們出發(fā)點(diǎn),不管是什么平臺(tái),對(duì)我們而言是劃算的,那就可行的,不管是linux眾多的發(fā)行版還是Windows、MAC都只是我們賺錢(qián)的工具而已,哪個(gè)好用容易達(dá)到目的就用哪個(gè),它們只是抽像一些的工具。。對(duì)某些人,它可能是VCD是視頻電話,但除此之外,啥也不見(jiàn),當(dāng)我按下power 鍵,一切都還是原來(lái)那樣,而此刻才是真實(shí)的。。
那么用linux 之所以選擇ubuntu,因?yàn)樗莑inux 里的一個(gè)最輕松快捷的系統(tǒng),有很多的東西,不需要我們操心,一個(gè)快捷的apt-get 完全解決了我關(guān)鍵的時(shí)間問(wèn)題,當(dāng)我們用上gentoo 時(shí),就會(huì)明白,我必須分秒必爭(zhēng),就算坐在馬桶上也得事先安排一些代碼讓它去編譯。。。如果我們面臨的是一個(gè)集體,我們得有多少倍的時(shí)間花費(fèi)在編譯以及解決依賴(lài)問(wèn)題上面?(這也是一個(gè)比喻,盡管我用的就是gentoo)
某一天,我們的國(guó)民象美國(guó)象日本那樣的工作量和壓力,我們就完全理解這些道理,可惜的是我們的人民太閑了,閑到象彌衡一樣到處溜達(dá)。。。
上市的不少產(chǎn)品,盡管有不少是使用Visual Studio 開(kāi)發(fā)的(多數(shù)團(tuán)隊(duì)選擇使用它是因?yàn)殚_(kāi)發(fā)人員的上陣成本較低且人才充足),然而這一切成績(jī),與Microsoft 一點(diǎn)關(guān)系也沒(méi)有,沒(méi)有人認(rèn)為網(wǎng)易和新浪的成功與Apache有任何關(guān)聯(lián),它只是我們的一個(gè)工具,這也是為什么我們要付錢(qián)買(mǎi)它們的原因。。所以不要為它投入任何情緒,我們才是主要實(shí)體,想怎么用它就怎么用它。。
所謂的軟件性能、特色,更加無(wú)謂的系統(tǒng)優(yōu)化,什么也不是。。那完全是因?yàn)槲覀儗?shí)在太閑了。。成天瞅那些所謂的高人學(xué)會(huì)這一些,也只能證明你了解原作者的意圖或者對(duì)某作者的作品比較有共鳴了。。但是千萬(wàn)不要忘了,軟件是人家寫(xiě)的,語(yǔ)言是人家撰的,我們除了報(bào)怨什么也做不了,很多年前,那時(shí)bill 還剛從IBM出來(lái)沒(méi)多久,我習(xí)慣的是int xx mov ah 這樣的寫(xiě)程序,現(xiàn)在卻連VC的 printf 語(yǔ)法都已經(jīng)不記得了,記得只是C#的 Console.Wrtile,這是微軟安排的,不是你我能改變的,所以牢記它沒(méi)有任何價(jià)值,只需要了解就已經(jīng)足夠(碰上豬頭面試官就只好投其所好了,韓信碰上項(xiàng)羽都只能站崗,何況是我們呢)。。
標(biāo)準(zhǔn)和協(xié)議才是屬于大家的。。就拿華為搞的無(wú)線運(yùn)營(yíng)商工程(盡管寫(xiě)的非常野蠻和漏洞100 出),沒(méi)有強(qiáng)硬的國(guó)際標(biāo)準(zhǔn)協(xié)議的深度研習(xí),靠1000個(gè)c高手也只是游通散兵,等同于1000個(gè)張飛,只能落草為寇,勇是必要的,但保命即可(形容程序只是次要的,因?yàn)橛新酚蓞f(xié)議才有openwrt而不是因?yàn)橛衛(wèi)inux才有路由),關(guān)鍵的時(shí)候還可以共享前輩們的成果,這就是Linux 的開(kāi)源、Microsoft 的 MSDN 的好處。。
總結(jié):實(shí)踐是不難的,但要建立在了解機(jī)理的基礎(chǔ)上,OS和編程語(yǔ)言都是次要的,科學(xué)的組合利用實(shí)現(xiàn)業(yè)務(wù)目標(biāo)才是首要的。堅(jiān)持這個(gè)原則,有一天,會(huì)發(fā)現(xiàn)技術(shù)使用和應(yīng)用的發(fā)展是有終點(diǎn)的(甚至在更高層次的見(jiàn)識(shí)下看到的都是冷菜熱炒)只有領(lǐng)域是無(wú)極限的,因?yàn)?#8220;創(chuàng)新”一個(gè)領(lǐng)域是計(jì)算機(jī)事業(yè)的利潤(rùn)的基礎(chǔ),它永遠(yuǎn)不會(huì)停息。
之所以稱(chēng)此為“繆”論,是因?yàn)樗€需要咀嚼,有高見(jiàn)可以來(lái)反駁,我很高興有人來(lái)開(kāi)導(dǎo)我。。
from:http://blog.163.com/scofield_cnh/blog/static/518753922007929104921607/