項目 | 內容 |
---|---|
課程:北航-2020-春-軟件工程 | 博客園班級博客 |
要求:閱讀推薦博客並回答問題 | 熱身做業閱讀部分要求 |
我在這個課程的目標是 | 提高團隊管理及合做能力,開發一項滿意的工程項目 |
這個做業在哪一個具體方面幫助我實現目標 | 回顧過往計算機學習歷史,明確將來發展方向,制定將來4月軟工學習計劃 |
- 你爲何選擇計算機專業?你認爲你的條件如何?和這些博主比呢?(必答)
選擇是最難的事情,卻同時又是最爲天然而然的,在機緣巧合之下,我幾乎是順水推舟的選擇了目前所在的道路。html
雖然很早就已經接觸計算機了,第一次瞭解「編程」仍是在初中,當時的「微機課」可謂是一週中最歡樂的課程,班上一大羣同窗複製U盤中的CS或者WarCraft,開黑玩起來。那時的我同他們同樣,同同窗們瘋玩,只是微機老師在偶然間說起的信息奧賽提起了個人興趣,何時用來玩遊戲的電腦居然仍是一門學科?python
抱着好奇的心理,參加了老師組織的信息奧賽訓練,天天中午不去睡午覺,而是去微機室,固然一部分緣由是想着中午能早點去機房玩會遊戲。第一次看到不一樣日常的純藍色刺眼的屏幕,上面寫着一行行徹底看不懂的英文和數字,難免有些詫異,可是隨着老師一每天的教授,開始理解原來這是Pascal語言,不論怎樣,仍是模仿着來寫吧,逐漸抹上了門路。爲了迎考信息競賽,我逐漸知道了什麼是原碼——補碼——反碼,知道了函數調用語句,但都是零零碎碎的,不知道爲何要這麼作。信息競賽初賽獲得市一等獎也大大鼓舞了我,可畢竟沒有好的學習方法,在省會城市考的信息奧賽長達6小時,卻也一題也沒完成。c++
高中一開始,我便報上了信息奧賽,在咱們省的信息奧賽仍然只是剛起步,整個3000人的高中,只有兩個信息技術老師,講的課也沒有系統和章法,更多時靠自學《c++信息奧賽一本通》。可是每次坐在電腦前,都抵制不了遊戲的誘惑力,許多晚自習打着信息奧賽的名號在機房同好友玩遊戲,浪費了大量自習的時間,對計算機的理解也只停留在表面。那時,對編程仍是有些反感的,由於通常花了1小時寫出來的程序,居然須要debug幾天!看着慘白的屏幕,一次次運行程序,卻一直找不到錯誤在哪裏,一味埋怨機器故障,卻根本不瞭解代碼的調試功能,多是長時間坐在電腦面前的緣由,視力也有所降低。程序員
但無論怎麼說仍是打了些計算機基礎,自學能力有些許的提升。而在大二的信息奧賽上,以最低分獲得了信息學奧賽國家一等獎,當時仍是沾沾自喜的,由於這種獎項任意在數學、物理、化學、生物上都是極可貴到的。正由於這一獎項,有幸能參加大學的自主招生考試。令我印象最深入的時候是面試老師問我:你認爲計算機能用來作什麼?將來的價值在哪裏?面試
說實話,那時的我真的不知道計算機用來幹什麼,頂多用來玩玩遊戲。只好硬着頭皮回答:「計算機能用來輔助其餘學科,好比數學、物理上的公式讓人來計算太過複雜,可是計算機一步就出來了。」只有上了大學之後,才知道原來計算機不只只有這樣眇小的應用,自己倒是一個巨大的工程,支撐起了社會的方方面面。算法
與博客1的做者相比,計算機發展的情況比博主要好上許多:內存比那時的磁盤大,Cache比那時的內存大,並且有了至關成熟的Pascal和C++語言。而選擇計算機專業也比博主「順利」不少,由於高考的失利,又有自主招生的20分,最後落到只有大學的信息類可選。能夠說,大學纔是我真真正正接觸計算機的地方,之前所學的一切關於計算機的一切是那麼淺薄。編程
計算機是你喜歡的領域嗎?是你擅長的領域嗎?網絡
你熱愛這一專業嗎?你對計算機的熱愛是怎樣的?僅僅是口頭的嗎?框架
如上所述,結緣計算機幾乎一半都是由於想多點時間玩遊戲。直到大學,隨着學習的深刻,發現計算機領域是如此的寬廣,2013年的Alpha Go火遍全球,2016年的VR震驚時代,隨着信息化的加深,社會從交通運輸到市場營銷由於計算機的加入發生着翻天覆地的變化。我對計算機的興趣也再也不侷限於遊戲,而逐漸變得普遍,對着社會中每個應用:如自動駕駛、人臉識別、電商、動畫等都感到熱忱。機器學習
除了對於這些應用「炫酷」的熱忱之外,在大學期間本身編寫程序時感覺到從心底的樂趣,尤爲是解決一個困擾本身好久的問題,找到了針對問題實現的高效算法,甚至說找到了程序的bug都讓我感到十分高興。遇到不會的題目,我本身習慣於本身左思右想,經常被一道折騰一週,甚至晚上思考這些問題越陷越深,睡不着覺。左思右想幾天後大致上也能想到解題思路,並一步步親手實踐出來。最後發現本身所實現的東西居然與前人總結出來的設計方式不謀而合。所以我可以經常體驗百思而得解的愉悅感。
暑假的那一次實習使我真正使用了計算機本領,爲某教育項目中的10000多人的我的信息經過程序的方式組織起來,相比於手工經過Excel重複地篩選省和市相比要快速不少,還能去統計每個指標的數據,繪製柱狀和餅狀圖可視化,對方感到興奮而詫異,手工須要一個星期完成的工做居然程序跑幾秒鐘就完成了。完成這一件事讓我大感鼓舞,甚至以爲我如今畢業均可以在公司裏面找到一份比較好的工做。在此以後,又完成了不少程序:刷網絡流量、搶網課、搶考位、格式轉換、扒譜、寫簡單的遊戲、寫自動操控腳本……每次完成後都有一種爆發般的成就感。
對於計算機的興趣隨着具體課程的學習,常有本身的想法和將來的願景,每次想到這些,都心跳加速,甚至半夜睡不着覺。尤爲是動漫中對將來的想象:遊戲中的虛擬世界成爲了第二個世界,VR的那種比真實還要真實的感觸,高級人工智能的遊戲角色比真人還要真實,還有那些史詩級的3D遊戲花草樹木,光影效果夢幻而使人神往。每次的遐想並不是僅僅一想而過,而是專門記錄了下來,寫成了長篇的抽象小說,到目前來講,這種小說都已經上10w字了吧,甚至比我從開始到如今寫過的代碼還多。
你對你的大學生活有什麼想要吐槽的地方嗎?你理想的大學教育應該是什麼樣子的?
跟學校給你的有什麼區別?比較你在中國大學的經歷,你的老師和學校能作到和國外那樣嗎?若是不能,請分析一下爲何
大一上課全部人幾乎全員到齊,都認真聽講作筆記;大二上課到課堂人數少了不少,非核心課不簽到都開始陸陸續續不去上課;而到了大三,幾乎是能不去上課就必定不去,課上寥寥無幾,老師講的尷尬,學生聽得無聊,漫不經心拿起手機晃一晃。這讓我感到效率極爲低下。
不像博客2所說「課程講的很差不能成爲不聽講的理由」,由於在那個環境下,是不管如何也沒法集中精力來聽課的,尤爲是電子信息概論那門課,老師講的沒什麼實質性內容,學生在老師眼皮低下開着電腦玩遊戲,自己對其餘學生都有一種不良的氛圍,這樣的環境是無可抗衡的,我雖然也嘗試這記筆記來集中精力,可自己是課程設計的問題。但我贊同的是:「聚精會神在這個時代已是稀缺能力,大學應該打好基礎,走神是認真聽講的大敵」。尤爲是讀長篇大論的論文,若是沒有一點恆心和毅力,根本看不下去,幾天才能略微理解。
從這一方面來說,跟我理想中的大學有很大差別,理想狀況下老師和學生的關係毫不僅如此,而是像美國小班教學同樣,老師和學生的互動更爲頻繁和豐富,可以上課有學生提問、積極回答。而不是像目前這樣一種難與抗衡的渙散,與環境抗衡,愚不可及。
博客3說出了個人心聲:
中國目前的大學教育就一個字:渣。個人大學在當時不比後來的什麼211之類的差,但仍是一個字:渣!從學習風氣到成績考試,從課程設置到師資力量,都是一個字:渣!我並不是針對任何人,大環境如此,信不信由你。
恕我直言,中國大學在短時間以內不可能作到外國那樣,一方面由於資源的稀缺(教師稀缺、設備稀缺、空間稀缺),另外一方面由於一直以來的教育傳統(西方思惟崇尚自由,而中國沒有這樣的基礎)。
大學裏最深入的感覺是「一切都要靠本身」,甚至老師也無法教你什麼,不少知識都是必須自學完成,不少機會都必需要本身爭取。可能在忽然之間,你的同窗就進了實驗室,你以爲那麼普通的同窗莫名其妙地得了大獎,你會以爲詫異,可是歷來看不到他在背後付出了什麼。
大學生活太豐富了,大學最大的苦惱就是時間不夠用、生活繁忙無比。大一時聽到學長的一句話「你不想作事能夠每天划水,可是你努力起來會忙成狗」,這種體驗頗爲深入,經常由於各類各樣的事物忙的焦頭爛額:
相對於博客4博主的迷茫,的確,大學比起高中,你能夠自由地發展愛好,能夠花大把的時間去玩遊戲,能夠每天上課划水。由於太自由了,因此迷茫了。而我也出現了這樣的迷茫,不是我不知道我應該作什麼,而是想作的事情太多了!
迄今爲止,你寫了多少代碼,描述你作的最複雜的軟件項目/做業。(必答)
迄今爲止寫過的代碼量甚至尚未我寫過的日記多,但5w確定是有的,10w可能還達不到。
其中最複雜的程序是編譯課程大做業「完成一個類C文法的編譯器」,這樣的做業的含金量有多少呢?之因此說它是最複雜的,在於如下幾點:
- 科班出身和北大青鳥有什麼區別?
- 速成的培訓班和打基礎的大學教育還有mooc之間有區別嗎?
博客3野生程序員,博客5 .net程序員,博客6 一個北大青鳥出來的,如何從月薪800元到年薪40萬?
不少程序員都印證了,科班出身與非科班出身並不能決定將來發展的方向,而在於自身是否努力。由於目前MOOC上的,網絡上的資源是如此的豐富,甚至一個普通人都能經過搜尋資料、肯著做、上網課而成爲一個程序員。
那麼,咱們真正學習計算機的,和那些沒有學過的,究竟有什麼區別呢?從經驗、基礎、能力等角度繪製出如下表格:
科班 | 非科班 | |
---|---|---|
經驗 | 相對經驗較少,實踐少,軟件項目交互過程不太瞭解 | 大量實踐經驗,同時有較好的交流能力,每每經歷了大量跳槽 |
能力 | 系統的代碼組織能力 | 代碼熟練,但可維護性不強 |
基礎 | 系統的數學基礎、理解計算機底層構造 | 缺少基礎,每每只知道「怎麼作」,而不是「爲何」 |
眼界 | 通過計算機環境的薰陶,打開眼界,偏向「高層思惟」 | 偏向「底層思惟」 |
對於非科班出身,有點相似於大學以前的我,在「打野球」,花了大量的時間,卻不必定有結果,若非像上述三個博客那樣有毅力的博主,不多有機會能真正走上正軌。
即便網絡上資源那麼豐富。在我看來,最重要的是氛圍,大學雖然讓人感受渙散,可是不論如何,你在學,你的同窗都在學,大家能在網上,在班裏討論,聽得多了也就逐漸會了。而且有的同窗的項目作得很成功,做爲科班出身也會添上些自信。在這樣的氛圍中,不論怎樣的困難都慢慢地解決。尤爲是一些很是困難的課程(計算機組成原理、面向對象、編譯技術、無線網絡系統,固然還有這節課),只有難過了,纔會成長。
- 學線性代數和機率論的時候,你是否有過這樣的疑問「咱們爲何要學這麼多數學,這和咱們的計算機有關係嗎」,你如今是否還有這樣的疑問?對這個問題,你有本身的解答了嗎?那麼其餘學科呢?
的確,學習微積分中值定理時,學習物理轉動慣量時,我會想,這跟計算機有關係嗎?迄今爲止,的確有一些有關,好比線性代數、機率論中不少機率被機器學習中用到。但:
我如今發現,咱們學習的不該該是具體的知識,而是如何去學習學習的方法,即方法論。本科期間學習數學是爲了在將來缺乏數學知識時本身去學習數學。而且有了系統化的教育,在從此面對複雜的數學公式時,能不會那麼惶恐不安。
- 對於你將來在IT行業的發展,你有什麼樣的夢想或者將來想從事什麼樣的工做?你準備怎樣來規劃你技術道路,職業道路和社會道路?(必答)
我是那種執行力極強的人,想要出國便早早地準備考託福和GRE,認定了學習託福便一頭扎進去,想要把過去的鋼琴撿起來便本身在北京全城找老師;想要學習畫畫就立馬去學。即使如此,我仍然會感到迷茫:沒有宏觀上的一個方向,我之後究竟想作什麼?
正如博客3 所說:計算機科學和軟件工程是兩碼事。前者,是以科學研究爲導向的;後者,是以工程應用爲導向的,就是利用已有的語言框架等開發面向最終用戶的軟件系統。而該選擇的時候到了,這樣正是科學和工程學的巨大差異,將來到底是要選擇科學研究仍是作工程項目呢?
我我的是極其不喜歡這樣的對立劃分,爲何科學研究和工程學不能同步進行呢?就像微軟明明是軟件公司,卻也單獨開一個研究室,研究員能自由研究。
正如《學術前沿講座》所述:
我也逐漸想了不少,最終決定偏向工程學,緣由以下:
人是矛盾的,也是自私的,當我決定偏向工程學後,我開始爲本身找各類各樣的理由使我充分滿意本身所作的決定。其中一個理由來源於經濟管理課上的圖:
選擇工程,多是自個人抽象思惟在做祟。由於對於工程的實現,不在我的,而在集體,而從底層逐漸向高層去爬,直到最後,本身能主導一個項目,甚至去創業,無不是一個很好的發展方向。
- 大家立刻就要面臨實習了,你打算在企業內實習仍是在實驗室實習?
- 實習經驗究竟有多重要?是否須要立刻開始積累實習經驗?
企業實習。
實習經驗對本科生真的重要嗎?對於暑假期間作過一個小實習的我來講,有以下想法:
推薦大學期間要實習,但實習期2月左右就足夠。
- 你對於實現本身的夢想已經作了或者計劃作什麼樣的準備?
(請勿用於商業用途,轉載時請註明做者和出處)