馬上就到2013年了,園子里好多年度總結,我也寫一個吧。
現在研究生二年級,今年六月份結束了研一的集中課程學習,終於不用再惦記着“上課”,而可以在實驗室有自己的一個格子,每天自己安排時間了。不用再“上課”了,我仿佛卸下了一副重重的擔子——從小學一年級算起,我已經上了整整17年的課了。在這17年的最后幾年,我愈發覺得上課實在是一件太浪費時間的事情了。偏激地說,3/4的課程很難帶給你收獲,而剩下的1/4課程,也完全可以通過自學達到更好的效果。固定時間的課程安排和不緊不慢的進度讓我產生一種我在學習這門課程的錯覺,而實際上教授上課的節奏和你完全不一樣,我相信如果不上課而直接把教材和作業甩給我,我能完成得更好。總之,這種課程安排方式對略有惰性的我而言簡直太糟糕了。
研究生三年,很短也很長。短在我似乎剛開始進入狀態,明年秋天就要開始找工作了;長在和我們一起畢業的同學們工作大多步入正軌,也有不少都結婚了。
說了幾句閑話,那么看看我今年做了些什么吧。這是我第一次寫年度總結,以后我會把這個習慣堅持下來的。
我本科時不是計算機專業的,學的是地理(地理信息系統方向),編程基礎比較薄弱。學過C,C++,C#.NET,但是都不精通,理科基礎(數學、物理)都還不錯。上半年在研究生院上課,印象深刻的就是兩門,一個WebGIS課(第一次接觸JS),還有一個ArcEngine二次開發課。
回所之后,任務相對不是很重(感謝老板),除了完成一些既定的任務,其余時間基本都是自己的,果然比上課的時光充實了很多。
首先就是開始寫博客了。意識到寫博客的種種好處之后我就立刻就行動了。首先在博客園上申請了博客,然后用ASP.Net按照自己需求寫了一個博客站點,放在實驗室的機器上;再后來覺得太丑了,改用WordPress,買了一個域名,淘寶上租了個空間,正式發布我的個人網站……我發現建立一個個人站點比我自己的想象要簡單多了。
上半年還在上課的時候,為了那一門WebGIS課程作業去w3School上簡易學了一下Html+CSS+JavaScript。這些東西在折騰自己博客的時候還幫了不少忙。提到折騰博客吧,最多的就是怎么在網頁上顯示公式,又要效果好,又要能跟着文本走,最后還是發現用MathJax最好。
在實驗室的時間,基本就是看書。囫圇吞棗看完《JavaScript權威指南》然后還算仔細地看掉《JavaScript編程精解》,把閉包弄清楚,這門語言差不多也入門了。當時還有個想法,就是學過的ArcEngine開發不能丟,因此又花了半個月的時間看了一遍《VC#核心編程》,還買了本《CLR via C#》,不過短期可能沒時間看了。
接觸到WebGL,很新奇很酷,也覺得這個是未來的方向——在雲計算的趨勢下,繁重的任務都通過大型機,PC端退化成瀏覽器,WebGL就是以后的OpenGL啊!看了HiWebGL翻譯的那十七課,也一步一步自己動手實現了,然后還做了一個貪吃蛇小游戲。
看了一些Three.js的教程,看了一點Three.js框架的源碼,正好實驗室要做一個衛星數據查詢分發系統,前端和數據庫部分就給我做了。就是一個簡單的網頁,網頁上有一個WebGL實現的地球儀,可以在地球上拉框出一個區域,顯示經緯度范圍,再輸入成像時間范圍,php+MySQL在數據庫里面查詢符合條件的衛星圖像(php現學現用,SQL本科學過),再將縮略圖顯示在地球儀上。Ajax保持頁面不刷新。
然后就是最重要的,看《算法導論》這本巨著……先囫圇吞棗看一遍,稍微能明白點意思就向前趕,然后再仔細地有重點地看一遍,自己用C++實現一遍(正好再加深一下C++),后面的題目做一遍,不會的到網上找答案,多多總結。這第二遍,現在剛開始看散列表。
說說明年的期望吧:實驗室有活兒就要干活兒,要發一篇論文(為了畢業!),博客堅持寫下去,寒假回家快速掃一遍《計算機圖形學》,明年重點看《算法導論》和《設計模式》,了解Linux內核。游戲少玩,把玩游戲的時間拿來寫個基於Three.js的游戲框架(這個蠻有挑戰的)。還有9個月就要找工作了,可是現在只是一個有熱情的小白而已。不過我相信9個月時間還是可以作不少事情的,只要方法得當,又能克服惰性的話。不是說某個牛人只用一年就學完了MIT計算機系4年的課程么。