July 22, 2017

[CS50] Week 1 C - 作業筆記

*此作業筆記是依據 CS50x 2017 版本(也就是哈佛大學 2016 秋季班的 CS50)所寫。

作業筆記我只會寫出我做作業時遇到的問題,或是需要特別注意的地方,但不會把完整的程式碼寫出來。也因為這個緣故,所以只能用文字與少量的程式碼描述,可能會有難以理解的地方,還請見諒。

即使課程影片我都看得懂,但是做作業時還是卡關了一下,但做完後發現其實真正難的不是如何寫出程式,而是要寫出符合作業規定的 UX 設計。

第一週的作業分四小題,第三跟第四題還有分比較簡單的(他們叫做 less comfortable) 和比較困難的(他們叫做 more comfortable)這兩種版本,每個作業說明裡面都會有助教的講解短片 Walkthrough,基本上看完 Walkthrough 後就可以抓到如何寫作業的方向,強烈建議一定要看過才動手寫。

July 20, 2017

[CS50] Week 1 C - 課程筆記

*此課程筆記是依據 CS50x 2017 版本(也就是哈佛大學 2016 秋季班的 CS50)所寫。

CS50 原本就提供很詳細的課程筆記了(第一週筆記),所以這個筆記偏向記錄我比較不熟悉的部分而已(事實上這個筆記也是很長,廢話不小心寫太多)。

雖然我學程式的資歷還很淺,但已經不算是完全新手,看完第一週的課程影片後,覺得如果當初 CS50 是我的第一門程式課,我應該是痛苦不堪然後快速投降 XD

剛開始學程式的時候,我花了不少時間才完全理解第一週裡面教到的東西,像是函式、迴圈、條件判斷、資料型態等等,有些甚至到現在都還不算完全理解,像是浮點數。而 CS50 用一堂課就全部都講完了。雖然看完課程之後,我自認有 80% 以上的內容對我而言都是以前學過的東西,或容易理解的概念,但是在寫作業的時候仍然卡關嚴重(因為之前都沒有認真練寫程式 XD)。

即使第一週課程大部分的內容對我來說都不陌生,不過上完課還是收穫很多,Malan 教授上課的脈絡非常清晰,課程的步調也抓得很好,我甚至懷疑他在課堂上連出錯都是原本就安排好的,因為想要讓學生了解寫程式會發生的錯誤和一些邏輯思考,不過到底是不是真的出錯這就不得而知了。

July 19, 2017

[CS50] Week 0 Scratch - 中文導讀筆記

*此筆記是依據胡立老師的 CS50 中文導讀直播影片所寫。

胡立老師的直播:
CS50 中文導讀:week 0

原本不想寫這次的導讀筆記,因為所有內容都在胡立老師的 初心者的計概與 coding 火球術 有學過。但是呢,之後應該都會寫每週的導讀筆記,只有第零週沒有寫總覺得不完整(這應該是強迫症 XD),所以最後還是決定寫一下導讀有講到的,而 CS50 課程裡面沒有講到的一些補充。

以下是我的筆記整理:

July 6, 2017

[CS50] Week 0 Scratch - 課程筆記與作業

*此課程筆記是依據 CS50x 2017 版本(也就是哈佛大學 2016 秋季班的 CS50)所寫。

可能有些人不清楚如何在線上註冊 CS50,所以我大概講解帶過。

在 edX 上註冊帳號之後,還要到 Introduction Computer Science Harvardx CS50x 課程頁面上註冊加入課程,目前最新的課程內容是 CS50x 2017。課程本身是免費的,如果希望在修完課程後可以拿到證書,才要繳交費用。

稍微看一下他們的 FAQs,裡面有說到你一開始上課的時候不需要決定要不要拿證書,可以在完成所有作業及課程後才申請。所有作業都要 70% 以上才可以申請到證書。但是你可以繳交很多次作業,他們只會記錄你最後交的作業成績。

我猜測 CS50x 是指放在 edX 的課程,而 CS50 是指哈佛的課程,其實兩個是一樣的,只是時間上會有半年的差異,通常他們只錄製秋季班的課程(春季班應該也會有 CS50 但是沒有錄製),然後在隔年才放到 edX 上,因為影片需要時間剪接上字幕,還有一些其他的教學材料的準備,所以才會有半年的時間差。

July 5, 2017

[CS50] 導讀哈佛大學程式課程:CS50 - 緣起

昨天正當我還沉浸在 Diablo 的世界時,收到胡立老師的關切。
他說:「所以妳有要一起來修 CS50 嗎?XD」

馬上從 Diablo 的世界中驚醒,然後我回:「好想繼續耍廢啊 😂」
的確是上個前端課程結束之後就一直耍廢,因為剛好 Diablo 死靈法師出了啊 XDD

最近胡立老師創了自己的教學網站 Lidemy 鋰學院,然後下個星期要開始一個新的課程:導讀哈佛大學程式課程:CS50。上次課程快結束前,胡立老師就有建議我可以再去上 CS50,但是我懶惰,只是放在「待修課程清單」XD