疫情下我的柏克萊初體驗

2021年6月3日 18:58
喔耶~好開心,終於結束如噩夢般的一學期了QWQ 其實柏克萊5/15就結束學期了啦~但我在床上當了整整一個禮拜的爛泥後才有褪去學期間各種心力交瘁和身體疲勞的感覺:P 學期初的時候,本來想介紹一下遠距下,我在台灣上柏克萊課程都在幹嘛,但後來真是太累了,拖一拖就學期末了.___.真是抱歉敲碗的各位。 如果不知道我是誰的讀者,可以參考這篇
簡單介紹就是我是去年九月轉柏克萊EECS的大三生,現在已是在家遠距上了一年柏克萊課程的小廢物:P 因為板上好像很少人分享柏克萊undergrad EECS 的課程在幹嘛,但純粹講課感覺好無聊,所以這篇我會用我的觀點簡單介紹一下我上了什麼課、我的生活長怎樣、還有破除一些迷思!希望可以幫助即將入學的學弟妹們,或是還在苦惱要去哪間的朋友們了解柏克萊的生活和課壓! 那就先來破除迷思好了。 最常被問到的問題不外乎就是... 1.你讀那個系(EECS),是不是都在讀書熬夜沒有時間玩耍? 並沒有~我還是玩很兇的xD我沒有都在讀書也沒有每天熬夜,但我成績還是維持得不錯。我上學期每兩天到三天就去游泳一次,每兩個周末都去爬山健走,基本上只要一寫完作業就是到處亂跑的那種;我很固定每天大概1點睡覺,早上9點到10點才起床,除非有大作業要交,不然基本上不熬夜,但我這學期課拿太重了,所以我就很少去爬山了:< 我覺得柏克萊有個好處是它是學期制的學校,一個禮拜功課死線一次而已,對我來說,做事的時間區段更長也具有彈性,在規劃和時間安排上比較容易。簡單來說就是時間分配做好都不是問題。 2. 柏克萊裡面的人是不是都很陰沉,惡性競爭很嚴重? 我覺得並沒有呀~我的感覺是大家都很友善很互助合作,我還沒遇到惡性競爭這種事。陰不陰沉我覺得純粹就是個人觀點不同,每間學校都一定會有很愛比較又愛炫耀成績的那種人,我在柏克萊也有遇過這種人,但你要不要把它當一回事看就是你的選擇了。我是都不理這種人啦~畢竟我覺得他只剩能用成績維持自信這件事是有點可憐啦。 我知道很多人會對柏克萊有個刻板印象是它是間很陰沉的學校,然後會說UCLA學風自由什麼的,但這真的不是事實呀~我們只是樹比較多校園看起來比較舊比較陰沉而已,學生該玩的時候還是會玩,該讀書的時候還是會讀書,我們大部分的課都標準給分的,所以自己的成績跟別人表現無關,自然就比較沒有惡性競爭這回事。 3. 你們每個人所得到的資源是不是都很少,因為太多學生了,所以都被瓜分掉了? 我個人是覺得還好,可能是因為我的學院(工學院)特別有錢然後我剛好在最有錢的科系裡?我從來沒有約不到counselor的問題,基本上只要兩天前預約都約得到,而且我是有固定的counselor的,我遇到什麼問題他都知道。 EECS每學期還有一次教授面談,就是跟自己選的mentor教授小組聊天,可以聊生涯志向、選課、做研究等,個人認為是EECS還不錯的資源。 EECS有很多很厲害的program可以加,獎學金和研究機會也很多,每學期學院還會發禮物給學生還寄到全世界喔xD像我就在Engineering Excellence Program底下的兩個組織裡,一個是當student mentor另一個是當NSF S-STEM資助的研究計劃裡的成員。至於發禮物的部分,上學期是送一個印有工學院的束口袋,這學期則是工學院的旗幟,有時還不定時舉辦活動送工學院周邊商品(衣服 保溫瓶 徽章 貼紙 口罩等等的),不管你住世界的哪個角落,都會免費寄給你!扯吧。
imgur
圖為上學期和這學期發的禮物。 柏克萊是全美少數幾個有EECS program的學校,大部分的學校都是把EE和CS區分出來然後變兩個不同的系。所以名符其實地,柏克萊EECS的lower division (LD)軟硬課程都有.___. 管你要走軟還是走硬,通通給我吞下去。 LD必修六堂分別是: CS61A, The Structure and Interpretation of Computer Programs CS61B, Data Structure CS61C, Machine Structure CS70, Discrete Math and Probability Theorem EECS16A, Designing Information Devices and System I EECS16B, Designing Information Devices and System II (我現在已經吞了五堂,剩61C等秋天上,有人要跟我一起上這堂課的嗎xD) 其中,柏克萊最有名的三堂課就屬CS61A CS61B CS70了。 會這麼有名也不是沒有原因xD因為所有要declare L&S CS (註:柏克萊有兩種CS,一個是EECS另一個就是LSCS)的人,基本需求就是這三堂課平均GPA3.3。 這六堂課裡,我最喜歡16A 16B了。 所以以下生活舉例容我使用16B:) 但其實在學校,這兩堂課風評很差:P 主要是因為它課程設計包羅萬象,然後又很硬體,在我這個90%都選學軟體的系來說,就是一個不重要又很礙手礙腳的課:< 大部分的人都會說61A 61B比較好玩,但我真得不覺得啦~我尤其無法理解為什麼有人覺得資料結構有趣qwq 16A&B是在學基礎電路/基礎機器人學/基礎機器學習應用,聽起來就很雜吧~ 但16系列的課就是讓你對每個領域都有粗淺的了解後,爾後在選upper division(UD)的課時,更知道自己想朝麼領域發展。像我原本抱持著要朝機器人學領域的方向前進,但學完後我就覺得電路設計更符合我的興趣和對未來的期待。
imgur
遠距上課,什麼東西都在zoom上,教授和 TA全部都在用ipad上課,附上台灣時間半夜正在上美國時間早9 16B Dis的我 (這應該是正在教bode plot和各種RLC filter的時候)。 螢幕前的學生也大多是電子筆記進行抄寫(我是用surface的OneNote),我到目前為止,還真找不到一個沒用電子筆記的同學qwq 畢竟,這年頭遠距上課若還用紙慢慢抄的話,要印超多次worksheet(一學期下來很驚人的),塗塗改改找不到橡皮擦立可帶在哪,一個重點就這樣滑過去了,還不如直接螢幕截圖再做修剪或"一筆"搞定。
imgur
(我61A Discussion TA 做的迷因,我快笑死) 至於實驗怎麼進行? 別想了,當然還是zoom啊!(抱歉各位,我太兇了,我去旁邊罰跪<(_ _)>) 所有器材免費空運寄到你家,不准給我鬼吼鬼叫,起床給我坐在電腦桌前就對了。
imgur
好棒,所謂的運費比內容物還貴我看見了,真的是不計成本的全球寄呢。 順帶一提,他連便利商店都買得到的電池都寄了好幾顆來,完全不給學生有理由偷懶。 這麼凱的後果就是....學弟妹們只要這堂課還是遠距教學的一天,就都不會有真的實驗課qwq 他們全數變成線上lab lite,只剩看影片和回答超冗長的問答題了XD 誰叫預算已經在2020年花完了哈哈~ 這學期16B的project就做了一台聲控車子,做的時候會應用到SVD, PCA, RC filters, data training, and classify,算是整學期學到的東西都應用在這上面了:P這台車會根據人聲指令做出左右轉和直行的動作,但因為影片太恥了,決定只放這台長得很搞笑的車子給大家聯想一下。
imgur
至於軟體部分的課,我61B資料結構就做了遊戲2048, 簡易版的github, 和一個走迷宮收集金幣的遊戲。其中,走迷宮的遊戲真得是累爆我了,除了本身遊戲的generator algorithm就有點困難外,另是我的組員一整個都在擺爛,最後竟然變成我做全部= =雖然我檢舉她了,但後續不得而知,61B的TA好像也都沒處罰她,所以我對這堂課真得很賭爛。
imgur
遊戲本身長這樣子,用java從0開始寫的。這遊戲有初始畫面可以選擇要新遊戲還是要從上一次開始的地方開始玩,每次新遊戲使用者輸入的亂碼種子會產生截然不同的迷宮,這遊戲我還有編寫其他奇奇怪怪的功能,例如撞到特定方塊會進入新世界、可以連線對打、改名字改介面語言、或是也可以看一遍上一次怎麼玩的等等的,總之就是各種資料結構的應用和UI設計。 61B跟61A最大的區別就是什麼東西都要從0開始自己打,完全沒有starter code或是特定函式要編程,只要有符合基本需求,愛怎麼寫就怎麼寫。也因此,這堂課對要面SWE大公司的人很重要,也常被人說是可以昇華一個人從beginner 變成 programmer 的一堂課呢 。 那.....考試怎麼考? 我只能說,美國學校真是把zoom用得淋漓盡致,怎樣監考都想好了。 首先,你要先有一台連網且不斷電的電腦,斷線超過5分鐘的話,大概就G了。 打開zoom開始錄影,打開前置鏡頭和麥克風並拿著ID卡對著螢幕講出自己的名字和學號,講完後要拿著電腦轉360度給TA看自己的考場環境,爾後要分享自己的螢幕畫面,且自己的鏡頭即時畫面不能縮小!
imgur
(這是16A 裡給的protoring guide) 考試時,有的考試有自己的網站考試,有的則是會傳google drive 連結,考試前會給考試時要用的答案紙然後要你自己先印好,考試時間一到就去google drive自己開pdf開始寫,整場考試zoom裡面只會有你自己而已,但有時TA會跳進來巡視。 考試結束時間一到,網站就會關掉或是連結會失效,此時錄影還是繼續的,這時你會有20~40分鐘的掃描和上傳時間,你可以拿手機照相之後到電腦上合成一個pdf檔或是用scanner app掃直接做成pdf,最後上傳到指定的評分網站上就大功告成了。至於錄影檔在結束會議後,有的課程是雲端錄製所以檔案會直接回傳給助教,有的是要我們自己下載錄影檔,然後傳上google drive開連結給助教,但一定要在24小時內完成。 總之,每次考試都是個很麻煩的過程,深怕一個萬一就因為技術問題整場考試就不算分了QWQ 514那天下午大停電,我一個好險我早上就考完期末了,不然我真不敢想像考期末時突然沒網路又接不回去會有多絕望QWQ 講這麼多課程細節,你或許會問我柏克萊課業到底難不難? 我會說,這要看哪一科xD還有這也很看個人興趣傾向。 難當然可以難得很誇張 以下是Spring 2021 CS70 Final的部分統計資料(總分是317)
imgur
(cs70功課真的很冗長而且很難 考試平均也低得很誇張) 考試要機車也可以很機車 61A考試就是出了名的機車,線上考打碼時,能一行寫出來的,就只准用一行寫。 舉個簡單的例子,這是fall 2019 final考打第一題(python),請各位三分鐘內秒殺他,不然你會寫不完qwq: def winner(price): """Return a function that takes a list and returns the largest element not above price. >>> ipad = winner(499) # the iPad actual price is $499 >>> ipad([500, 600, 200, 1, 350, 299]) # the closest guess that doesn't go over is $350 350 """ return lambda guesses: ________(________(lambda g: ________ <= ________, _____________)) 想到了嗎? 想到了真的很厲害,我第一次寫61A考古題時,真的很絕望,因為這跟平常作業和討論課題目比的話,真的是難度三級跳,但這個其實考古題寫久了就會變反射動作了。 先說,這是基礎題,有更難的,但因為版面關係所以就不放了,想了解更多61A的, 可以去
他是開放式課程,所以任何人都可以觀看和下載文檔,歷屆試題也都在Resources裡,想挑戰的可以去挑戰www柏克萊每次考試絕對不會出考古題,每一次都是全新的體驗,跟面Google SWE一樣機車。
imgur
(一樣是61A迷因xD大家都一樣,對他心裡只有靠北兩個字) 至於這題的答案,我會公布在文末,有興趣的可以下滑看答案。 EECS當然也有簡單的課,但我遇到的主修科目都不是那種可以讓你躺分過的,通常是要有努力才有相對應分數的那種,像16A就是內容相對簡單,但要完成很多東西才能A的課。 16系列的考試非常冗長,長到大部分的人都寫不完的那種,你要讀完落落長的文字敘述後才能知道這題在幹嘛,所以基本上也是在比速度的。要A的話,基本上只能錯3小題分,但你總共有差不多35~40小題要答。 總和來說,要拿A說實在也是不容易啦~ 但我覺得你只要下夠多努力,在一個大學部平均GPA只有3.3的學校來說,就可以拿到不錯的成績了。 ........................................................ 好了,我覺得我自己真得打太多了, 總之,我還蠻開心也不後悔自己當時選了柏克萊這間學校xD (也謝謝UCLA把我拒掉,我活得比我想像中還要好:P) 謠言雖然可怕,但也要自己真得去體驗過才能去論斷它的好壞。 感謝成大讓我這一年有地方可以讀書可以參加活動當個正常大學生(嗚嗚嗚), 這個恩以後會報的, 我是說假設我發的話啦:P 回應好的話,我再來發第二篇www ............................................ 歐歐歐,然後這是程式設計那題的答案 return lambda guesses: max(filter(lambda g: g <= price, guesses)) 請各位笑納:D
愛心
249
留言 28
文章資訊