1.程序員需要一點(diǎn)執(zhí)著精神
《士兵突擊》中許三多有一句名言:“不拋棄、不放棄”,這是一種可貴的執(zhí)著精神。正是靠著這種不拋棄、不放棄的執(zhí)著追求,許三多從一個(gè)普通的小兵,成長為團(tuán)部的精英。在現(xiàn)實(shí)生活中也是這樣,可以說大凡取得一定成就的人,在工作中都是一個(gè)執(zhí)著的人。
對程序員則言,執(zhí)著精神尤為可貴。在編程過程中,我們難免會(huì)碰到各種問題,如果沒有一點(diǎn)執(zhí)著精神,一碰到問題就抱怨、回避,怎么可能取得技術(shù)上的突破呢?又怎么能體會(huì)到解決問題的快感呢?
回想起我剛?cè)腴T學(xué)習(xí)GIS(地理信息系統(tǒng))編程時(shí),經(jīng)理就給我安排了一個(gè)之前讓不少人望而卻步的難題,用MapObjects實(shí)現(xiàn)地圖符號(hào)化,要求具有自定義符號(hào)庫的功能。以我當(dāng)時(shí)的經(jīng)驗(yàn),根本不知道從何下手,但也只能硬著頭皮上。首先我把MapObjects的幫助文件全部仔仔細(xì)細(xì)看了一遍后,找到一個(gè)CustomDraw接口。但是只是一個(gè)接口而已,離完整的符號(hào)化功能還相差很遠(yuǎn)。怎樣利用這個(gè)接口呢?當(dāng)時(shí)網(wǎng)絡(luò)還很落后,網(wǎng)上的編程資料更少,關(guān)于MapObjects的中文開發(fā)資料則幾乎沒有,于是我又通過蝸牛速度的網(wǎng)絡(luò),查閱國外的相關(guān)英文資料,在片言只語中尋求靈感。那一段時(shí)間我無論是吃飯、睡覺,還是走了路上,無時(shí)無刻不在思考技術(shù)上的問題,由于堅(jiān)持不懈的努力,我一次次獲得小小的啟發(fā),一步步接近問題的解決之道。6個(gè)月艱苦摸索之后,我終于徹底搞定了這個(gè)在公司內(nèi)公認(rèn)的難題,我本人也從一個(gè)門外漢,一舉成為了公司的核心技術(shù)人員。這一段時(shí)間,我不但把MapObjects每個(gè)接口弄得爛熟,還學(xué)會(huì)了一百多個(gè)Windows API的使用,無論是技術(shù)方面,還是個(gè)人的職業(yè)生涯,都取得了一次飛躍。
程序員都需要一些執(zhí)著的精神,來磨煉自己、發(fā)展自己,要有水滴石穿的決心和勇氣,才能夠成為真正優(yōu)秀的程序員。
2.自省消除固執(zhí)
固執(zhí)和執(zhí)著一樣,都是一種堅(jiān)持不放棄的精神,既然如此,那為什么人們總是贊美執(zhí)著的人,對固執(zhí)卻嗤之以鼻呢?
其實(shí)兩者的差別全在于堅(jiān)持的方向。執(zhí)著和固執(zhí),就像一根繩子的兩端,雖然是在同一根繩子上,方向卻相反。執(zhí)著是沿著正確的方向前進(jìn),是一種理智的堅(jiān)持,而固執(zhí)則恰好相反。既然都是堅(jiān)持,那怎么判斷方向是否正確呢?
其實(shí),何為正確,何為錯(cuò)誤,兩者之間并不是涇渭分明,不然,也就不會(huì)有那么多“執(zhí)迷不悟”的人了。方向是否正確,往往是以結(jié)果來衡量的。因此是執(zhí)著還是固執(zhí),其實(shí)主要是結(jié)果導(dǎo)向,結(jié)果好就是執(zhí)著,結(jié)果不好,就是固執(zhí)。愛迪生發(fā)明燈泡的時(shí)候,經(jīng)歷了無數(shù)次的失敗仍然堅(jiān)持不懈,***終于找到了用鎢絲作為燈絲方法,取得了成功,他的堅(jiān)持我們稱之為執(zhí)著。后來,愛迪生創(chuàng)立了通用電氣公司,堅(jiān)持用直流電供電,無視交流電在遠(yuǎn)距離傳輸方向的巨大優(yōu)勢,***輸給了采用交流電方案的西屋電氣公司,他自己也只黯淡離開自己創(chuàng)立的公司,這時(shí)候,我們只能說發(fā)明大王也有固執(zhí)的時(shí)候。
如此說來,難道我們非要等要結(jié)果發(fā)生,才能知道自己的堅(jiān)持是對是錯(cuò)嗎?有沒有辦法讓我們在進(jìn)行過程中就能出判斷呢?這只能靠我們的自省。孔子曰:“吾日三省吾身”,大凡善于自省的人,都不會(huì)是固執(zhí)的人。他們能隨時(shí)察覺自身的問題,具有理智的否定自己的勇氣。
自省需要常識(shí)。對于一個(gè)不具備常識(shí)、不明白對錯(cuò)、不理解基本規(guī)則的人,怎么能正確判斷方向呢?這樣的人再怎么自省也是無濟(jì)于事的,他只有在不斷的碰壁中才能獲得真正的成長。