第一篇:程序員是怎樣煉成的
在成為程序員的道路上,要經(jīng)歷四個(gè)坎坷,讓我們用四個(gè)境界來標(biāo)明他們。
【第一境界】掌握一門或者幾門編程語言,會(huì)模仿例子來實(shí)現(xiàn)程序代碼,并且讓代碼在計(jì)算機(jī)系統(tǒng)中運(yùn)行起來。達(dá)到這種境界的人,還不算真正意義上的程序員。而僅僅是掌握了一種或者幾種工具的工匠。他們中的熟練者能夠快速模仿現(xiàn)成的例子,以實(shí)現(xiàn)自己或用戶的軟件模塊。
第一境界的特質(zhì)是對(duì)語言工具的掌握,在這個(gè)境界的高手,會(huì)強(qiáng)調(diào)自己對(duì)語言如何如何的熟練,因此這個(gè)境界可以用“知器”來表示。
【第二境界】第二境界里,我們要學(xué)習(xí)的是分解問題和推理的技巧,學(xué)習(xí)用邏輯的語言來精確地表達(dá)一個(gè)命題。在這個(gè)境界里,軟件工作者掌握的是一種分析具體事物的方法,他們不再一味地模仿,而是開始對(duì)一個(gè)又一個(gè)具體問題思考并嘗試用自己的方法來更好的解決。
在這個(gè)層次里的“程序員”開始關(guān)注解決問題的思路,并且關(guān)注分析和推理的數(shù)學(xué)技巧。他們中的優(yōu)秀者熟知各種算法善用各種各樣的命題推理來分析并解決問題。他們同樣善于借鑒前人的例子,但是往往能夠根據(jù)問題的特點(diǎn)進(jìn)行有效的改進(jìn),并且能夠在嘗試改進(jìn)的過程中得到創(chuàng)新的成就感和新的經(jīng)驗(yàn)。在這個(gè)層次里的人,對(duì)語言工具的認(rèn)識(shí)比第一境界更加深刻,他們是真正知道如何利用手中語言工具的特點(diǎn)更好地解決問題的人。但是他們并不會(huì)強(qiáng)調(diào)自己對(duì)于語言如何熟悉,也不再熱衷于宣揚(yáng)掌握如何如何多的語言,在他們眼里,語言僅僅是一種工具而已,真正重要的是分析問題的方法。
第二境界的特質(zhì)是對(duì)具體問題的分析,在這個(gè)境界的高手,往往善于從具體問題中分析出合理有效的解決方法。因此這個(gè)境界用“格物”來表示。(第二境界里有真正對(duì)如何用程序來解決問題經(jīng)驗(yàn)豐富的人,這些人能出色地勝任編碼工作,因此我們稱他們?yōu)镃oder,或者初級(jí)程序員。)
【第三境界】第三境界里,我們要學(xué)習(xí)的是抽象思維和找出事物表象后面的規(guī)律。在這個(gè)境界里,軟件工作者不再針對(duì)一件一件具體的事物來分析,而是嘗試?yán)斫馐挛锉硐笙碌谋举|(zhì)。在這個(gè)層次里的人,開始關(guān)注事物的共性,并且逐漸掌握歸納和總結(jié)的方法。“模式”開始出現(xiàn)在他們的頭腦里。
“設(shè)計(jì)模式”是軟件領(lǐng)域的“三十六計(jì)”,是經(jīng)過抽象總結(jié)而歸納出來的真正的思想精華。第三個(gè)境界的軟件工作者開始接觸并且理解“模式”,學(xué)會(huì)靈活運(yùn)用模式和抽象思維來解決“某一類”問題。
第三個(gè)境界的特質(zhì)是對(duì)事物本質(zhì)規(guī)律的認(rèn)識(shí),在這個(gè)境界的高手,往往能夠快速地抽象出問題的本質(zhì),從而用最合適的方法來解決問題。這個(gè)境界我用“明理”來表示。
達(dá)到第三境界的程序員,是天生的設(shè)計(jì)師,他們對(duì)問題的本質(zhì)的領(lǐng)悟能力幫助他們用優(yōu)美簡(jiǎn)潔的代碼來解決問題,他們的代碼中充滿設(shè)計(jì)思想。他們是真正能夠享受到程序設(shè)計(jì)的藝術(shù)魅力并且充滿成就感的一群人。這個(gè)境界里的程序員真正當(dāng)?shù)闷餻rogrammer的稱號(hào)。
在這個(gè)境界之上,依然存在——
【第四境界】第三境界程序員中的極優(yōu)秀者,并不滿足專家的地位和高薪,他們開始向第四境界艱難地前進(jìn)。第四境界是程序設(shè)計(jì)領(lǐng)域的最高境界,要達(dá)到這個(gè)境界,只需掌握一樣?xùn)|西,然而這個(gè)東西并不是尋常之物,而是許多人窮盡一生也無法得到的這個(gè)世界最為深邃的秘密。這樣的東西,叫做“道”。
所謂道,是天下所有規(guī)律的總和,是最根本的法則,只要能夠了解道,就可以明了世間所有的一切。掌握了“道”的程序員,才是真正的程序設(shè)計(jì)大師,能夠創(chuàng)造出流芳百世的作品。對(duì)第四境界的程序員來說,“思想”已經(jīng)已經(jīng)不再是很重要的東西,因?yàn)樗麄儗?duì)程序本質(zhì)的理解已經(jīng)超越了問題本身。在他們的代碼里,有的只是自然,現(xiàn)實(shí)和虛幻的邊界都已經(jīng)模糊,一個(gè)完美自治的系統(tǒng)在剎那見誕生,卻仿佛從亙古時(shí)刻起便存在著、運(yùn)動(dòng)著,從簡(jiǎn)單而質(zhì)樸的規(guī)律中涵蓋者世間萬物的本質(zhì)。因此,這個(gè)境界,我稱之為“成道”。
第二篇:程序員是這樣煉成的12
程序員是這樣煉成的(12)-勇于面對(duì)開發(fā)失敗
個(gè)人一輩子不犯錯(cuò)很難,作為一個(gè)程序員要每天不制造程序錯(cuò)誤更難。今天跟大家討論如何面對(duì)失敗和錯(cuò)誤,大到一個(gè)項(xiàng)目的開發(fā)失敗,小到幾行代碼中的bug,都是我們?cè)谌粘i_發(fā)中經(jīng)常要面對(duì)的問題。
有一家這樣小公司,測(cè)試部和軟件開發(fā)部是獨(dú)立的兩個(gè)部門,有各自的部門經(jīng)理。老板總是喜歡給下面的員工施緊箍咒,施加壓力,又是能力評(píng)估,又事績(jī)效考核,于是某一年,在領(lǐng)導(dǎo)們別出心裁的領(lǐng)導(dǎo)下,公司出臺(tái)了軟件開發(fā)工程師的考核制度,制度明確規(guī)定:將程序員開發(fā)項(xiàng)目和軟件的測(cè)試一次通過率和項(xiàng)目中的bug個(gè)數(shù)納入開發(fā)人員的年終績(jī)效考核,由測(cè)試部門進(jìn)行考核和執(zhí)行。(所謂一次通過率,就是軟件提交測(cè)試后,一次通過的概率,一次測(cè)試就通過的軟件/提交測(cè)試申請(qǐng)的軟件數(shù)*100%)新法頒布后,測(cè)試部大呼過癮,軟件開發(fā)部一片嘩然,第一年的過去了,果然“成績(jī)喜人”,全公司的軟件一次通過率達(dá)到了97%,無數(shù)未經(jīng)測(cè)試軟件被偷偷發(fā)布給了客戶。第二年領(lǐng)導(dǎo)們?cè)谖×说谝荒甑慕?jīng)驗(yàn)和教訓(xùn)后,毅然的修改了考核標(biāo)準(zhǔn),在統(tǒng)計(jì)bug個(gè)數(shù)的同時(shí)融入了代碼行數(shù)的概念,bug個(gè)數(shù)/100行代碼 *100%來,進(jìn)行年終考核,第二年過去了,軟件開發(fā)部門戲劇化的以100行代碼0.5的bug數(shù),高效的開發(fā)質(zhì)量給了領(lǐng)導(dǎo)們一個(gè)有力的答案。這是一個(gè)真實(shí)的事故,一個(gè)三流的軟件公司的開發(fā)水平和軟件質(zhì)量已經(jīng)“超越了”微軟和google,我相信現(xiàn)在仍然還有很多公司在進(jìn)行類似這個(gè)的考核。
這樣的小公司把軟件開發(fā)和測(cè)試部門獨(dú)立本身就是一種錯(cuò)誤,嚴(yán)重的影響的開發(fā)和測(cè)試的時(shí)間,兩個(gè)部門相互扯皮,項(xiàng)目進(jìn)展一拖再拖。
其次,兩個(gè)部門工作的出發(fā)點(diǎn)也錯(cuò)了,兩個(gè)部門的工作重心是交給客戶盡善盡美的軟件產(chǎn)品,而不是為了應(yīng)付考核和被考核。
第三大錯(cuò)特錯(cuò)的是考評(píng)制度,一看這樣的制度,多半都是事不關(guān)己高高掛起的人出的主意,開發(fā)軟件能一次就通過嗎?寫出來的代碼能沒有bug存在嗎?公司要提高產(chǎn)品質(zhì)量,不把注意力放在項(xiàng)目管理人,開發(fā)人員的能力培訓(xùn)上,開發(fā)規(guī)范和文檔管理上,想憑借一紙空文,或者員工的主觀能動(dòng)就達(dá)到一個(gè)“質(zhì)”的飛越,實(shí)在愚不可及!軟件工程師在把軟件測(cè)試N次以后才敢把軟件提交測(cè)試,幾行代碼就能完成的完成功能,引用了很多填充行數(shù)的無效單元。
最可惡的是,使所有的開發(fā)人員,散失了面對(duì)失敗和錯(cuò)誤的勇氣!為什么不改面對(duì)呢?一面對(duì)就要扣工資和年終獎(jiǎng),誰還敢去面對(duì)啊?于是,整個(gè)開發(fā)風(fēng)氣就是:開發(fā)人員私下放行軟件給客戶成風(fēng),不經(jīng)過任何測(cè)試。程序員有了錯(cuò)誤死有的不承認(rèn),有了bug支支吾吾。不但開發(fā)水平提升不上去,常見的開發(fā)問題還沒有被公開和分享解決,導(dǎo)致產(chǎn)品質(zhì)量嚴(yán)重下降。
大家都應(yīng)該知道在開發(fā)的過程中,越早發(fā)現(xiàn)軟件的問題,軟件就更加的完善。而不是藏著掖著,或者添上一抔土把這個(gè)“地雷”埋著,留著讓用戶踩去吧。正確的心態(tài)是:測(cè)試人員越早發(fā)現(xiàn)我們開發(fā)軟件中錯(cuò)誤,我們應(yīng)該越高興,因?yàn)椴粌H可以彌補(bǔ)我們的思維漏洞,讓我們的代碼更加完美,更加減少了我們挽救這個(gè)問題的開銷。不敢直面bug的程序員,算不上真正的程序員,如果你沒有闖過雷區(qū),沒有被炸了個(gè)人仰馬翻,沒有給你留下深刻的教訓(xùn),那么下次你仍然會(huì)不知道代碼的隱患在哪?仍然不會(huì)學(xué)會(huì)選擇趨吉避兇之道。仍然會(huì)被炸的死去活來。
寫代碼有經(jīng)驗(yàn)的人,對(duì)異常處理都很有一套,知道大概這一塊要保護(hù)起來,那一塊要加一個(gè)判斷,這里要驗(yàn)證下是否存在或已經(jīng)被銷毀。如果程序員沒有很好的對(duì)未能遇見的故障做好防御工作,那么產(chǎn)品帶給用戶的錯(cuò)誤提示或者死機(jī),將讓客戶連殺了你的心都有。記得好多年前,在一個(gè)網(wǎng)吧找了一臺(tái)賽揚(yáng)上網(wǎng),打開IE,自動(dòng)彈出網(wǎng)頁,然后就報(bào)錯(cuò)系統(tǒng)級(jí)的錯(cuò)誤了,還無休無止,CPU直接滿上,然后死機(jī),當(dāng)時(shí)又好笑又好氣,你寫個(gè)彈窗軟件,偷偷彈就算了,代碼都沒寫好,結(jié)果害網(wǎng)吧老板重裝系統(tǒng):)
看過武俠的都知道,危難關(guān)頭,出現(xiàn)異常的時(shí)候,才是檢測(cè)一個(gè)真正武林高手水平的時(shí)候,平時(shí)的舞蹈練劍都是假把式,最多只能算是基本功,補(bǔ)救危局,化腐朽為神奇才能顯示技藝的高超。有多少人會(huì)記恨千年蟲問題是哪個(gè)混蛋帶給我們的?但是解決千年蟲問題軟件工程師們都是英雄。所以放心的動(dòng)手開發(fā)
吧,即使你犯了錯(cuò)誤,被罵成狗熊,也沒有人會(huì)記住你。問題被解決后一切釋然。
是人都會(huì)犯錯(cuò)誤,對(duì)別人犯錯(cuò)誤評(píng)頭論足的人愚昧。用發(fā)布制度來阻止別人放錯(cuò)誤的人愚蠢,因?yàn)楹ε路佩e(cuò)誤,而畏手畏腳不敢創(chuàng)新和向前的人則更加愚上加愚。錯(cuò)誤面前我們要敢于應(yīng)對(duì):
1、對(duì)錯(cuò)自在人心。
當(dāng)然你發(fā)現(xiàn)問題后,請(qǐng)馬上提出,不要企圖隱瞞問題,越早發(fā)現(xiàn)問題,那么損失就越小,抗震救災(zāi)有黃金72小時(shí),軟件開發(fā)也有黃金72小時(shí)。我們?cè)诮鉀Q陳年詬病的時(shí)候,通過要花上數(shù)倍的時(shí)間,來回憶當(dāng)時(shí)的開發(fā)心境和設(shè)計(jì)意圖。
2、接受批評(píng)。
如果這個(gè)問題跟你有關(guān)那么就是你的問題,千萬別動(dòng)念頭找到一只替罪羊,出現(xiàn)問題后,重要的解決問題,不是秋后算賬,更加不要交纏不清推脫問題。
3、向解決的方向前進(jìn)。
如果你不能馬上解決這個(gè)問題,那么請(qǐng)你把這個(gè)問題向解決的方向推進(jìn),如果你無法推進(jìn)問題去解決,那么請(qǐng)不要讓這個(gè)問題繼續(xù)惡化。讓大家都知道這個(gè)問題的存在。
4、尋求幫助。
請(qǐng)不要讓自己的自尊心作祟,拒絕別人的幫助,一個(gè)好漢三個(gè)幫,放下那所謂的自尊,去聽取團(tuán)隊(duì)和伙伴的建議。
每個(gè)人對(duì)錯(cuò)誤的處理方式不同,會(huì)產(chǎn)生不同的結(jié)果,問題處理的好,會(huì)使得團(tuán)隊(duì)更加信任你,甚至比遇到問題之前,更加信任你,要是處理的不好,不但摧毀了大家的信任,還會(huì)讓人覺得你難以擔(dān)任重任。
第三篇:程序員是這樣煉成的5
程序員是這樣煉成的(5)-海納百川 做程序員要“海納百川”,其實(shí)就是建議各位要做一個(gè)通才。當(dāng)然做通才是有條件的,我總結(jié)了下前提有三:
1.你已經(jīng)是一個(gè)專才。熟練操作學(xué)一門像樣的編程語言。
2.有穩(wěn)定的工作和收入支持。
3.想得更多的挑戰(zhàn)和機(jī)會(huì)。
作為項(xiàng)目經(jīng)理和管理者而言,坦白的說,比較喜歡的還是專才,因?yàn)閷2怕犜挘阍谒獣缘念I(lǐng)域劃一個(gè)圈,他能保證幫你完成任務(wù),而且還不給你添麻煩,專才們?cè)诟髯缘念I(lǐng)域的努力才會(huì)推動(dòng)項(xiàng)目前進(jìn)。那在項(xiàng)目中,通才的表現(xiàn)又如何呢?你給他畫一個(gè)圈,他會(huì)給你考慮到圈子以外的事,甚至跳到別人的圈里子耍弄一番。他就像潤(rùn)滑劑一樣,提出很多創(chuàng)新的idea,雖然老是給項(xiàng)目管理者帶來不少的麻煩,但是總能讓整個(gè)項(xiàng)目更加協(xié)調(diào)。其實(shí)項(xiàng)目管理者討厭他,但又離不開通他,他的鬼點(diǎn)子時(shí)常能優(yōu)化各個(gè)結(jié)構(gòu)和模塊。更重要的是當(dāng)管理者被提升,要選擇接替者一般是一個(gè)會(huì)顧大局,協(xié)調(diào)眾多專才的通才。
在所有的項(xiàng)目管理者或者teamlead的心里,肯定都有一種軟件工廠的構(gòu)思或者布局。大意就是整個(gè)部門各個(gè)人都各施其職,讓整個(gè)軟件開發(fā)的過程,就像一個(gè)生產(chǎn)工廠一樣運(yùn)轉(zhuǎn)。招來的程序員都是生產(chǎn)線上的工人。他們不需要想太多,照任務(wù)單做就是。客戶需求就像產(chǎn)品訂單一樣進(jìn)來,需求分析師開始根據(jù)訂單安排我們要生產(chǎn)的產(chǎn)品規(guī)格滿足客戶的需求,系統(tǒng)架構(gòu)是開始把這些規(guī)格加工成工廠生產(chǎn)計(jì)劃或者價(jià)格框架。設(shè)計(jì)師拿著詳細(xì)的設(shè)計(jì)文檔來往這個(gè)框架里面套,剩下的就交給代碼機(jī)器人們填充內(nèi)容,然后到質(zhì)量工位,檢查貼牌,然后出廠。整個(gè)過程每個(gè)工位都是專才,在領(lǐng)導(dǎo)的構(gòu)想中,他們每天都只需要做重復(fù)的勞動(dòng)就好了,如果他們想辭職了,也不會(huì)帶走我們?nèi)康纳a(chǎn)機(jī)密,更重要的是這樣的工人很廉價(jià),找一個(gè)替換品不難。但是實(shí)際上管理者的春秋大夢(mèng)很難實(shí)現(xiàn),原因是軟件這個(gè)產(chǎn)品具有可復(fù)制性,也就是軟件可以copy.在軟件工廠里,生產(chǎn)兩個(gè)完全一模一樣的產(chǎn)品是沒有意義的。客戶的需求都是很柔性的,每次都會(huì)不一樣,大大小小的改變是避免不了的,管理者們費(fèi)盡了心血設(shè)計(jì)的一套生產(chǎn)流程,竟然只能生產(chǎn)一件產(chǎn)品?(去過生產(chǎn)線的朋友應(yīng)該都知道,一旦生產(chǎn)的流程有所
變化,線上的工人們基本上都不知道怎么開始干活了,要重新培訓(xùn)上崗,因?yàn)樗麄儚膩砭蜎]有想過,半成品是從哪來的,又是干什么去,一直都在做機(jī)械的勞動(dòng)。)但是我們的管理者們,他們肯定不會(huì)罷休焦頭爛額,會(huì)再一次優(yōu)化生產(chǎn)流程。到下一個(gè)新的產(chǎn)品,又會(huì)繼續(xù)把生長(zhǎng)線從頭至尾優(yōu)化一下。某一天管理者突然頓悟,我們?yōu)槭裁疵看味际职咽值母恳粋€(gè)人安排任務(wù),每次都親自設(shè)計(jì)整個(gè)流程,我應(yīng)該去辦公室里面喝喝茶,上上網(wǎng)。這個(gè)時(shí)候他會(huì)想到誰?毫無疑問,肯定不是專門,他需要的是一個(gè)能走通每一個(gè)環(huán)節(jié)的通才。
小時(shí)候我經(jīng)常聽我老爸說:“不要半桶水,不要什么都懂點(diǎn),什么都不專”這句話就是用來貶低通才的,在這里我要為通才平凡。我的一個(gè)軟件項(xiàng)目曾經(jīng)出了一次事故,整個(gè)汽車的生產(chǎn)線面臨停產(chǎn),幾次電話支持的效果都不理想,需要一個(gè)技術(shù)人員立馬去現(xiàn)場(chǎng)解決問題。軟件用delphi開發(fā)在windows平臺(tái)運(yùn)行,oracle數(shù)據(jù)庫,通過進(jìn)口的硬件,用客戶的線束跟汽車通信,操作員是個(gè)新手,電腦硬件是我們提供的,現(xiàn)場(chǎng)環(huán)境惡劣。我思索了每個(gè)可能出現(xiàn)問題的可能,客戶能提供的有效信息太少,連軟件的日志文件都無法取出來(USB端口封閉,車間信息嚴(yán)格保密)。我不可能同時(shí)派一個(gè)軟件工程師,數(shù)據(jù)庫DBA,IT,或者硬件工程師奔赴現(xiàn)場(chǎng)。最后我選擇去的是一位軟件工程師,他很快找出來原因,是客戶的線路沒有按照我們的電路圖制作,關(guān)鍵線一條線是斷開狀態(tài)。我相信他,不是因?yàn)樗俏覀児咀顓柡Φ某绦騿T的,而是他懂技術(shù)領(lǐng)域的比其他人要多。其實(shí)在整個(gè)項(xiàng)目開發(fā)過程,除項(xiàng)目經(jīng)理外,不可能每個(gè)人都會(huì)一直忙忙碌碌,無論是程序員,測(cè)試員,設(shè)計(jì)師,架構(gòu)師,你總會(huì)有一段時(shí)間無所事事,除非你同時(shí)加入很多的項(xiàng)目。希望你能在有空的時(shí)候關(guān)注下你的同事們?cè)谧鍪裁矗磕隳懿荒軒椭禄蛘邔W(xué)習(xí)下。做了這么多年的程序員,我們可能都常有一個(gè)共同的擔(dān)心,這個(gè)擔(dān)心是什么呢?我們一個(gè)項(xiàng)目或者我們公司的的關(guān)注點(diǎn),研發(fā)的中心開始轉(zhuǎn)移出我擅長(zhǎng)的技術(shù)領(lǐng)域。我們害怕自己發(fā)揮不了作用和特長(zhǎng),害怕我們對(duì)公司沒有價(jià)值,也就是意味著我們漲工資的幅度要比別人小了,或者沒有工資加了。其實(shí)這個(gè)擔(dān)心還不是最要命的,最要命的是,我們要精簡(jiǎn)團(tuán)隊(duì)的時(shí)候,你才發(fā)現(xiàn)自己比較單純,只會(huì)測(cè)試或者編碼,很多平時(shí)做其他工作的同事都能做你的替代者,那么你就要被over了。
說了這么多的苦口婆心勸大家做一個(gè)海納百川的通才,大家肯定會(huì)問,我覺得我在我的team里面已經(jīng)算了百事通,萬事通了,我應(yīng)該怎么繼續(xù)豐富我們的技術(shù)領(lǐng)域呢? 夜深了,還沒洗澡,我在這里不打算多說了,我請(qǐng)問各位幾個(gè)問
題,希望可以為你指點(diǎn)方向:
1.你有沒有想過在公司里,你計(jì)劃的職業(yè)階梯的各個(gè)領(lǐng)導(dǎo)每天都在干什么嗎? 你的boss,你boss’boss…..?(拿破侖不是說過將軍和士兵之類的名言….)
2.你知道你的一個(gè)組的同事在干什么嗎,每天?
3.你知道哪幾種操作系統(tǒng)平臺(tái),軟件開發(fā)平臺(tái)?你會(huì)通過別的路徑走到羅馬嗎?
4.軟件工程師你知道你要用的數(shù)據(jù)是哪來的怎么來的嗎? 數(shù)據(jù)庫管理員你知道你的數(shù)據(jù)是去哪里的嗎?為什么人家裝個(gè)oracle一下就搞定,我寫了一輩子連oracle的程序連個(gè)listener.ora都不會(huì)配。
5.程序員知道你開發(fā)的軟件,打包后是怎么安裝注冊(cè)的嗎? 那般客戶的是什么折騰你的寶貝軟件的嗎?
6.有沒有約個(gè)罵你的杰作的客戶出來吃吃飯,聽聽他的用戶體驗(yàn)?
希望我們都能明白自己缺少的是什么?如果程序員想找一份工作,做一個(gè)專才足矣,如果想把事業(yè)做好你最好做一個(gè)通才。
第四篇:程序員是這樣煉成的10
程序員是這樣煉成的(10)-現(xiàn)在我們能做些什么?
前天在1+1<2里面談到的那個(gè)麻煩今天被解決了,最后還是以AB兩組雙贏為目,相互合作,兩組和二為一,共同完成項(xiàng)目,這個(gè)是最好不過的結(jié)局了。今天的文章是寫給一位網(wǎng)友的,因?yàn)樗麊柫宋乙粋€(gè)問題:“現(xiàn)在我們能做些什么”?
其實(shí)我以前也常有這樣的感覺:茫然,麻木,不知道自己要做些什么?也不知道自己能做些什么? 有時(shí)候一天下來,雖然一直在忙碌不停,但是工作都會(huì)自動(dòng)的膨脹到占滿我所有的時(shí)間,包括我休息的時(shí)間。有時(shí)候我常問自己為什么會(huì)這樣?是我們的項(xiàng)目計(jì)劃出了問題?還是我們的任務(wù)量在增加?都不是,其實(shí)是時(shí)間在我們身邊偷偷的溜走了。我以前做項(xiàng)目的時(shí)候有個(gè)壞毛病,項(xiàng)目的前80%的時(shí)間,被我浪費(fèi)在所謂需求分析和程序設(shè)計(jì)上,(實(shí)際上沒有花這么多時(shí)間,花時(shí)間在偷懶上了),到了最后的20%的時(shí)候,時(shí)間已經(jīng)非常緊迫,這個(gè)時(shí)候我會(huì)發(fā)現(xiàn)編程的狀態(tài)完全不一樣。原因是,項(xiàng)目的dead line要到了,我們沒有機(jī)會(huì)拖延時(shí)間了,已經(jīng)沒有時(shí)間讓我拖著熬著不作出決定,沒有時(shí)間讓我去組織無聊的項(xiàng)目會(huì)議,沒有時(shí)間讓我去接聽一些莫名其妙的客戶電話,我更沒有時(shí)間呆坐在電腦面前思考如何去躲過這無聊的工作,我必須要全力以赴在第一時(shí)間完成工作。其實(shí)當(dāng)這個(gè)項(xiàng)目完成時(shí),我再回頭想想,并不是我在最后的時(shí)候“蓋茨附體”,“圖靈重生”,而是一種危機(jī)感和急迫感讓我的效率提高了兩三倍,讓我在一些徘徊猶豫的問題上花費(fèi)的時(shí)間變少了。我相信很多軟件工程師都有這樣的感觸。事實(shí)很明顯,我們的問題是在于我們能做很多,只是我們都沒有做,我們只動(dòng)嘴,卻沒有動(dòng)手。
在我的公司有一個(gè)這樣的故事,某幾位同事負(fù)責(zé)一個(gè)項(xiàng)目,項(xiàng)目的進(jìn)展一直都不是很理想,不久公司公布半個(gè)月后集體outing的消息(就是集體旅游,還是公費(fèi)),為了保證項(xiàng)目的完成時(shí)間,一些項(xiàng)目拖延的員工需要駐守大本營(yíng),繼續(xù)奮斗。本已經(jīng)被我們放棄的那幾位同志,盡然在短短的半個(gè)月中,完成了1個(gè)月的工作量,提前的把項(xiàng)目完成了。看來小宇宙爆發(fā)的威力真的很恐怖,可憐公司測(cè)試部的MM們,被那幾個(gè)家伙拖著天天加班:)。可見,有時(shí)候工作雖
然讓我們很頭疼,但我們不應(yīng)該把問題高高掛起,或者因?yàn)楣倭抛黠L(fēng),或者以召開分析會(huì),技術(shù)評(píng)估的名義去拒絕問題,其實(shí)很多的困難都可以在我們的日常工作的空隙去完成的,沒準(zhǔn)是一杯咖啡或者一根煙之后,我們就可以做出選擇。程序員應(yīng)該學(xué)會(huì)選擇和面對(duì)。
我們不是不知道我們能做什么,而是我們沒有學(xué)會(huì)面對(duì)和抉擇,沒有想去做。附: 有的朋友問我,為什么每次更新文章的時(shí)間都很晚,實(shí)在抱歉4-6月我有一個(gè)開發(fā)項(xiàng)目要完成,周一-周四一般都在加班基本上10點(diǎn)才能抵達(dá)小窩,請(qǐng)諒解。
程序員是這樣煉成的,每天深夜寫作,已經(jīng)過了十章完成了一半,雖然很累,謝謝一直支持和鼓勵(lì)我的同事和網(wǎng)友們,我不會(huì)半而廢的!
第五篇:鋼鐵是怎樣煉成讀后感
鋼鐵是怎樣煉成讀后感范文 篇1
這幾天,我終于“啃”下了一本外國名著《鋼鐵是怎樣煉成的》,書的作者是奧斯特洛夫斯基。這一本書不知激勵(lì)過多少熱血青年創(chuàng)造生命的價(jià)值,幫助過多少人了解生命的意義,指引著一代又一代人面對(duì)困難砥礪前行。
這本書的主人公是保爾·柯察金,他的一生艱險(xiǎn)曲折。他降生在一個(gè)窮人的家庭,上學(xué)時(shí)因淘氣被神父趕出學(xué)校。他的媽媽也無可奈何,只有把他送到食堂去洗碗賺錢。在那里,他目睹了下層社會(huì)的種種惡行。離開食堂后,在朋友朱赫來的影響下,成為一名布爾什維克。后來因病魔的襲擊,無法繼續(xù)戰(zhàn)斗,再后來他又雙目失明。他很痛苦,很絕望,差點(diǎn)沒有活下去的.勇氣。但他最后還是戰(zhàn)勝了各種困難,靠自己的毅力和勇敢活了下來,他沒有因?yàn)樽约旱牟恍叶鴨适拍睢⑹ビ職猓喾丛酱煸接拢膱?jiān)貞不屈,使我對(duì)他敬仰萬分!
鋼鐵是怎樣煉成的?是通過烈火煉成的。在冶煉的過程中要遭到高溫焚燒和千錘百煉,最終才能煉成好鋼。俗語說,“不經(jīng)歷風(fēng)雨,怎么見彩虹?”我們應(yīng)該感謝上天賜予我們這些困難與磨難,正是因?yàn)榻?jīng)歷了各種困苦,我們才能茁壯成長(zhǎng)。正如保爾一樣,他曾被朋友出賣,被戀人拋棄,正是這些風(fēng)吹雨打,使他成為百折不撓、信念崇高、意志堅(jiān)強(qiáng)的革命戰(zhàn)士!
生活在和平年代的我們,生活中的一點(diǎn)小困難更算不了什么。只要我們勇敢面對(duì),我們會(huì)發(fā)現(xiàn)困難并不可怕,可怕的是我們害怕困難,被困難嚇倒!保爾的精神永遠(yuǎn)值得我們學(xué)習(xí)!
鋼鐵是怎樣煉成讀后感范文 篇2
前不久,我讀了《鋼鐵是怎樣煉成的》一書,感觸很深。讀的時(shí)候我隨著主人公保爾·柯察金的成長(zhǎng)和他的命運(yùn)心中跌宕起伏。細(xì)細(xì)品味這本書,品味著保爾的精神,越發(fā)感覺到我們應(yīng)該從保爾的精神中汲取營(yíng)養(yǎng),堅(jiān)定自己的理想信念,樹立正確的世界觀、人生觀和價(jià)值觀。
記得書中有句膾炙人口的名言:“人的生命是最寶貴的”。幾乎沒有人甘心平平庸庸地生活,因?yàn)榧词剐〔菀蚕肱榇禾煸鎏砉獠剩M诖夯卮蟮氐牟示砩狭粝伦约旱纳碛埃俏幢厝巳硕寄軣捑统梢粔K好鋼。
那么鋼鐵是怎樣煉成的?相信大家的腦海里一定會(huì)出現(xiàn)那烈火熊熊的煉鋼場(chǎng)面。有人說保爾是天生的英雄,其實(shí),在這個(gè)世界上沒有真正的'英雄。保爾之所以成為英雄,完全是由于自身的努力。
和保爾想比,我們今天的生活是多么幸福啊!我們沐浴在這明媚的春光里,讓我們尋找往日的英雄情結(jié),重塑“保爾精神”,意義非同小可。為了我們祖國的繁榮昌盛,讓我們以保爾為榜樣,去煉就人生,樂觀地?fù)肀磥戆桑?/p>
鋼鐵是怎樣煉成讀后感范文 篇3
主人公是一位名叫保爾的俄羅斯人講述他是如何從一個(gè)淘氣的孩子變成一個(gè)英雄的。保爾,一個(gè)很普通的戰(zhàn)士,卻有鋼鐵般的精神,是什么樣的力量鼓舞著他前進(jìn)呢?是共產(chǎn)主義的力量,這就是他與病魔作斗爭(zhēng)的動(dòng)力。保爾說“人最寶貴的東西是生命。生命對(duì)人來說只有一次,因此,人的一生應(yīng)當(dāng)這樣度過:當(dāng)一個(gè)人回首往事時(shí),不因虛度年華而悔恨,也不因碌碌無為而羞愧。這樣,在他臨死的時(shí)候,能夠說:我把整個(gè)生命和全部精力都獻(xiàn)給了人生最寶貴的事業(yè)――為人類的解放而奮斗。”
鋼鐵到底是怎么煉成的呢?其實(shí)人生就像是在煉鋼,沒有什么東西是天生就有的,保爾也不是天生的英雄,它也是靠自己的堅(jiān)持和努力――在戰(zhàn)火紛飛的戰(zhàn)場(chǎng)上,生死攸關(guān),可他絲毫沒有退縮;工地上,饑寒交迫的情況下,他也沒有倒下;雙目失明,雙腿殘廢時(shí),他沒有放棄,而是選擇了另一種方式來支持革命,寫作。保爾他把自己一輩子的`心血放在了革命上。人生的道路難免磕磕碰碰,會(huì)遇到許多的困難,失敗,嘲笑,但我們一定克服。
每個(gè)人的生命都是有限的,或許我們用一生的努力都不會(huì)成為一個(gè)英雄,但只要我們勤奮,堅(jiān)強(qiáng),樂于助人,我們至少會(huì)成為一個(gè)對(duì)社會(huì),對(duì)國家有用的人,同時(shí)我也認(rèn)為這樣的人就是一個(gè)了不起的人!
鋼鐵是怎樣煉成讀后感范文 篇4
自從我讀了《鋼鐵是怎樣煉成的》這本書,我就對(duì)書中的主人公保爾油然而生出敬意。
這本書讓我領(lǐng)悟到:一個(gè)人的毅力對(duì)他的一生是有很大影響力的。
保爾從小不是被母親責(zé)罵,就是被神父冤打。但他相信,只要有足夠的毅力,一樣可以很好地生活下去,并立志要從軍。長(zhǎng)大以后,他實(shí)現(xiàn)了他的從軍夢(mèng),成為了一名偉大的軍人。從軍期間,他憑借自己的毅力和老一輩的栽培和教育,全方面刻苦學(xué)習(xí)和嚴(yán)格要求自己,終于鍛煉成具有崇高理想,堅(jiān)毅的意志和剛強(qiáng)性格的革命戰(zhàn)士。他把自己和人類的解放連在一起,義不容辭地去追尋幸福,為人類的解放做斗爭(zhēng),盡自己最大的能力使世界和平!
毅力是成功之本,是一種堅(jiān)持,是一種積累;毅力是無窮的力量,是一種鍥而不舍的精神。有了毅力,人們就不會(huì)向困難和挫折低頭,而會(huì)更堅(jiān)強(qiáng)地去面對(duì)。
毅力也需要堅(jiān)持,在堅(jiān)持的.同時(shí)也需要毅然斷然的決斷。有毅力的人面對(duì)考驗(yàn)?zāi)軣o所畏懼。
看了《鋼鐵是怎樣煉成的》,讓我懂得了:我們現(xiàn)在的美好生活來之不易,要倍加珍惜,更要成為一個(gè)有堅(jiān)強(qiáng)毅力,無所畏懼的強(qiáng)者。