陸平
在校園里,活躍著一個特殊的學(xué)生社團(tuán),他們熱衷編程,他們古怪機(jī)靈,他們思維敏捷,他們熱衷公益,他們陽光活躍。外面流傳很多關(guān)于這個社團(tuán)的傳說,一批批被清華、北大提前錄取的“NOI大牛們”,國家集訓(xùn)隊員的傳奇故事,麻省理工的那位“前輩”的名人軼事,一年一年傲人的信息學(xué)奧賽的獎牌榜……
這個18歲的“Programmer家族”程序設(shè)計社團(tuán),已經(jīng)從嬰孩成長為一支有自己文化、自己精神的朝氣蓬勃的“青年”。
別人看到的是名校,是獎杯。而我們看到的是隊員們?yōu)橐粋€個難解的問題魂牽夢縈的掙扎和拼搏過程,被漂亮算法迷倒的神態(tài),被計算思維點燃的夢想和在講臺上發(fā)表觀點時展現(xiàn)的獨(dú)特的生命姿態(tài)。
在這里,隨時可以聽到他們思維的樹拔節(jié)的聲音;
在這里,隨時都可以看到一群少年沉浸在探究世界的幸福表情;
在這里,一群少年,他們的意志,他們的才情,他們的理想,被他們自己兌現(xiàn)。
……
這是一個什么樣的社團(tuán)?
意志,鑄就堅實的基礎(chǔ)
幸福是在學(xué)習(xí)和成長中的感覺(哈佛新概念)。是的,幸福,不僅僅是寫在臉上的笑容,更有在遇到難題時的艱難堅持和突破后的欣喜。
“我在不知不覺中喜歡編程,不知不覺沉浸在編程的世界。編程似乎已經(jīng)是生活的一部分,它不是煩瑣的代碼,不是頭疼的問題,而是一個思維的跳躍,是一個有趣的游戲,是一個奇妙的思想。別人眼中的編程和我們眼中的編程,是截然不同的,我們愿意了解它,接受它。在編程的世界中,我們能找到另一個自己?!保?012級“Programmer家族”成員 李桐沙)
這樣的幸福不是幻想出來的,是在堅實的基礎(chǔ)訓(xùn)練中一點點生長出來的。我們深知培養(yǎng)一名優(yōu)秀的學(xué)生,更重要的是培養(yǎng)他們的興趣,讓他們看到漂亮的代碼,更要看到問題,看到解決問題的變幻無窮的神奇算法。
而培養(yǎng)興趣,必須建立在堅實的基本知識的學(xué)習(xí)和扎實的訓(xùn)練之上。每周3~5小時的基本知識的學(xué)習(xí)往往需要堅持一年的時間。每年9~11月為迎接國際IOI,我們還要進(jìn)行“魔鬼式”集訓(xùn)。因為沒有細(xì)致嚴(yán)謹(jǐn)?shù)某绦蛘Z言的學(xué)習(xí),就無法用計算機(jī)語言指揮計算機(jī)工作;沒有基本的程序結(jié)構(gòu)的學(xué)習(xí),便無法感受由基本的結(jié)構(gòu)搭建的漂亮的程序大廈;沒有系統(tǒng)的基本算法的學(xué)習(xí),便沒有能力去欣賞多彩多姿的回溯算法、動態(tài)規(guī)劃思想。一年扎實的基本功訓(xùn)練,鑄就了他們堅實的基礎(chǔ)。
才情,源自代碼背后的意義
真正的才情,不僅是代碼的編寫,更是千變?nèi)f化的漂亮代碼背后的神奇算法、規(guī)則,還有透過程序設(shè)計過程看到的生命的姿態(tài)。
“我們用自己的雙手敲打出一串串的代碼,讓思維碰撞,讓靈感飛翔,在程序中發(fā)現(xiàn)無窮的寶藏;我們是為了獎項而來嗎?不,完成每一題時的快樂,才是我們永恒的追求。我們探索遞歸背后的波瀾壯闊;我們尋找每一題背后的至終奧秘;我們發(fā)現(xiàn)那些變化萬千之后的不變真理。這里是我們成長的地方,是我們享受樂趣、發(fā)掘智慧的地方。我們付出努力,在過程中體味那些神奇。我覺得,每一種思想背后都蘊(yùn)藏著很多待人發(fā)掘的東西。只有自己去細(xì)細(xì)探索,在成功的那一刻才會感受到那些美麗。就像我剛接觸遞歸時,幾乎一頭霧水;但現(xiàn)在,我大部分都領(lǐng)悟到了。明白那些奇妙的代碼是怎樣運(yùn)行的真是非??鞓贰N蚁?,我永遠(yuǎn)不會忘記那一刻。”(2012級“Programmer家族”成員 曾卓爾)
開始,很多學(xué)生認(rèn)為計算機(jī)很神秘,程序設(shè)計很難。我們讓學(xué)生走進(jìn)程序的內(nèi)里,讓他們明白,計算機(jī)只是“被操縱”的機(jī)器。計算機(jī)執(zhí)行的每一段程序代碼,其背后體現(xiàn)的是我們一直難以看見的思維方式。當(dāng)我們通過遞歸函數(shù)、遞歸過程傳遞參數(shù)時,學(xué)生體味到其背后參數(shù)有序流動的“萬馬奔騰”和“波濤洶涌”。當(dāng)他們看到簡潔代碼背后的數(shù)據(jù)“暗流涌動”和“波瀾壯闊”時,學(xué)生的學(xué)習(xí)便進(jìn)入了一個新的境界。
“我覺得,編程正是一種新思想的體現(xiàn),我從它的身上學(xué)到了函數(shù)、過程、分類、規(guī)劃的思想。它告訴我,一道題目會有很多種方法解決。但是,我們要追求一種完美、一種最佳的方法,這種完美主義的精神,正是我們需要的?!保?012級“Programmer家族”成員 余沛羲)
學(xué)完“過程與函數(shù)”,學(xué)生體會到面對一個問題,無論復(fù)雜、簡單,都要有規(guī)劃的意識,要有全局觀念,學(xué)會從全局著手考慮問題,分析問題,構(gòu)建數(shù)學(xué)模型,再自頂向下,將大問題分解為若干小問題,再由小問題逐步求精的模塊化思想幫助我們更有條理、更清晰地寫出程序,從而解決問題。這種規(guī)劃的意識以及由大化小、從全局到局部、從局部到全局的思維方式,將會在學(xué)生的不斷實踐、體驗、感悟中一點點積淀,內(nèi)化為孩子們一生受用的思維習(xí)慣、思維品質(zhì),成為他們一生“穿不破”的才情。
理想,在茶館式學(xué)習(xí)中傳遞
在完成程序設(shè)計語言的學(xué)習(xí)和基本算法的學(xué)習(xí)后,教師慢慢將舞臺讓給了每位學(xué)生。每位同學(xué)都是導(dǎo)師,他們?yōu)橐坏李},為一個算法,為一個特殊的數(shù)據(jù)結(jié)構(gòu)的設(shè)計,為一個見解慷慨激昂。一次次頭腦風(fēng)暴,讓孩子學(xué)會了更好地表達(dá),一次次貢獻(xiàn)著自己的思想。而他們也在這個過程學(xué)會了分享,感受這個團(tuán)隊的溫暖。
“在這個集體中,我們不只是聽老師講課,而且是在老師的幫助下站上講臺,與其他同學(xué)分享自己獨(dú)特的思想……在不斷深入學(xué)習(xí)的過程中,我的想法改變了。我開始喜歡編程,開始享受解出一道題的興奮。每一個程序都像是一個藝術(shù)品,都滲透著同學(xué)們的智慧和與眾不同的思想?!保?012級“Programmer家族”成員 張北宜)
在“Programmer家族”,每位學(xué)生都有講課任務(wù),有義務(wù)主持一個知識點、一個問題的學(xué)習(xí),他們要貢獻(xiàn)自己的算法,貢獻(xiàn)自己的思想。為此,他們必須付出更多的課外時間。開始的時候,這樣的學(xué)術(shù)精神領(lǐng)袖往往是一兩位學(xué)生?,F(xiàn)在,每一次高級班的課,每位學(xué)生都要發(fā)表自己的觀點,也樂于發(fā)表自己的觀點。在這種茶館式學(xué)習(xí)過程中,每一位學(xué)生都可以隨時貢獻(xiàn)自己的想法。這樣的頭腦風(fēng)暴,不僅傳遞了每位學(xué)生的想法,也會激發(fā)每個人的思維。學(xué)生們在一次次的碰撞中,感受到分享的快樂,感受自己給予的快樂。團(tuán)隊里互相欣賞,彼此的理想也在傳遞、碰撞。
思維,在多元評價中獲得解放
學(xué)生學(xué)習(xí)程序設(shè)計不為分?jǐn)?shù),不為獎金,不為名利,只為找尋人間的學(xué)問、人生的真諦和自然的奧秘。當(dāng)國家規(guī)定五大學(xué)科競賽不再成為大學(xué)保送的條件時,我們的社團(tuán)活動絲毫未受到影響。我們用多樣化的評價告訴團(tuán)隊里的每一位學(xué)生,他們每個人都是勤奮的、獨(dú)特的。
為了幫助學(xué)生更好地走進(jìn)課程的深處,我們設(shè)計了與眾不同的多樣化評價方法。
定期的實戰(zhàn)訓(xùn)練少不了,更多的是個性化的創(chuàng)生性視角的評價。學(xué)生可以根據(jù)自己的情況設(shè)計一款小軟件,并將算法分享給大家;也可以選定一個問題進(jìn)行深入研究,以解題報告的形式在同學(xué)們中展示;還可以選擇與生活相關(guān)的課題進(jìn)行研究。如“生活中的最短路徑”、“紅綠燈的設(shè)計”、“國慶旅行線路”。
每年我們會有一次將課堂搬到自助餐廳的活動。在自助食品的選擇中,深化對窮舉、貪心、動態(tài)規(guī)劃等算法的學(xué)習(xí),然后撰寫學(xué)習(xí)心得。“你為自己的人生設(shè)計過程序嗎”等這類形式也少不了。多種形式的評價,促進(jìn)了學(xué)生思維水平的提高,創(chuàng)新意識和學(xué)習(xí)能力悄然發(fā)生了變化,他們主動去尋找有意義的事情和研究方法,也在思考人生的規(guī)劃。
生命,在“Programmer家族”中獲得成長
來“Programmer家族”的學(xué)生,不僅僅是為了編程,也是為了分享程序設(shè)計的快樂,尋找學(xué)習(xí)伙伴,更是為了更好地完成生命的成長。
“我現(xiàn)在對編程非常喜愛,它是我在每周的學(xué)習(xí)轟炸中保存的一片綠蔭。我們的團(tuán)隊意識也越來越強(qiáng)烈,和編程班同學(xué)在一起很親切,很舒適。編程帶給我的不僅是榮譽(yù)、光芒,還有朋友,和很多說不出的感受。每一次茅塞頓開,都是令人愉悅的時刻。在編程班,我最大的感受就是找到一種成長的感覺?!保?012級“Programmer家族”成員 孫茜茹)
通過對程序設(shè)計語言的學(xué)習(xí),算法的學(xué)習(xí),數(shù)據(jù)結(jié)構(gòu)的學(xué)習(xí),一個漂亮的程序,于他們更像一個藝術(shù)品。
隨著學(xué)習(xí)的推進(jìn),編程的意義逐漸超越了代碼本身。他們慢慢清楚,面對一個問題,無論復(fù)雜、簡單,都要有規(guī)劃的意識,要有全局的觀念。通過構(gòu)建數(shù)學(xué)模型,學(xué)生們從內(nèi)心涌出對人類智慧的欣賞和向往。
隨著思考的深入,編程的意義也逐漸超越了算法、數(shù)據(jù)結(jié)構(gòu)本身。學(xué)生在信息科技的背后,思考數(shù)字計算機(jī)誕生的技術(shù)思想,思考人類發(fā)展的歷程,思考人生的價值。
“我一接觸編程,就喜歡編程。我喜歡編程,所以學(xué)習(xí)編程。學(xué)習(xí)了就更喜歡編程,死循環(huán)……”(2012級“Programmer家族”成員 楊乾瀾)
“在編程班里,我們學(xué)習(xí)的不僅是深奧的知識,也是人生的哲理。在日常學(xué)習(xí)與程序訓(xùn)練之間尋求權(quán)衡,學(xué)會統(tǒng)籌;在每一次的挫折中學(xué)會堅持,學(xué)會反思;在一系列攔路虎中學(xué)會思考,學(xué)會請教……在無窮的精神收獲面前,外在的榮譽(yù)只如同浮云,不值一提?!保?012級“Programmer家族”成員 朱冀堯)
社團(tuán)學(xué)生各自表達(dá)著對程序設(shè)計的感受。他們的表情很豐富、很完整,訴說著“Programmer家族”社團(tuán)的教育生態(tài),折射著“Programmer家族”社團(tuán)和學(xué)校長久堅持的教育教學(xué)的精神品格、價值理想和兒童立場。
18年,寒冬酷暑,學(xué)生在“Programmer家族”社團(tuán)的學(xué)習(xí)生活五彩紛呈。一批批優(yōu)秀學(xué)子從這里走向人生的精彩殿堂。孩子們的精彩表現(xiàn)也成就并激發(fā)了教師。他們共同成就了18歲的“Programmer家族”社團(tuán)。他們的意志、才情、理想在這里綻放……我們也更明白:一個真正能夠站在巔峰的人,一定是源自于內(nèi)心的熱愛。真正到達(dá)頂峰的他們,收獲的不僅是程序設(shè)計的基礎(chǔ)知識,更有規(guī)劃的能力、創(chuàng)新的精神、團(tuán)隊協(xié)作的意識、熱愛生活的人格。這是我們追求的科學(xué)教育的價值所在,也是我們兒童立場理念下的計算機(jī)科學(xué)教育的樸素詮釋。
(作者單位:江蘇淮陰中學(xué))