蔣琴 鄧磊
【摘? 要】 近年來,隨著《人工智能發展規劃》的頒布、國家對少兒編程的大力推進,編程教育逐漸形成一股熱潮。一些省份也率先開展編程教育的推廣工作,但當前的兒童編程教育系統還不夠健全。文章通過對目前適用于青少年的編程工具的分析,結合青少年不同發展時期的學習特征,歸納了一種完整的編程教學系統,并將其應用到編程教學的實踐中,從課程教材、師資、技術保障等五個角度,討論和思考目前存在的一些問題,并提出一些建設性的建議。
【關鍵詞】 人工智能;編程教育;體系設計
一、當前青少年編程教學中存在的問題
現在,中、小學都以資訊科技課程為基礎開設編程課程,還有許多社會培訓機構(如青少年宮、興趣培訓機構)開設機器人和編程的課程。在教學內容方面,青少年編程課以學習經驗為主導,比如利用人工智能類的教學硬件及軟件進行拼插、圖形化編程等;在組織方式上,以必修課程為主,以社團或學校為補充。從項目的發展來看,正式組織的白名單競賽,對人工智能特別是編程教育的發展起到一定的促進作用;從整體來看,課程、活動和競賽互為促進,豐富多彩,熱鬧非凡。但青少年編程教育仍有一些問題存在。
(一)課程材料建設尚不完善
課程是教學內容得以實現的必要條件,而教材又是實現這一目標的根本保障。盡管教育部已經頒布最新的《信息技術課程標準》,但是大部分的信息技術教科書中關于人工智能和編程教育的內容都有一定程度的割裂,存在系統性不強等問題。
(二)對編程教學缺乏重視
雖然在初中和高中分別將信息技術納入中考、學業水平考試,但是因為考試本身的定位、試題難度、考查側重點的不同,再加上考慮到地區、城鄉不均衡等原因,程序設計的內容不多,試題難度系數也不高,對大部分的學生而言,就算沒有經過系統的編程培訓,也可以輕松過關。學校、任課教師和學生都在一定程度上缺乏對這類課程的關注,這就造成在課時設置、師資安排和硬件保障上的隨意性。
(三)師資短缺,水平參差不齊
國內高等教育院校學前教育與初等教育專業鮮有少兒編程類課程,目前各個K12學校的編程教師以及少兒編程培訓機構的教師多為非教育專業的學生,他們掌握了一定編程的理念與技巧,但對各個年齡階段少兒的心理發展和認知水平認識不足,因此編程教育的專業性和時效性大打折扣。
(四)教師教育觀念與方式滯后
盡管《信息技術課程標準》一直被教育教學科研機構所重視,但“不閱讀”的問題依然在廣大教師中間蔓延開來。許多教師在教育觀念、教學手段上陳舊、落伍。《信息技術課程標準》已經進行幾次更新和修改,但是在中小學的信息技術課堂上,仍然可以看到一些不符合課程標準的教學理念,以及“填鴨式”的教學方式,本來就枯燥難懂的知識,更是很難激起學生的學習興趣。
(五)智能教育技術保障薄弱
人工智能涵蓋了很多方面,將其與中小學生的認知能力、基礎教育政策等因素相結合時,應該將人工智能教學的目的放在理解和體驗上,要讓學生對信息科技的發展進行深入了解——了解當前的科技發展情況,經歷幾種常見的人工智能技術的使用,切身感受到它對人們工作、生活的影響。在這一過程中,除了要依靠課程和教師的因素,還需要有技術支持的能力。目前,網絡基礎設施還沒有完全建立起來,想要建立起人工智能教學所需的硬件和軟件,那就更加困難了。
二、國內與國際的編程教育形勢
縱觀全球,許多國家都大力提倡兒童編程,美國兒童編程的滲透率已經超過了40%。美國許多兒童從六七歲就接受編程教育,巴拉克·奧巴馬曾啟動了一項名為“編程一小時”的活動,目的是在全國范圍內培養小學生的編程能力。當前,我國程序設計人才與市場需求存在嚴重脫節,尤其在青少年編程教育方面幾乎是空白。青少年作為國家未來發展的重要力量,到目前為止,還沒有一套完善的編程教學系統適合年輕人學習。
目前,國內高校計算機編程教學已經形成較為完善的教學體系。但是小學、初中、高中的信息技術課程,主要還是局限于單純的多媒體軟件應用方面,對編程的學習相對較少。再加上高考的壓力,一些省份的信息技術課也被其他的課程所取代,這給青少年時期的編程思維培養造成很大的阻礙。
學習編程應該從小開始。當前,政策方面存在的突出問題在于教育主管部門對青少年計算機教育和編程教育的關注度不夠。相信隨著社會不斷發展和未來社會對學生編程能力需求的改變,這一問題將逐漸得到改善。從技術角度來看,目前首要的問題是缺少一套面向青少年的程序設計教育系統。
三、編程教育體系設計策略
(一)健全教師隊伍,推動智能設計教學
由于我國編程教育起步較晚,所以在師資培訓方面,尚未形成完善的青少年編程師資培訓體系。青少年程序設計在我國已得到廣泛應用,但其師資緊缺問題卻日益突出,已成為制約編程教育發展的重要因素。在傳統的高等師范教育中,編程教師的培訓一直沒有得到足夠的重視,導致當前學前教育專業的教師力量相對薄弱。青少年編程教師在進行教學活動時,要以計算機思維為中心,以教學方法為途徑,以編程為操作工作,才能使教學工作順利進行,因此,教師除要具備教育學、心理學等方面的知識外,還需要對編程語言、思維等方面的知識有所了解。故可將有關青少年程序設計的師資訓練納入大學教育,讓教師具有較強的電腦程序設計能力與教學技巧。相關的教育機構可以通過增加工資和福利來吸引更多的計算機專業或師范專業人員加入青少年編程工作中來,并進行相應的培訓,讓教師有更多的學習機會來提高自己的專業水平,為教育事業和青少年編程教育的發展打下堅實的基礎。
(二)分層教學豐富課堂內容
對中小學生而言,要把信息技術與現行的信息技術課程結合起來,同時與學生的知識基礎結合起來,適應學生的需求。在進行智能教育之前,必須對相關的相關知識有一個整體的認識,構建一個完整的主題體系,做好教學方案的設計,保證課程實施的廣度和深度。初中學生的基礎能力水平各不相同,有些學生基礎較好,更熟悉人工智能技術,對人工智能技術的理解更深,但也有一些學生的基礎相對較弱,對人工智能的應用也相對較弱。因此,教師要制訂合適的個性化學習方案,采用分層次的教學方式,兼顧每一位學生,使教育達到最佳效果。
在分層教學模式下,教師可將班級學生分為A、B、C三個等級,并根據不同等級水平的學生,制訂相應的智慧課程。A類學生具有良好的學習意愿,具有較高的信息科技應用能力,教師通過對其進行人工智能計算教育,幫助學生更好地了解人工智能技術的基礎原理,并通過小游戲、錯題本、背單詞打卡等程序,提高學生對人工智能技術的應用能力。對C級學生,可以利用人工智能技術來完成諸如語音識別之類的學習,以此來提高學生的學習興趣。對成績中等的B類學生,可適當降低編程難度,引導學生完成較簡單的任務,營造寬松的學習氣氛。根據不同的學習水平和知識水平,對其進行有效的分析,這樣才能使人工智能教學工作得到整體的推動,并極大地提高工作效率。
(三)利用多種教學方法培養電腦編程能力
近年來,由于電腦科技的飛速發展,電腦輔助教學方法越來越多,教師可以利用各種方式來引導學生在各種學習與實踐中,不斷地提升自己的電腦應用能力。教師可通過使用Python、Scratch等多媒體軟件對數據進行處理,提高學生的編程水平。在學生有一定基礎之后,再加強電腦編程技巧的研究,以實現整體的發展與提高。此外,教師也應將所學到的程序應用于實踐,因為程序的學習來自每天的練習。因此,在編程能力的培養上,教師應該讓學生更好地從現實生活中發現問題,運用編程技巧解決問題,增強相應的知識,提高學生的編程能力。
向學生傳授人工智能的知識,不僅僅是對概念理解、算法等方面的知識,更重要的是對其知識的拓展,從生活中的實例中進行理解,從而對其運用方法有更好的理解,不斷提高自身的創造性。借由大量的例子,讓學生對人工智能技術有較深的認識,從而加深對相關知識的理解。例如,某家大型商城,運用大數據與人工智能技術,對用戶的點擊次數、購買數據、瀏覽時間等數據,以及對用戶的個人資料進行全方位的統計,綜合分析用戶的性別、職業、飲食習慣、購買力、穿衣風格等,從而對首頁的內容進行優化,為用戶提供及時的意見。利用智能化技術,可以對照片、文字等進行掃描,并添加相應的特效。教師可引導學生利用軟件進行網頁查詢,并根據這些資料,分析如何將人工智能技術應用于網頁制作與軟件開發,讓學生掌握智能技術的原理。通過案例教學,增強學生對智能的敏感性,并將智能與現實生活聯系起來,有利于提高學生的科學素養。
(四)運用游戲性編程提升課堂活力
興趣是最好的導師。為培養學生的科學認識與實踐能力,可采用“玩”與“學”結合的方式,把電腦繪圖程序與游戲結合起來,不僅可以增加學生的學習興趣,而且可以有效地提高教學效果。在教學過程中,教師以游戲的方式,調動學生的學習熱情。在實際教學中,有一些程序設計課并不能讓學生“玩”得太好。因此,在編寫程序的時候,有兩個方面值得注意。第一,要根據不同的教學內容,采用不同形式“玩”法;第二,要緊密地結合學生的實際狀況。例如,教師可以讓學生一起參加“飛翔的蝴蝶”的活動。首先,教師要在課堂上建立起一條主線,引導學生以“主干”的順序展開教學,讓學生用自己的語言來講述比賽的規則,如:“蝴蝶是怎么飛的?”“蝴蝶長什么樣?”教師在教學過程中,可以對學生進行引導,但不能越權,故意設置一些“遺漏”,留給學生自行解決,從而提高學生的能力。在學生充分理解這次活動的規則與內容后,教師引導學生對其進行系統的分析與設計。以“蝴蝶的飛行軌跡”為例,讓學生在現實生活中想象一只蝴蝶拍打著翅膀,然后根據速度和時間的關系,一步一步地探究“蝴蝶的飛行軌跡”,并將其畫出一幅生動的圖畫。在這種游戲式的教學中,學生在教師的引導下,進行詳細的分析與探究,逐步積累經驗,掌握其中的規則,從而正確地理解編程語言,構建自己的知識庫。因為課程內容貼近生活、趣味性強,學生參與度會自然提高,電腦輔助設計的效果也就更好。
(五)利用Scratch降低程序啟動難度
在兒童程序設計中,采用程序設計的方式可以將程序內容直觀生動地表現出來。為使學生能夠對程序的含義有一個準確的認識,并且能夠對程序進行科學的運用,教師需要對兒童和初學者進行有效的輔助,降低編程難度,鍛煉學生的計算能力。Scratch雖然不能很好地解決一些復雜的編程問題,但是其編程語言更加簡潔有趣,教師可以使用Scratch這個編程工具,通過圖形化編程、積木模塊以及大量的軟件裝置,將教科書上的各類編程內容展現出來,降低學生的學習難度。
四、結語
在當前的信息時代,人工智能已經成為信息技術發展的一個重要方面。就學生而言,要想學好人工智能,就必須有社會、學校、教師、學生四個方面的共同努力。通過對當前存在的問題進行改進,使之符合教學目標,促進學生對人工智能的認識與運用能力的提升,促進我國教育事業的健康發展。為推動青少年智慧教育的普及,需要各個社團主動地將青少年的科學、技術和教育資源相結合,增強政府和社會的支持力度,形成聯動協同、優勢互補、合作共贏的局面。