做一個天才黑客是什麼體驗?

天才編程少女

2018年9月支付寶公司舉行了一場編程挑戰賽,而賽場上的一位選手很快引起了大家的關注。這就是年僅11歲剛上小學6年紀的萬海妍。

這次挑戰賽,參賽選手需要在規定時間內完成7晉1冠軍爭奪賽。萬海妍在緊張激烈的比賽中,利用API等算法創作了一款任務管理小程序,最終,萬海妍因僅落後1秒鐘而獲得鼓勵獎。獲得第一名的選手表示,“對於這麼小的選手,這個比賽還是有難度的,畢竟我們都是學習相關專業也在工作裡反覆用過。不過越來越多小朋友來對編程感興趣是好事情。”

做一個天才黑客是什麼體驗?

11歲的萬海妍/圖片來源於網絡

你和天才沒有多大差距

編程並不神秘,所以你和這樣的天才並沒有什麼差距,接下來讓我告訴你怎麼開始編程的練習。

你的征程是星辰大海

有多少學程序的人是從“Hello World”開始自己的旅程的?估計但凡接觸過程序語言的人都會露出會心的微笑。之前不是還有笑話說,某個程序員學習毛筆字,飲墨揮毫一蹴而就“Hello World”躍然紙上。是的,我確實幹過這個事兒,寫出來其實還挺好看的。

做一個天才黑客是什麼體驗?

那這句話的由來呢?1973年Brian Kernighan在他編寫的B語言教程中首次提到了這個“Hello World”,但老爺子對為什麼說這句話已經記憶模糊了,他依稀記得可能是源於某張漫畫上的小雞說了這句“Hello World”。當時的他和他的同事 Dennis Ritchie(C語言之父)不會想到他們創造的C語言在今天依然影響著全世界。

做一個天才黑客是什麼體驗?

什麼是程序

沒有接觸過程序的家長可能對這個會有種天然的恐懼。就接受新概念來說,小朋友的接受能力可比大人強了不止一籌。所謂程序,不過就是人們告訴機器按自己的意圖去做自己想做的事,現在火熱的人工智能,機器學習等等,概念再高深,究其根源都是計算機會按規則執行一段邏輯。

接下來怎麼做

我強調的是一種新的視角來學習瞭解世界,所以出於簡單性的考慮,我選擇了scratch這個軟件,發展到今年,scratch重新做了自身的架構,現在基於HTML5技術,已經可以實現瀏覽器編程(連客戶端都不用下哦)。網上有一些關於scratch的介紹,簡單說來就是一幫MIT的天才給孩子的禮物。

做一個天才黑客是什麼體驗?

國內有些編程機構做了二次封裝,導致scratch看起來已經完全本地化和遊戲化了。不是說這樣做不好,而是在我看來有兩點特色放棄了。

一是放棄了模塊的英文版。無法否認編程語言發展中不可避免的是計算機英語的引入,作為入門語言,完全中文化不是不行,但是如果孩子在能力足夠的情況下,可以提前接觸一些計算機類英文,對於之後的進階學習是好處的。

二是更加的遊戲化。上週末網上瀏覽的時候發現國內某品牌“編程X”封裝後的編輯器提供的模板都是一些遊戲角色。讓人一看過去,似乎編程只能做遊戲。這又有點走向極端的感覺。

基於上面兩點,我們還是老老實實的用原生的scratch在線編輯就足夠了。百度的話,認準下面的鏈接,不然排前幾的都是競價,你懂的。

實際操作步驟

下面就是scratch的一個新建編輯頁面,隨著之後操作的,你們會對這個界面越來越熟悉。那麼今天要做的就是通過scratch來創建自己的hello world程序。

做一個天才黑客是什麼體驗?

首先我們要做的是把我們要用的字符一個個的放到我們的場景舞臺上,點擊下圖小貓的頭像,就可以進入系統自帶的素材庫,素材庫顧名思義,裡面有大量的原始圖片,後面有機會我們會講怎麼通過這些素材生成一些我們想要的新素材。

做一個天才黑客是什麼體驗?

點擊完畢後,我們會進入到的頁面就是素材庫了,它長這個樣子

做一個天才黑客是什麼體驗?

素材庫裡面有完整的字母表,我們要做的就是雙擊這個圖片,比如“Glow-O”,然後系統就會自動把我們選中的圖片添加到場景中,等我們把所需要的字符串添加完畢後,再來看下場景吧。

做一個天才黑客是什麼體驗?

問題來了,添加完畢後發現這些字符都散亂的分佈在了舞臺上,互相遮擋到誰也認不出來了。scratch可以直接在舞臺上點擊就可以選中sprite,摁著不放就可以隨意拖動了,接下來我們要做的就是把它拖到我們覺得好看的位置,我拖完是這樣的。

做一個天才黑客是什麼體驗?

第一個程序的誕生。沒錯,現在你已經擁有了你的第一個程序,一個不需要寫任何代碼就可以運行的程序。興趣來了的朋友,可以試試往裡面添加其他sprite了。

想想當年我跑QBAISC時,看到第一行在DOS顯示窗下的“Hello World”,心裡面已經在像小李子一樣高呼“I’m king of the world!”.

你就是你自己程序的King,加油吧,明天見!


分享到:


相關文章: