軟件工程第0次做業 | 熱身
第一部分:結緣計算機
你爲何選擇計算機專業?你認爲你的條件如何?和這些博主比呢?
- 假若時光回溯到填報志願的那一天,我想我應該仍是會選擇計算機專業。對於我來講,接觸編程是高中的時候。當時很喜歡玩各類遊戲,固然如今也是,不管是cs1.6仍是dota,而一星期兩節的信息技術課是咱們約戰的好時候。小夥伴們紛紛帶上拷完遊戲的U盤,趁老師不鎖屏的時候進入局域網酣戰一番,恐怕是咱們當時十分珍貴的回憶了。當時學校內開展過各類選修課,其中能接觸到電腦的就是包括安卓開發(用的是Blocky這個工具),還有一個忘了用什麼工具,大概是流程圖同樣(相似Raptor),而後能夠把程序傳輸到硬件中運行的一個課,我印象中作過跑馬燈這樣的小程序。很惋惜的是這兩節課上都沒玩上游戲,可是接觸到了些許編程思想,當時我以爲還挺有意思的。直到後來學校組織過FTC機器人隊伍,參加北京全國乃至世界的比賽,那會用的labview去編寫了機器人的手動和自動程序,印象很深的是用了麥克納姆輪,大量的電機和舵機,最後成績差強人意。不過在這幾段經歷中,我以爲本身可能在這方面可能能作點什麼出來,再加上我是個比較厭惡背東西記東西的人(固然學了計算機以後發現要記得也很多),就選擇了計算機專業。條件方面,我以爲從接觸時間來看算條件好的,不少人可能沒有用過電腦,也有不少可能僅限於玩遊戲用用office等經常使用工具,而我可以在中學接觸幾款編程軟件對我來講已是頗有用的啓蒙了。固然和博客I中的大佬相比我對於計算機的接觸就和過家家同樣的,對於我來說沒有在那時候擁有屬於本身的電腦,也沒有想過要作點什麼,對於計算機的感受僅僅是「有點意思」。
計算機是你喜歡的領域嗎?是你擅長的領域嗎?
- 這個問題挺難回答的,其實我對於計算機一直是又愛又恨的。曾有友人說過,大家學計算機的就像是可以創造一切的神同樣,0和1的美妙組合構成了咱們如今所看到的一切。我愛的天然也是計算機的這份創造性,他的可能性太多了,甚至連報錯都是千奇百怪的,你永遠列舉不完能夠用一門編程語言能夠作多少事情。可是一樣的是,在學習計算機的時候,咱們每每面對着字母,數字,一次次的點下運行按鈕,一次的把錯誤報告信息粘貼到搜索引擎。這種工做形式的枯燥讓我生恨。而我絕對不會說計算機是我擅長的領域,頂多說是矮子裏拔將軍,計算機更像是一個,我願意去探索,去嘗試的領域。
你熱愛這一專業嗎?你對計算機的熱愛是怎樣的?僅僅是口頭的嗎?
- To be honest,我以爲談不上熱愛。這樣是否是就避免了後面兩個問題?我是一個三分鐘熱度的人,對於選擇的專業也沒有所謂使命感。學習計算機的過程感受和談戀愛同樣,這個無理的伴侶有時候給我驚喜有時候讓我失望,如今你問我「你愛她麼?」我只能回答,我還不想和她分手。
第二部分:在計算機系裏學習
你對你的大學生活有什麼想要吐槽的地方嗎?你理想的大學教育應該是什麼樣子的?跟學校給你的有什麼區別?比較你在中國大學的經歷,你的老師和學校能作到和國外那樣嗎?若是不能,請分析一下爲何。
- 我對於大學生活最想吐槽的事情就是,無法純粹的去作項目。博客M中提到了他大一大二作了JoveScript和FreeScript,而博客C提到了他和同窗進行了模擬股市軟件的編寫。可是對於我來講,大一大二的課程有點過多了,雖然現在綜合性大學的概念深刻人心,可是那麼多課程,不說無用,起碼對於計算機專業來說並不是那麼重要,將原本就很少的時間割裂成碎片,而數學類課程和計算機課程伴隨着大量的做業,對於我來講是真的沒有什麼時間去作項目,不管是從本身興趣出發仍是如何,固然我自身的懶惰也是一方面。可是拿大二的面向對象課程舉例子,一個學期的每一個星期都在準備代碼和測試別人的程序,想去參與一個完整的項目難上加難。我理想中的大學教育不必定有那麼多課,可是必定是有用且精細的。但是提高學生的綜合素養也是咱們培養人才的目標之一。我有幸去過MIT參與遊學,給咱們安排的物理課是製做一個能夠變色的燈,電路板也是本身焊的,在動手的過程當中學習了電容電阻的知識,然後來還把咱們帶到了一個全是樂高積木的屋子裏,在兩棟教學樓之間拉了一根線,讓咱們製做一個平衡性好的小車從線上滑到對面,比拼時間。比完了以後和咱們討論有關空氣阻力等等的知識。我也說很差這種課程給我了什麼感受,可是的確不太同樣。
迄今爲止,你寫了多少代碼,描述你作的最複雜的軟件項目/做業。
- 個人代碼量其實很少,前先後後除了課程項目以外,刷了一些算法題,課下項目寫了些數據處理,爬蟲,可視化之類的小程序,以外就是課程項目了。我以爲最複雜的是面向對象的出租車做業,每輛出租車的行駛,訂單的分配和派送,尋路算法的實現,還要考慮到延遲偏差紅綠燈等等,對於我來說確實很複雜了。可是我最喜歡的做業實際上是計算機組成的課程設計,那個本身實現的流水線真的對於我理解計算機組成有很大幫助。
科班出身和北大青鳥有什麼區別?
- 科班出身在我看來最重要的是學習能力和融會貫通的能力,首先在理論知識方面科班出身確定不會不好,畢竟各個主要的課程都有上過,主流的編程語言也都有接觸,在學校中確定各類各樣的程序都有寫過,尤爲最重要的是算法,數據結構和麪向對象思想,都是之後編程之路的核心思想。可是北大青鳥的優點在於,他們把某一類學的很精很細,可以快速上手對口的項目,好比剛剛參加了後端培訓的某人,他必定比科班出身的強得多,他可能不太懂算法,他可能也不知道面向對象,可是培訓班出來的他能把某一項工做作好,惋惜的是若是換一項工做,他不必定可以快速適應。綜合素質之類的就是後話了。
速成的培訓班和打基礎的大學教育還有mooc之間有區別嗎?
- 大學和培訓班之間的差異就是,一個是模仿並應用,一個是學習並應用。邊界很模糊,可是既然說到了基礎,大學教育必定是可以培養出知識更加牢靠的計算機人才。
學線性代數和機率論的時候,你是否有過這樣的疑問「咱們爲何要學這麼多數學,這和咱們的計算機有關係嗎」,你如今是否還有這樣的疑問?對這個問題,你有本身的解答了嗎?那麼其餘學科呢?
- 必定有的,博客C中提到了「我又不肯意耐心去學習數學提升考試分數」,這個實際上是我大一大二的想法,我當時以爲寫程序和數學有什麼關係,可是到後來進行數據處理,大數據相關的項目才發現不學習機率統計,不少概念和偏差計算手段都不懂。機器學習的時候才發現,什麼貝葉斯公式,很差好學高代和數分,他們在我腦子裏只是個名字。如今其實有點後悔,以後確定會再惡補數學的。
第三部分:將來規劃
對於你將來在IT行業的發展,你有什麼樣的夢想或者將來想從事什麼樣的工做?你準備怎樣來規劃你技術道路,職業道路和社會道路?
- 雖然說不可能當一生程序員,可是在當程序員的時間內仍是儘可能作好,我打算出國讀研,而後回來工做,等到時機合適就作個自由職業,作作生意啥的感受也不錯,不過都是之後的事了。
你對於實現本身的夢想已經作了或者計劃作什麼樣的準備?
- 這個學期搞定託福二考和GRE,爭取暑期找到暑期科研弄到推薦信,利用這學期以及以後課少的時間,好好學英語,刷刷算法題,把機器學習相關從頭再看一遍,爭取本身寫點東西出來。
大家立刻就要面臨實習了,你打算在企業內實習仍是在實驗室實習?
- 打算在企業實習,我以爲本身不是搞科研的料,因此想在企業積累經驗。
實習經驗究竟有多重要?是否須要立刻開始積累實習經驗?
- 實習經驗在以後的求職和我出國申請的時候可能會有幫助,同時也可以讓我早日進行社會體驗計算機行業的酸甜苦辣,我以爲還挺關鍵的。
歡迎關注本站公眾號,獲取更多信息