這是「帥爸兒童程式教育學苑」的第3篇文章,by帥爸P小編
裡頭概略的提到了程式設計對「運算思維」、「創造力」、「邏輯思維」這三個能力的養成有很大幫助,今天呢!帥爸小編想跟大家聊聊對於讓孩子早點接觸程式設計的一些觀點。
沒有家長不在乎孩子未來發展的,如果您對於孩子到底要不要學習程式設計這件事有困惑的話,不如這麼思考好了。讓孩子學習程式設計,是為了:
讓他日後多一個職業選擇的機會
不管他最後是否會成為程式設計師,至少他,
理解程式設計的世界是如何運行的,工作內容大致上有什麼?有什麼工作類型是跟程式語言相關的?我若決定成為程式設計師,我的強項是哪一塊?我有興趣的範疇在哪?
保持對科技的高度敏感度,對孩子未來的職涯發展絕對會有助益的。
訓練孩子用程式設計思維來思考事情
前面的文章有提過,「用電腦的思考方式來思考事情」是一種解決問題的能力。因為電腦為了有效率的運作,必須開發很多演算法來優化以及處理事件。這類的演算法大多跳脫舊有框架的思維,更是以尋常人不會優先想到的方式來處理。
舉個例子,在程式世界裡 為了解決「排隊」這件事,設計了一些處理原則,即所謂的「堆疊」。
有3個動物依序進入一個房間,青蛙→白兔 →小貓,待要出門的時候,請問誰該先去呢?
「程式」的答案是,小貓→白兔→青蛙。
這種先進後出的處理方式 叫做FILO(First In Last Out)。
為什麼是倒著處理呢?對先進去的青蛙來說太不公平了吧!
其實在程式的世界,「公平」通常不是最先被考量的關鍵,當然,這在人類的排隊世界中,是很不被容許的。
但是FILO解決了空間不被浪費的問題,東西被放進某空間(堆疊)後,在處理完之前並不需要移動位置,其次,處理完的自動移除,新進來的直接佔有騰出來的位置,就不會有空間被浪費的問題。瞧~~是不是很跳脫我們既有的思維呢?
這樣的程式思維應用其實也很生活化喔!像是捷運列車開到總站後,就是這樣設計的,比較後進來的列車會先開走;演唱會的入場順序,通常會安排搖滾區靠近舞台的人先進去,演唱會結束後,最靠近舞台的人通常會比較晚出來。當然,你要插隊快跑到別人前面跑掉,那樣的行為是不在討論範圍內的。
培養孩子的團隊合作力、跨界思考力
程式的世界是複雜且多工運行的,別想著好像就一個人關在房間裡默默地跟電腦拼鬥而已,更多時候更講求的是團隊合作!一個龐大的程式靠一己之力完成實在太不科學了!
另外,跨界、跨領域甚至跨國合作也是必然之勢,孩子有幸成為程式設計師,與世界各國很多的程式設計師一起燒腦的感覺,在成果出來的那一刻,絕對令人振奮!相信我,他的日子鐵定過的遠比你想像中的更富挑戰和有成就感。
培養開闊視角與遠大格局
我們時常驚訝一些創舉的發明根本超乎一般人的思維,但你是否有想過,這些發明者都是站在巨人的肩膀上在思考事情的!所以他能剖析使用者的視角,賦予產品更偉大的格局與應用。
舉個例子,世界上第一支手機是1973年在Motorola實驗室被發明出來的, 第一支手機 Dyda TAC 8000X ,大約有兩個磚頭那麼大,充電10小時卻只能通話35分鐘,而且還只有單純的撥打和接聽功能,其他啥事也做不了。相比我們現在的智慧型手機,連錢包功能都被整併進去,出門可不帶錢包,但不帶手機可是讓很多人焦慮萬分啊!
而手機的演進絕對也跟程式的演進脫不了關係,除了強大的硬體改良作為後盾外,軟體程式的飛快進展也是促使產品更優化的重要推手。想想,如果當年沒有這些優秀或者該說想得比較遠、比較多、想得比較奇怪的程式設計師投身其中,我們還能如此「智慧」的生活著嗎?
想了解更多「兒童程式設計」、「手機成癮」、「網路成癮」、「運算思維」議題,請加入我們的粉絲團,帥爸有很多觀點想與你分享。