于世華 王榮芝
[摘 要]ACM / ICPC是世界上公認的程序設計類權威比賽。針對呼倫貝爾學院在參加ACM / ICPC過程中所遇到的各種問題,結合以ACM為導向促進程序設計類課程教學改革,闡述了對技能型人才培養的思考。
[關鍵詞]ACM 人才培養 可持續發展 技能型人才
[中圖分類號] G642.0;C961 [文獻標識碼] A [文章編號] 2095-3437(2015)02-0113-03
0引言
教育部副部長魯昕在2014年3月22日中國發展高層論壇上表示,我國即將出臺方案,實現兩類人才、兩種模式高考。第一種高考模式是技術技能人才的高考。技術技能型人才有三種:第一類是工程師,第二類是高級技工,第三類是高素質勞動者。這也為2000年后升本的二本院校應用型計算機人才的培養確定了基調,指明了方向。以ACM / ICPC為導向促進程序設計類課程教學改革是學生程序設計能力培養的有效手段和方法。本文通過我院參與ACM / ICPC的歷程,進一步剖析如何通過ACM / ICPC載體發展我院學生創新思維、實踐能力,進而實現合格的技能型人才的培養。
ACM / ICPC(Association for Computing Machiner ——International Collegiate Programming Contest)國際大學生程序設計競賽(簡稱ACM競賽),是由計算機界具有悠久歷史的權威性組織機構ACM學會主辦的,是世界上公認的規模最大、水平最高、參與人數最多的大學生程序設計類競賽[1],是全球大學生計算機程序設計能力競賽活動中最具影響力的一項賽事,被譽為計算機界的“奧林匹克”。其快樂、服務、友誼的理念也為世界的和平與發展傳遞著福音。
ACM競賽是世界各國大學計算機教育成果的直接體現,是信息企業與世界頂尖計算機人才對話的絕佳機會。每屆ACM競賽都是精英薈萃,人才輩出,因而備受全球著名信息企業的高度關注。從2009年5月我院第一次參加內蒙古自治區級ACM競賽開始,ACM競賽逐漸融入我們的教學過程中。隨著對ACM競賽了解的深入,越來越多的學生參與到這項活動中。一方面為相關課程的教學改革帶來了新思路,為學生實踐能力的培養帶來了新方法;另一方面,我院ACM發展剛剛起步,迫切希望能向其他院校借鑒經驗和發展思路,快速地提高程序設計類課程教學水平和競賽成績。
(一)我院ACM的發展歷程
我院從2009年5月準備派隊伍參加自治區ACM比賽開始,發展至今主要經歷了以下幾個階段:
(1)起步階段
通過研究ACM競賽形式,首先搭建了實時在線測試系統,舉辦了全校的首屆程序設計大賽。這次競賽在學生中產生了很大反響,不僅篩選出了參加培訓的隊員,也讓我們看到了學生對程序設計的喜愛。興趣是動力的源泉。對選拔出的獲勝選手,通過針對性的培訓和指導、多次的選拔,最終確定了正式參賽隊員。我校初次組隊參賽就在自治區級比賽中取得了較好的名次,獲得了很好的聲望,這無論是對學生還是對指導教師都是莫大的鼓舞。
(2)發展階段
有了第一屆的參賽經驗,參與的教師和學生都有了更加明確的目標和努力方向。指導教師制訂了培訓計劃,有定期的訓練安排。學生也會利用空閑時間在實時在線測試系統上提交更多的題目,甚至突破我院的測試平臺,到更廣闊的空間鍛煉自己,到其他測試平臺上一試身手,這種學習模式打破了時間、空間的限制,豐富了教學資源[2],使學生真正感受到了學習的樂趣。
(3)普及階段
隨著更多的選手參與到ACM競賽中,其帶動和影響是不言而喻的。指導教師還開設講座,并通過網絡等多種渠道進行宣傳,讓更多的學生了解和參與到這項比賽中。站在ACM賽場上的學生是少數,讓更多的學生參與到ACM競賽的學習模式中才是大勢所趨。[2]豐富的題庫、靈活的學習模式、客觀的測評方式,把教學與競賽相結合,促進程序設計類課程的教學改革。
雖然ACM競賽在我院逐步發展起來,但仍然存在如下一些問題:
(1)我院ACM競賽的發展屬于白手起家,發展的基礎薄弱,沒有優秀的指導教師,也沒有高中就參與各種信息學比賽的優秀選手。這種現狀使得短期內取得驕人的成績是不容易的。
(2)如果依靠某一屆的學生創造出好成績而片面地認為學生整體能力的提高是不準確的。學生的個人天分和努力是取得好成績的重要因素,這些優秀學生取得的成績是無法延續的。而如何不斷挖掘有潛力的學生參與到ACM競賽活動中是擺在我們指導教師面前的長期任務。
(3)就業的壓力和生源的現狀使得我院的學生更傾向于考證,這些專業認證考試對他們來說更實惠。一些優秀的學生因為考研、臨近畢業、找工作等因素無法安心進行訓練,競賽期不長。實際上程序設計能力的培養是一個不斷積累的過程,隨著年級的升高,所學知識的豐富,學生的能力和實力也會逐漸增強。因此,競賽水平和學生能力可持續發展也是需要思考的問題。
(二)以ACM為導向的技能型人才培養的思考
ACM競賽模式的教學過程不僅僅培養學生的實踐動手能力,更要求學生共享知識與互勉互助,在良性競爭的引導下相互合作、共擔責任、共同學習,有利于學生的心理健康發展、社會責任感以及自尊心的建立;開闊了學生的視野,對學生實踐能力、創新意識、團隊合作精神起到了積極的促進作用,讓學生不斷增強自信、鍛煉心理素質,從而提高個人的綜合能力。[2]這與技能型人才培養理念是不謀而合的。所以,筆者對以ACM為導向的技能型人才發展進行了如下思考:
(1)學校的支持
ACM競賽是一個持續的過程,如果這項活動能逐步得到學校的支持,成為常規教學管理的一部分,從競賽的經費到活動的開展都納入正常的教學中,這樣才能有計劃、有步驟地把這項工作做得更好。參與ACM競賽活動的指導教師可以以ACM競賽模式為切入點進行教學改革、實踐改革;也可以從ACM競賽輻射的各個方向進行研究、選題、立項,以此作為科研課題,尋求基金的資助。學校也可以把ACM競賽、數學建模競賽等各種高端比賽納入學院發展的特色中,為素質高、能力強、創新型人才培養提供廣闊的舞臺。
(2)長遠的發展規劃
在比賽中獲得好的成績不是一蹴而就的事情,它需要持續不斷的堅持,所以制訂中長期發展計劃,設定各個階段目標,不斷進步是獲得好成績的保證。在實施過程中,可以不定期地舉辦各種比賽,檢驗計劃實施的成效。
ACM競賽不僅僅是一個程序設計大賽,更是學校綜合能力的體現。ACM競賽不僅僅是少數優秀學生參與的一項賽事,更是大多數學生參與的比賽活動,是學校素質教育的亮點。實際上,讓學生參與、適應ACM競賽,這是對學生生理、心理、能力等各方面的綜合考驗,讓他們快樂比賽、快樂學習、快樂生活。在這個過程中,可以將競賽隊員獲獎證書、獲獎感言等各種資料做成展板、墻報、網上專欄等,不斷鼓舞和激勵其他學生進步。
(3)教競結合,互相進步
以ACM競賽模式為導向的程序設計類課程改革是大勢所趨。程序設計類課程包括C語言程序設計、C++程序設計、數據結構、算法設計與分析等,這些課程覆蓋了計算機專業和公共計算機教育的大學本科一、二年級的學習內容,這兩年也是學生打好基礎的關鍵時期。ACM競賽中極具趣味與挑戰的題目對大學生有很強的吸引力,對提高學生的學習興趣有著明顯的作用。
上海交通大學的俞勇教授(ACM國際大學生程序設計競賽世界總決賽冠軍教練)提道:“作為一名好老師,應該是在課堂上留給學生更多問題去思考,而不是讓學生循規蹈矩地學習書本上的知識。”所以要在競賽中取得好成績,教師就要在教學過程中對有條件的學生進行針對性的引導和幫助。
我們參與ACM競賽更多的是通過競賽促進教學,通過競賽拓展學生的視野和空間[3],這是競賽給我們帶來的最大收獲。即使我們的學生以前沒有接觸過程序設計,但是有很好的數學功底、很強的邏輯思維能力和對程序設計的興趣愛好,有潛力的學生也會從競賽中脫穎而出。如果我們在教學中向高起點看齊,培養出優秀的選手是水到渠成的事情。
(4)平臺構建,能力培養
基于ACM競賽對比賽題目進行評判的方式,借鑒許多高校搭建在線測試平臺的經驗。我們搭建了呼倫貝爾學院的“實時在線評測系統”。在這個平臺上,我們建立了與教材同步的配套題庫,對程序設計類課程從課堂教學、考試形式等全面實施改革,可以滿足教學的需要。這種“平臺+資源”的教學體系及豐富的教學資源是任何一門課程的教學所無法完成的。這種統一平臺、不同層次、按需選擇的教學方式可以滿足不同水平的學生的需要。
此外,在這個平臺上我們舉行了全院的程序設計大賽、各種選拔賽。我院自己的實時在線評測系統由于有前幾屆學生精彩表演所留下的足跡(完成數量和成績的記錄),更能激勵著后面的學生繼續前進。這個平臺的搭建培養了學生的實踐動手能力,學生共享與互勉,在良性競爭中相互合作、共擔責任、共同學習。所有這些都有利于學生的心理健康發展、社會責任感以及自尊心的建立;開闊了學生的視野,對學生實踐能力、創新意識、團隊合作精神的培養起到了積極的作用。
(5)輔助工作必不可少
專業指導教師團隊的建立是必要的。由于競賽題目所涉及的知識范圍不斷擴大,新題目不斷出現,對綜合運用知識的能力要求也越來越高,因此,教師根據各自的專長分工合作,共同完成培訓任務無疑是一種高效的辦法。指導教師需要對題目(尤其是新題)進行系統的分類與研究,以便給學生更好的指導。
獲獎隊員和參賽選手無疑是最好的例證。他們的經驗和體會最有效,也最有說服力,與他們面對面地溝通和交流是對其他學生最直接的激勵。高年級學生帶低年級學生容易形成團隊,形成梯隊,為可持續發展奠定基礎。
在指導教師和學生的交流溝通中,及時、通暢的交流方式是非常重要的。因為指導教師和學生都有各自的工作和學習環境,即使有輔導時間也是有限的。在課堂上一般問題很少,學生往往都是利用課余時間來做題訓練的,這時可能遇到的問題會增多,所以及時有效的溝通是必不可少的。可以利用先進的交流工具,比如建立ACM的QQ群,這樣無論何時何地,指導教師和學生都可以在群里交流、探討,不僅解決了問題,還加深了彼此間的了解。像電子郵件、BBS等交流工具也為及時有效的溝通提供了方便。
總之,在計算機教育領域,越來越多的高校認識到ACM競賽的價值。對于我們這樣剛剛參與這項賽事的院校來說,讓這項賽事在我校得到更好的發展,我認為在學院方針政策的指導下,在中長期計劃的貫徹實施下,在實時在線測試平臺的保證下,在積極向上校風所營造出良好的學習氛圍下,通過競教結合,以ACM / ICPC競賽為導向,促進程序設計類教學的改革,達到合格技能型人才的培養無疑是一條可行之路。
[ 注 釋 ]
[1] 郭嵩山,王磊,張子臻.ACM / ICPC與創新型IT人才的培養[J].實驗室研究與探索,2007(12):188-192.
[2] 于世華.以ACM為導向促進程序設計教學改革[J].呼倫貝爾學院學報,2011(4):113-116.
[3] 孫大烈,車萬翔.ACM競賽與學生綜合實踐能力培養[J].計算機教育,2009(19):12-14.
[4] 陳湘驥,劉才興,徐東風.ACM / ICPC與可持續發展的lT人才培養方式實踐[J].計算機教育,2009(20):6-9.
[5] 李欣,周浩,劉強,滿君豐.ACM競賽與可持續發展的IT人才培養[J].計算機教育,2013(3):1-3.
[責任編輯:覃侶冰]