2016-2017 第2學期
課程介紹
編程類課程,76學時(44理論+32實驗),學期末還有1周的課程設計。
問題與現狀
- 4個班共120人,教師無法逐一檢查每個學生的編程實驗。
- 紙質作業質量不高。 好的作業無法得到激勵,差的作業無法得到相應的提醒。
- 對不想學的學生,沒有一個有效的輔助措施。對想學的學生,沒有一個較好的提升平台或者項目。
- 期末一張卷考核。雖然也有平時成績,但主要還是看期末成績。有的學生平時不學習,而寄希望於期末一次考試。然而期末考卷這種形式,主要考查的是知識點,難以反應出學生真正的編程能力。
- 實驗有的同學能完成,還有很多同學無法完成,甚至有的學生完全放棄。
- 課堂雖然注重互動,但手段還是提問,叫起某個學生回答。難以掌握學生對問題的掌握程度。
教學思路與方法
-
思路:
- 過程監控:讓學生將精力放在平常的作業與實驗上。
- 增加師生互動:課堂上+課后。
- 自動評測:自動化批改學生的編程實驗。
-
方法:
滿意度調查與分析
1.博客作業與助教制度:
從作業形式上來講,方式比較新穎。助教與老師每周給分這種即時反饋對學生有很強的督促作用。積極的反饋:“從來沒有這么認真的完成作業。”、"為了拿到高分花費了很多時間"。消極的反饋:“感覺整周都在做Java作業”、“作業量太大、格式要求苛刻”、“評分標准不一致”。詳細的博客作業問卷調查鏈接
問卷調查中基本情況如下:
- 博客作業這種作業形式:有將近49%的人覺得博客作業這種形式更好,只有7.61%的學生覺得不好,不好的原因主要是“花的時間太多、要花更多時間完成博客、評分標准不太統一”。
- 相比較紙質作業:54%的同學認為博客作業“需要付出更多的精力,但對知識掌握、能力培養確實有提升”。
- 作業量:有超過54%的同學認為量多,但是努力一下還是能完成。分析:這實際上就是我們所要的效果,設定一些標准讓學生踮起腳尖能夠得着,這樣的作業能更好的提升學生。
- 存在的問題**:有66位同學,認為“又要做PTA、又要做博客作業,精力分散”。其他有30人左右認為“存在作弊現象、題目質量不夠高、作業參考資料不夠多、評分不夠客觀”
- 可以改進的地方:排名前3依次是“多在實驗課輔導博客作業的內容”、“作業的參考資料應該多一些”、“增設討論區供大家討論”
- 更期待的Java作業形式:47.8%博客作業+PTA,只有13%的同學喜歡傳統的"純粹的紙質作業+紙質實驗報告+自己上機練習"。
- 主要槽點:對評分標准、對作業格式、對作業量、作業講解。
分析與結論:
- 總的來說學生還是接受PTA+博客作業這種形式,只有13%的同學喜歡傳統的“紙質作業+紙質實驗報告+自己上機聯系”。但是在“評分標准、對作業格式、對作業量、作業講解”這塊還是有不少槽點。
- 還有一個突出的問題是,有66名同學認為“又要做PTA、又要做博客作業,精力分散“,如果能將博客作業與PTA有機融合起來,相信會有更好的效果。
- 可以改進的地方主要集中作業輔導與作業質量這塊,即如何幫助學生完成作業這個環節。傳統的教學模式中,教師課堂講、學生課后學然后做作業,碰到困難的地方自己解決或者與同學交流,缺乏幫助學生的梯子。在國外慕課實踐當中,分布在各地的學生則是通過論壇來進行交流。我們是否應在課后給予學生完成作業以適當的幫助呢?我認為,答案是肯定的(好像以前有一些論文有這方面的結論)。如果是一周兩次課這樣的安排,首先上課並布置作業,然后在實驗課上主要針對布置得作業進行輔導,相信會給予學生更多的幫助。讓學習能力一般的學生不會處於完全無助的狀態。課后討論區這種形式,也嘗試過,但似乎新世代的同學不怎么玩論壇,也沒有在論壇上進行討論的習慣。婁老師曾使用藍墨雲班課實現課后的討論,似乎效果還不錯。這點還有待摸索,和新任助教商討好還是希望能以論壇的形式(博客園群組,雖然上學期效果並不好,沒有學生在上面討論)給大家以更多的課后幫助。至於博客作業的參考資料,應該做到詳細與明確。
- 其他反思:作業內容應大幅減少語法類題目,讓同學在編程中去掌握語法,而不是以書面作業的形式來掌握語法。作業內容應緊密結合PTA實驗內容,不要讓學生雙線作戰。
- 助教制度:每周一次助教與老師給學生作業評分,給學生帶來即時反饋,讓學生時刻把握本章知識掌握程度,從理論上來說是好的。通過學生線下的反饋,學生明顯更重視作業。為了得到高分,會很細致的完成作業。這就對我們的作業提出了更高的要求。不能讓學生的精力浪費在低質的作業上。總的來說,助教制度能提高一門課程的活力(學生的參與度),為未來的以學生為主的教學理念提供了一個基本的保證。
- 教師、助教保證下的博客作業制度可以將傳統的以考試為導向的課程學習轉變為以平常作業為導向的課程學習。這實際上也符合過程監控、形成性評價等理念。而作業的好壞就非常重要。如何成就一份好的作業?鄒欣老師在不斷地實踐當中,也提出了作業要不斷迭代、作業的優勝略汰是有助於形成一份好作業的。而博客作業的開放性、數字化特性,也有利於基於作業的交流、迭代、持續改進。張敏老師的軟件工程課程作業則是通過石墨這個文檔協作工具,在老師、助教和企業界人士的不斷迭代中逐漸形成。為未來其他學校的軟件工程課程提供一個重要的參考,這也是博客開發性的一個好處。
2.自動評測(PTA):
PTA問卷調查鏈接
問卷調查中基本情況如下:
- 通過PTA掌握Java基礎語法相較傳統方法(自己做實驗、無驗證、無檢查):認為PTA更好的只有28%,差不多的卻有 69%,不好的有3%。
- 覺得不好的原因:(60/90)出錯沒有足夠提示、(52/90)自己花費在編程上時間不夠,其他原因:本機能過的程序PTA上過不了、不理解題意、題目不明有歧義。
- PTA題目:46% 題量太多、太難、47%題量適中,難度適中。
- 對於考試形式:66% “傳統的期末考試,做一張卷子”。只有21%的同學,支持使用PTA機考代替期末考試。還有不少同學留言:不要考試,根據平時作業成績決定考試成績。
- 對PTA的建議:
53,每個人可以隨時查看自己的實驗完成度,比如50%,80%。50,增設題目討論區,大家在上面探討題目解決方法。
35,增加設計更好的題目。34,不要每周公布PTA排名,讓大家可以按照自己的節奏完成實驗。33,減少習題量。 - 其他建議:提升用戶界面、借鑒lintcode,找不到bug,錯誤提示不明確、題目要說清楚。
分析與結論:
- 雖然覺得PTA更好的有28%,但是大部分覺得不夠好的原因主要在於a)PTA出錯提示不太直觀。有的同學認為本機通過的程序,PTA上過不了,那就應該是題目出問題了。但根據以往經驗,往往是學生自己編程的時候沒有考慮到所有情況,或者有時候題意理解錯誤。一般來說PTA上的編程題目,要求更嚴格一點,但是出錯提示卻不夠詳細。這就造成了學生對PTA的不滿。b)自己花費在編程上時間不夠。很多人清醒地認識到這點,然而卻無法投入大量時間去攻克題目。這點需要在以后的課程,由老師提出明確的要求與措施,確保他們PTA的基礎題目一定要完成。
- 46%的同學覺得體量太多。其實從題目數量上來看,與傳統實驗課的題目差不多。但是傳統的語法練習題目,檢查少、做錯了也沒有反饋,學生覺得大概做對也就不深究。而PTA的判題系統要保證每題答案完全正確,這就造成了占用時間較多卻依然通過不了。
- 只有21%的同學支持使用PTA機考代替期末考試、還有不少同學希望只根據平時作業成績(博客作業)來決定考試成績,說明大家對真正能考核編程能力的考試還是比較害怕的,也反映傳統考試與博客作業的局限性。
- 對PTA的建議,是我們今后努力改進的方向。如果學生能實時的知道自己的試驗完成度,這就相對能比較量化的把我自己的學習進度。而關於題目討論區輔助完成PTA,我也是贊同的。語法練習的目的不是為了讓同學都做不出來,而是通過練習讓同學掌握語法,而討論區可以讓他們在完成練習的過程中交流、在交流中學習。下學期准備聯合助教設立專門的討論區,每周在討論區上對當周的PTA題目進行解答。
3.增加師生互動(雨課堂):
雨課堂問卷調查鏈接
預習課件說明:將課堂講授內容的重點濃縮到少於12頁PPT(手機豎版PPT,內容少)。
問卷調查中基本情況如下:
- 課前推送預習課件:72%有幫助。
- 對預習PPT的態度:79%, 好、花費的時間可以接受。
- 預習PPT中出現的知識點:77%,不論難易與否,最好課堂上再講一遍。有的人認為,“難的可以詳細講,易的可以簡單概括講”。
- 雨課堂什么功能好:
(53/86)人,課前預習課件、課堂課件瀏覽。
(46/86)人,課后瀏覽課件。
(38/86)人,課前或課中的習題。
還有人認為簽到筆點名快、對頁面點擊收藏、對不懂的頁面點擊不懂、反饋留言、彈幕、其他。 - 其他建議:開彈幕增強與學生交流,很多人覺得預習ppt早一點點發布,感覺每頁ppt留一個做筆記的地方會好一點,習題最好能夠在做完后顯示答案和解析。
分析與結論:
- 總的來說雨課堂工具的使用反響非常好。在課前預習、課堂課件瀏覽方面效果不錯。在課堂教學效果方面有一定提升。下學期要聯和助教,將剩下的預習課件做完,培養起學生預習的習慣。
- 有53人左右習慣課堂上的課件瀏覽(課件實時推送到手機)。這是我沒想到的。在我在講台上妙語如珠、賣力講解的時候,很多同學卻喜歡自己看課件。不過也算意料之中,每個人的理解能力、學習習慣都是個性化的,教師統一進度的課堂講解肯定不能滿足每個人的教學需求。如果能以學生的學為主,讓學生按照自己的節奏來學習那是很好的。翻轉課堂、mooc給了我們這樣的可能,但在切換到這些之前雨課堂或多或少能讓學生按照自己的進度來學習。
- 在我的理念中,在未來的教學中,課堂教學更多的應該是學生老師討論、交流、重難點講解的地方。據研究,學生通過傳統的課堂講授方式獲取知識只能得獲取到約20%,而在傳統教學中課堂講授卻占據教師、學生較大比例的時間,可以說傳統的課堂教授在知識傳授這塊效率低下、投入產出比不高。傳統的課堂講授法必將被揚棄,教師的精力應該更多的放在教學數據分析、課后作業設計、實驗設計、考核等。但是在未來到來之前,如果能用雨課堂之類的手段為傳統的課堂講授發增加一些互動的可能,能將傳統課堂講授的最后一班崗站好,也是很有意義的。同時雨課堂的互動性(課前、課中習題,彈幕討論)也應該會為我們未來的教學提供更多的可能。
4.教學資源發布、翻轉:
自己錄制了異常、集合兩個章節的mooc視頻,還有一些實驗課的操作視頻。因為無平台發布,只好通過QQ群的方式發布資源。以前嘗試過使用這些視頻資源做翻轉課堂,詳見翻轉課堂調查鏈接。總的來說將每個知識點做成小段的教學視頻,並輔以課前問題,對學生在知識理解上是有幫助的。
這里主要說一下問題:沒有教學平台發布,不知道學生完成情況如何。只是主觀上感覺,對學生應該是有幫助的。但是無法跟蹤學生學習進度。並且,課堂上好的教學效果能否切實的內化為學生的能力,這里要打一個問號。因為那個學期實踐下來,並未覺得學生編程能力有一個突破性的提高。只能通過實驗課上個別優秀同學完成加分題叫我檢查的這種方式,讓我知道這幾個同學編程能力還不錯。但個人感覺,是個人能力最終決定了其編程表現而不是翻轉課堂起的作用。
5. 平時成績與期末卷面成績相關性
還未完成
6. 學習行為與博客分數的相關型分析
請參考博客作業教學數據分析系統。結論是:篇幅大(字數多)、圖片多的博客作業更容易得高分。
問題
- 系統能力培養不夠
- 現有體系只能讓想學的學生學得更好,無法帶動每個學生學起來。
- 120人每周批改作業工作量巨大。然而助教似乎不太可持續。
- 雖然課堂講授效果還不錯。但傳統的、良好的課堂講授,在多大程度上能幫助學生真正的培養起編程與系統的能力。還不清楚。
改進
1.博客作業:
- 內容上:進一步減少語法題,轉而重視系統能力的培養,比如增加面向對象大作業設計題目。
- 合並PTA與博客作業,避免分散學生精力。
- 作業評分由10分制,變成等級制:-2(抄襲、未交),0(雖提交、質量不合格), 1(及格), 2(優秀)。主要是為了降低助教的工作量,減少評分標准不一帶來的評分不一致的現象。
2. 課堂改進:
- 雨課堂預習課件補全:Java基礎、Java基本語法、Java面向對象三部分的預習課件。
- 雨課堂彈幕功能:能否將彈幕功能引入課堂討論。
- 課堂上應該講些什么?只講重難點、系統分析?更重視師生互動?
3. PTA
- 增加:PTA語法考試題目,整個學期應該有兩次上機小考(基本語法、面向對象基礎)或者再多加一次(綜合考試,包含集合、異常、多線程等內容)。考試時間任意。是否將平常考試納入平時成績?
- 進一步改進題目PTA題目。確定每次作業中的必做題目(每周3-4題)。
- 怎么把PTA的教學數據(實驗完成率)用起來?通過數據驅動每個學生。
- 增設討論區,每周答疑。
- 怎么把實驗課充分利用起來,輔助學生完成看起來較多的作業。
4. 利用Git管理源代碼
- 利用命令行Git管理Eclipse項目?可行嗎?
- 讓學生統計每周自己完成的代碼行數?
5. 系統能力培養
將學期作業如何與課程設計更好的聯系起來?
6.Java學習的三個階段
st=>start: Start
e=>end: End
op1=>operation: 基本語法
op2=>operation: 面向對象設計
op3=>operation: 應用
st->op1->op2->op3->e