iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 6
1

本篇文章是 2019 it 鐵人賽的 Day 6,我跟我的隊友們 ,會在30天內每人每天完成一篇 it 相關的文章。你現在看到的是 Hello, World! 線上課程學程式?你應該要知道的 30 件事 主題系列文章,歡迎訂閱。


在前兩天的文章裡,我分別討論了對線上課程不熟悉的人經常會有的直覺反應「學程式,線上課程真的學得會嗎?」,並對「線上課程 V.S. 實體課程」的優劣進行分析比較:

簡當講,以程式教育為例,隨著線上課程的設計和學習輔助機制日趨精緻完善,所為線上與線下的觸點也逐漸結合。過往認為線上課程的缺點或疑慮,在實際執行層面上,並不是無法克服的阻礙。

今天只講一點,我覺得對學習至關重要,但在線上課程的操作執行面上仍然需要多加著墨的部分:沈浸式學習(Immersive learning)

所謂的沈浸式學習,指的是將教學與生活環境融合,讓學習者盡可能地在環境中的各個層面中都接觸到學習的知識。最常見的是語言沈浸式學習,舉例來說,大家都知道,學習第二外語最快的方式就只是直接生活在大量使用該語言的環境裡。又或者是,過來人經常會對還在學校裡的學生說,「科科,學這個幹嘛,出社會就會啦」、「直接動手做、邊做邊學」。

熱絡的實體討論與學習氣氛,雖然可遇不可求,但仍難以取代
https://ithelp.ithome.com.tw/upload/images/20190922/20120822qE9xGnA71E.jpg

這件情在自然語言和工藝上比較好想像,但在程式學習上呢?

好的程式語言學習環境有哪些元素?

假設這裡學習的目的是要從事軟體工程師相關的職業,那我們可以繼續追問的是,好的工程師應該具備哪些條件?又可以如何在學習過程中獲得?

好的學習環境,應該要著重這三者關鍵要素:思維、技術、社群

1. 學習工程師思維

我認為思維是所有教學元素中最難教也最難學的一環。所謂思維,指的是根本上的「思考方式」,在實務層面上,會體現在你如何思考與做每一個判斷和選擇。簡單來說,思維就是在問為什麼。舉例來說,拆解問題的時候為什麼是照著A > B > C 的方向走,而不是反過來?JavaScript 框架的選擇為什麼是選 Vue 而不是 React?所以一個專業的開發者,倒底是如何思考工作上的選擇和操作?這些對於身在其中的人可能就跟呼吸和喝水一樣自然,有時侯你問他為什麼這樣做,他可能還會聳聳肩說「因為大家都這樣做、因為這樣做比較順、因為一開始學的時候就這樣做」,等等對你實際學習不會有太多幫助的答案。但對於還在學習階段的,這種「為什麼」以及隨之而衍伸的行為判斷,才是是最難以習得精華。

在教學的階段,除非課程內容設計者與教學者,非常有意識地把「思維」融入教學裡,而不是只著重「技能熟練」。否則學生就只能靠著在大量的練習與對話中,學習成熟開發者的行為。在這種情況下,沈浸式學習就會非常重要。

也就是說,假使在學習階段的學生,能夠大量和有經驗的開發者對話、問問題、甚至是合作、觀察他們如何討論、開發與思考,即使他在課程中沒有學到那個「why」,都還是能逐漸在沈浸式學習中內化這些思考過程。而這種思維上的培養,是需要長時間的累積、浸淫與淺移默化,這也就是所謂沈浸式學習的秘密,身處環境中,因此不知不覺地學會。

沈浸式學習仰賴大量的實體互動和環境的塑造。

實體課程有著先天上的優勢,但實際上的操作是否能發揮這樣的優勢,依然還是要看教學者的設計。包括教學內容、師生比例、上課和實際演練的模式、是否鼓勵學生討論發問、發問方式的引導、學習環境是否對討論友善等等,都會影響到「沈浸式學習」是否真的能發生。即使是實體班,都還是有可能會有填鴨式的教法和環境,而讓沈浸式學習難以發生。

而線上課程有著先天上的劣勢,是否就真的無法進行沈浸式教學?就難以進行思維養成?
我認為不見得。剛剛提過,許多教學現場的環節設計,都會影響到「沈浸式學習」是否能發生。

所以在線上課程可以怎麼操作沈浸式學習?除了思維之外,技術和和社群的沈浸式學習要如何營造?

因為時間的關係,it 鐵人賽 23:59 的截稿時間再度逼近,以上這個問題,就留到下篇待續。


上一篇
學程式,線上課程真的學得會嗎?——對線上課程的常見疑慮
下一篇
線上課程風起雲湧,實體課程有哪些不可替代性?(下篇)
系列文
Hello, World! 線上課程學程式?你應該要知道的 30 件事30

尚未有邦友留言

立即登入留言