天天看點

我的軟體修習之路(一)——迷茫

2006年,聯考結束,出于對實體的喜愛和未來就業的考慮,我選擇了機械設計制造及其自動化專業。當時喜歡用電腦玩遊戲,也曾考慮過是否能寫出自己的程式,可是我并沒有考慮計算機相關專業。回想當時的情形,可能是自己覺得這些專業比較高端,自己選擇的幾所高校的這類專業也非強項,就放棄了。

機械設計及其自動化專業,被定位為寬基礎的工科專業。因為機械是所有工業的基礎,是以機械的學生就應當了解除去機械本專業之外的其他交叉學科的知識。在大學四年,印象最深的是在放假前,當其他專業的學生已經考完所有科目提前離校時,我們還在準備着最後幾門課的考試,課程最多的時候,一個學期大概會有16-18門課程。大學四年學習的内容涉及機械原理,機械設計,機械制造,機械制圖等專業基礎課,還包括各種數學,力學,強電,弱電等其他交叉學科的知識,更有管理方面的課程。由于自己選擇了機械電子工程專業,是以又加入了很多嵌入式及控制類的課程。大學期間我主動報了CAD和ProE的課程,也曾想過在機械之路上走在前列。

現在我雖然做了軟體,但是回想大學時候機械專業的所學,我絲毫沒有覺得它耽誤了我的軟體修習之路,相反,機械的流程化和标準化正是當今軟體工程所追尋的目标。機械的設計理念也對軟體設計理念有着相輔相成的作用。設計模式正是軟體開發中的标準件,而架構設計生成的各種文檔則類比于機械設計出的圖紙,是軟體開發的圖紙。機械專業帶給我的是對軟體開發更加嚴謹的态度和對軟體品質的高度關注,機械的故障修複成本很高,軟體則不同,是以經常會有很多程式員甚至公司忽略軟體的品質,認為有bug是正常的,改了就好,但是很少去想如何讓我的軟體産品bug少一些或者沒有bug。

C語言是工科必修的課程,我們學校将C語言課程定在了大一下學期。高中時候養成的習慣,我會提前預習下個學期重點關注的課程,自己對程式設計比較好奇,是以大一寒假,自己買了一本計算機二級的C語言教材就先看了起來(當時自己選教材的能力還是有點low)。放假期間,看着書,把書上的例子盡可能都在電腦上試了一次,經過預習知道了自己哪裡不是很明白,也對C語言有了感覺,一切等開學上課再說吧。

開學後正式開始學習C語言,由于自己對程式設計感興趣,作業中一道題經常給出多種編碼實作方式,也是以得到了老師的誇獎。當時還曾考慮考個軟體相關的職稱,但是考慮到自己機械人的身份,感覺自己不務正業,估計也考不上,是以就此作罷,考過了計算機二級也就功德圓滿了。

可是自從學習完C語言後,心裡總是向往能夠編寫出規模大一些的程式,可是練手的機會很少,考察了機械的諸多專業後,最後選擇了機械電子工程,當時想法單純又簡單,就是覺得機械電子工程是機械中偏控制的,我應該有機會好好練練自己的程式設計能力,甚至于給自己定的目标是機械人中程式設計很好的。可是,實際上課後發現,實際的使用C語言程式設計隻是機械電子的一部分,做好機械控制還要了解電機拖動,PLC,數控程式設計等等,我沒有辦法進行專業的C語言練習。

就這樣,一直到了大三,感覺四年機械學完,自己好像什麼都能做,但又什麼都做不了,是以,決定考研,結果很不錯,考到了國内某985院校,一等獎學金,不需要交學費。現在回想這個決定,還是相當正确的,在上研階段我更清楚地認識了自己,也接觸到了更多優秀的人,進而可以更清楚地知道了自己要的是什麼。

當時考試結束,就和導師要了個項目,目的是為了讓自己快速上手,大學畢業設計提前做點老師項目相關的内容。項目使用的是NI的LabView,當時在控制仿真和傳感測控方面還是很新的程式設計工具,采用了圖形化程式設計的方式,可以很友善的搭建測控系統。

這個項目讓我明白了程式設計不隻是像C語言一樣寫代碼,還有很多其他的方式,也明白了最符合需求的程式設計語言和程式設計工具才是最關鍵的,我沒有必要将自己困在一種程式設計語言或者一種程式設計思想,排斥其他的技術。但是自己隻是小白,我需要學習和實踐來驗證自己的想法。

就這樣,我的大學大學四年結束了,機械專業方面該學習的,自認為未曾懈怠,否則也不可能順利考到自己心儀的大學繼續研究所學生的學習。可是自己的興趣并沒有得到很好的發展,本來以為可以曲線救國,通過機械電子專業滿足自己對程式設計工作的向往,但是也失敗了。

畢業之時,心裡還是很忐忑的,繼續考機械的研究所學生正确嗎?大學四年努力學習機械專業的知識對不對?自己到底該做機械還是繼續追求自己的軟體工作?到底什麼才算好學生,才是有用的人?怎樣我才能對得起自己的心?總之,伴随着心裡的種種迷茫,我踏上了新的旅程。

題外話:大學最大的收獲可能并不是在自己的興趣發展上,倒是在感情上,搞了對象,我們不是一個專業,但是考到了同一所學校繼續讀研——她現在是我的老婆,此時此刻,她正在陪我們可愛的孩子玩耍。在追求自己興趣的道路上,她也和我共同承擔了風險。大學的這個收獲,或許也是我後來可以安心追求自己興趣的基礎。

我的軟體修習之路(一)——迷茫

繼續閱讀