絕頂好經(jīng)驗:30年老工程師的精華分享
發(fā)布時(shí)間:2014-10-16 來(lái)源:電子工程專(zhuān)輯 責任編輯:sherryyu
【導讀】小編這里為大家分享一位從事程序設計30年的老工程師的一些經(jīng)驗。該工程師表示,如果以前能有人在這些經(jīng)驗上指點(diǎn)一二,我相信我現在會(huì )站得更高。所以這里分享自己在30年里學(xué)到的不少有用的東西給大家。
在我30多年的程序員生涯里,我學(xué)到了不少有用的東西。下面是我這些年積累的經(jīng)驗精華。我常常想,如果以前能有人在這些經(jīng)驗上指點(diǎn)一二,我相信我現在會(huì )站得更高。
1.客戶(hù)在接觸到產(chǎn)品之后,才會(huì )真正明白自己的需求。
這是我在我的第一份工作上面學(xué)來(lái)的。只有當我們給客戶(hù)展示產(chǎn)品的時(shí)候,他們才會(huì )意識到哪些是必須的。給出一個(gè)功能性原型設計遠遠比一張長(cháng)長(cháng)的文字表格要好。
2.只要有充足的時(shí)間,所有安全防御系統都將失敗。
安全防御現如今是全世界都在關(guān)注的大課題、大挑戰。我們必須時(shí)時(shí)刻刻積極完善它,因為黑客只要有一次成功,就可以徹底打敗你。
3.安全防御是否失敗取決于及早規劃。
假設有黑客會(huì )徹底破壞你的防御系統,那你就得提前做好準備。這樣即便真的讓他們侵入了系統,也盜取不了任何有價(jià)值的東西,因為你已經(jīng)對服務(wù)器做了安全設置,比如對數據庫中的內容進(jìn)行了加密,并且對每臺有可能遭受攻擊的服務(wù)器進(jìn)行了隔離。
記住,再強大的防御都會(huì )有它的薄弱之處,關(guān)鍵是要有備無(wú)患。
4.良好的安全防御系統不要在乎它的費用,因為這是戰略投資;不及格的安全防御才是被浪費的資源。
在我的職業(yè)生涯中,經(jīng)常聽(tīng)到有人抱怨說(shuō)安全防御是多么多么的復雜和昂貴,他們沒(méi)有意識到的是,如果防御失敗,公司將損失的可能不止幾十億美元。為了節約幾塊錢(qián)而導致企業(yè)破產(chǎn),這種做法毋庸置疑是非常愚蠢的。
5.將復雜的東西整理成簡(jiǎn)單的,是很難的,但是要是把復雜的搗鼓成更加復雜的,那就簡(jiǎn)單了。
這一條適用于編程、設計和幾乎所有的創(chuàng )造領(lǐng)域中。我一直以來(lái)都希望自己的代碼能越易于理解越好。如果你的代碼過(guò)于復雜和晦澀,那十之**它正常工作的可能性很低。我曾非常有幸地見(jiàn)識到有些程序員費勁千辛萬(wàn)苦,反而讓代碼更加難以捉摸了。
[page]
6.成功源自于失敗中的學(xué)習;失敗則是因為容忍錯誤的橫行。
有很多程序員總是在辯解,說(shuō)什么“程序這么難,犯錯誤很正常了,軟件變得糟糕也在所難免了”。這種理由聽(tīng)得多了,于是,大家也逐漸接受了這些扯淡的借口。但是我們作為程序員真的不應該讓這些借口阻礙我們的進(jìn)步,應該謹記,錯誤只能犯一次,要吸取教訓。話(huà)說(shuō)是程序員都會(huì )希望自己下一次就能一次性搞定代碼。但是沒(méi)有人是完美的,不過(guò)至少我們是在朝著(zhù)這個(gè)方向前進(jìn)的路上。
7.唯一不變的是變化本身,這是誰(shuí)都無(wú)法改變的法則。
計劃永遠趕不上變化,以為明天的世界和今天一樣,這種想法本身就是愚不可及的。尤其是在編程世界里,沒(méi)什么是永恒的。人不能兩次踏進(jìn)同一條河里。
8.永遠不要停止學(xué)習,一旦你停下來(lái),技術(shù)的浪頭就會(huì )狠狠將你拍死在沙灘上。
作為程序員立于不敗之地唯一方法就是,不斷學(xué)習、不斷進(jìn)步。因為一旦你松懈下來(lái),你的所有優(yōu)勢都將隨風(fēng)而逝。
9.整個(gè)軟件行業(yè)建立在“百家爭鳴”的思想上。
在我的職業(yè)生涯中,我看到過(guò)很多程序員會(huì )對各種事情較真:預估完成時(shí)間上較真,規模大小上面較真等等。而且有的人還屢錯屢戰。有些以前被批判為“行不通”的技術(shù),現在卻已經(jīng)牢牢占據了人們生活的一席之地,并且現今正向著(zhù)另一個(gè)**沖刺。
10.適合你的不一定適合他。
在軟件項目中我們可做的選擇很多很多。有的英明,有的糟糕。但是適合你和你當前情況的選擇可能一點(diǎn)都不適用于其他人。我們經(jīng)常能聽(tīng)到別人說(shuō)自己又在干什么偉大的創(chuàng )舉,但是如果他們說(shuō)什么這是唯一的好方法時(shí),我會(huì )對此嗤之以鼻。
11.在這個(gè)不斷變化的世界中,評估是最為重要的技能。
這一點(diǎn)有些人可能并不知道。但是如果你愿意認識新事物,看得到他人的努力,比較做事方法之后再擇優(yōu)使用,那么不但是你自己,還有你的團隊、你的項目、你的公司,都將受益無(wú)窮。但是很多人對此都不擅長(cháng),而很多負責人甚至在這方面表現得非常糟糕。照著(zhù)別人說(shuō)得做,以及看別人做什么自己也做什么,是非常容易的。但是如果要全方位地看問(wèn)題然后再基于自己的需要選擇對應的最優(yōu)方向,這就很難很難了。在軟件行業(yè)中做抉擇是必須的,但是如果當你在不得不評價(jià)分析的時(shí)候頭腦一片茫然,那最終的結果只能是隨機挑一個(gè)或者是盲從隨大流。
12.不管黑貓白貓,能抓到老鼠就是好貓。
只要你的軟件能實(shí)現客戶(hù)指定的功能,他們才不會(huì )關(guān)心需要解決哪些問(wèn)題。系統出問(wèn)題了,異常情況發(fā)生了,硬件壞了,程序猿被女朋友甩了,黑客**了:用戶(hù)永遠不會(huì )對這些發(fā)生興趣。如果發(fā)生意外情況,最好能坦誠說(shuō)出來(lái),但是你最好要能確保這種情況不會(huì )持久,因為你總給將最終的產(chǎn)品交給客戶(hù)。
13.客戶(hù)的意見(jiàn)決定質(zhì)量。
無(wú)論你設置了多少指標,檢查過(guò)多少表單,審核了多少代碼,寫(xiě)了多少測試:這都不是關(guān)鍵,除非客戶(hù)自己親眼目睹軟件運作正常。關(guān)于代碼質(zhì)量、性能、設計和可用性,客戶(hù)的意見(jiàn)才是決定質(zhì)量的唯一要素。
14.對某方面的無(wú)知可能會(huì )讓你一敗涂地,因為你在這方面毫無(wú)經(jīng)驗。
即使到了今天我依舊在不斷驚嘆,有的同行竟然仍然沒(méi)有收集足夠的日志、崩潰報告和使用信息來(lái)掌控自己的軟件。那些對這方面信息不屑一顧的家伙,大多會(huì )高估產(chǎn)品的質(zhì)量。因為如果你不采取措施和記錄結果,渾渾噩噩地混日子,終將會(huì )導致你對當前情況一無(wú)所知,包括你的客戶(hù)。我一直反復強調,詳細而有用的日志記錄、程序崩潰跟蹤、評論和意見(jiàn),反正各種只要能讓我盡快了解發(fā)生了什么問(wèn)題的途徑和方法,都是可行的。不過(guò),我也知道有很多人認為“這種事和程序員有一毛錢(qián)的關(guān)系嗎?”。
15.總有更好的辦法,但是時(shí)間不允許。
評估中最難把握的節點(diǎn)是什么時(shí)候應該停止頭腦風(fēng)暴開(kāi)始開(kāi)工?;蛟S我們會(huì )錯過(guò)那個(gè)更好的方法,但是如果要耗費很長(cháng)時(shí)間,那就不值得了。但是這是很難界定的,不過(guò)有時(shí)候今天的一個(gè)小小的選擇可能會(huì )打敗明年那個(gè)更佳的選項。Who knows?
下面兩點(diǎn)引用自一名銷(xiāo)售人員,他是我很早以前的同事。有些東西我并不是完全同意,不過(guò)也能給予我們不同的角度看問(wèn)題。
16.客戶(hù)要找愚蠢的。
這是我最喜歡的一句話(huà),這個(gè)銷(xiāo)售人員就職于一家咨詢(xún)公司。他認為,要找那種不懂技術(shù)但是有足夠資本揮霍的金主。聰明的人總是會(huì )問(wèn)很多問(wèn)題;沒(méi)錢(qián)的人無(wú)力購買(mǎi)我們的服務(wù)。我很慶幸我是一名程序員,哈哈!
17.我的工作是欺騙客戶(hù),而你的工作則是支持我。
第二句話(huà)來(lái)自于同一個(gè)銷(xiāo)售人員。他總是喜歡不斷地承諾一些不可能的任務(wù),然后當我們終于嘔心瀝血加班加點(diǎn)趕出來(lái)了,他就來(lái)收獲我們成功的果實(shí)。挑戰的確讓人exciting,但是每次都是這種不可能的任務(wù)未免太痛苦。我的建議是,換一個(gè)更好的銷(xiāo)售人員!【譯者注:這不是傳說(shuō)中的PM和程序員之間的“和諧”關(guān)系么?】
特別推薦
- 智能終端的進(jìn)化論:邊緣AI突破能耗與安全隱私的雙重困局
- 水泥電阻技術(shù)深度解析:選型指南與成本對比
- 滑動(dòng)分壓器的技術(shù)解析與選型指南
- 如何通過(guò) LLC 串聯(lián)諧振轉換器優(yōu)化LLC-SRC設計?
- 超聲波清洗暗藏"芯片密碼":二氧化硅顆粒撞擊機理揭秘
- 運動(dòng)追蹤+沖擊檢測雙感知!意法半導體微型AI傳感器開(kāi)啟智能設備新維度
- 線(xiàn)繞電阻與金屬氧化物電阻技術(shù)對比及選型指南
技術(shù)文章更多>>
- 拓撲優(yōu)化:解鎖電池供電設備高效設計密碼
- 鋁殼電阻技術(shù)解析:原理、優(yōu)勢與產(chǎn)業(yè)生態(tài)全景
- 厚膜電阻在消費電子電源管理及家電控制中的技術(shù)應用與創(chuàng )新
- 從光伏到充電樁,線(xiàn)繞電阻破解新能源設備浪涌防護難題
- GMSL雙模解析:像素模式和隧道模式如何突破傳輸瓶頸
技術(shù)白皮書(shū)下載更多>>
- 車(chē)規與基于V2X的車(chē)輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數字隔離助力新能源汽車(chē)安全隔離的新挑戰
- 汽車(chē)模塊拋負載的解決方案
- 車(chē)用連接器的安全創(chuàng )新應用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門(mén)搜索