天天看點

圖靈訪談 | 一位半路出家的程式員的“天命”之選

口述:金從軍

訪談:英子

畢業于北大實體系,愛好遊戲與程式設計,做過大學教師、IT 創業者、管道總監、程式員、開發項目經理…….從 8 年前開始普及 App Inventor 程式設計,到如今可謂“越陷越深”。

就在今天(美國時間 2022 年 9 月 9 日), App Inventor 基金會官方網站釋出了基金會舉辦的首屆“優秀教師獎”項目獲獎人——來自 7 個國家的 10 位教師獲此殊榮,而金老師是其中之一。恰逢今天是教師節,這個獎來得很“巧”。

下面,一起來看看金從軍老師不一樣的程式設計人生吧。

1.程式設計之路始于一股“沖動”

1987 年從北大實體系畢業後回到東北老家,當了 7 年的大學老師。接下來的 7 年開始創業,經營一家計算機公司。2000 年轉讓了公司,來北京打工,由于不适應國企複雜的人際關系,被迫在 2002 年 10 月離職,成為自由人。

由于大學學的是實體專業,畢業後也沒有從事技術工作,是以失業後的我,前途一片渺茫,不知道自己還能做些什麼。那一年我 37 歲,人生仿佛走到了盡頭。國企打工給我的饋贈是一系列針對銷售人員的職業教育訓練,包括客戶管理、項目管理、時間管理等。閑下來的我有一種沖動,就是做一個軟體,把這些管理思想轉變為銷售人員日常使用的工具,通過使用工具,使銷售人員在不知不覺中建立起規範的工作方法和正确的職業觀念。

想到了就做,我開始用 Dreamweaver 搭建我的 Web 應用。此時同樣在 IT 企業打工的 roadlabs (我的丈夫張路)正在湖南出差(做聯通的項目),每逢遇到困難便打電話向他求助,大約花了 3 個月的時間,我的第一個 Web 應用——www.topsales.com.cn 上線了。由于忘記了給域名續費,結果域名被搶注了,這個應用也就不了了之了。

在這個“程式員的養成”過程中,很多老師給了我指點和鼓勵,roadlabs 就充當了老師的角色。他從我玩遊戲的勁頭中,看出我有程式員的天賦,不過我自己始終不敢相信,直到現在,我還認為自己隻是一個半路出家的愛好者。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:金從軍老師

2. 五十而立,想做程式設計普及

子曰:三十而立。很多人一輩子可能都沒有找到熱愛的事情,是以,在我看來,任何時候而立都是很幸運的。即使我的而立之年是孔夫子的知天命之年,我依然覺得對于個人而言,這是一件了不起的事情。而且,我隐隐感覺到,這會是我的“天命”之選。

我自己在學習程式設計的過程中獲得了極大的快樂,同時也意識到程式設計思維和技能對于個人發展的重要性——我相信,在不遠的将來,程式設計能力會和語數外一樣,成為基本的學科能力,而教師對于初學者來說是非常關鍵的角色,是以,我跟先生張路有意從事程式設計教學工作。

其實,早在 2011 年,我和先生就萌生了面向大衆普及程式設計技術的想法,隻是那時候,生活的壓力還比較大。2013 年,女兒去美國讀博,無論從時間上還是金錢上,我們的生活都變得相對“輕松”起來。于是,我們覺得是時候着手準備這項工作了。想到可能在相對較長的時間裡,沒有收入支撐生活,我和先生決定把房子賣掉,搬去相對偏僻些的地方,這樣多出的一筆錢解決了我們的後顧之憂。萬事俱備,隻欠東風——從哪裡開始是個問題。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:金從軍和先生張路

3.你好,App Inventor

我和先生分析,萬事開頭難,對于程式設計最難的部分是領進門的工作。尤其是對于日後不以程式設計為生的普通人,領進門顯得尤有難度。教普通人程式設計,從哪裡開始呢?

大家知道有一款工具叫 Scratch,它是麻省理工學院設計開發的一款程式設計工具,适合青少年學習。這款工具很棒,但是它有兩個問題:一,主要針對青少年,而成年程式設計愛好者是個很大的群體;二,隻能在社群分享作品,而沒辦法釋出(哪怕隻是跟家人朋友分享),更别說在應用商店上線了。

當時,先生張路在公司參與了一個移動開發項目。他發現産品經理在跟程式員交流的時候存在不少障礙,尤其是在産品功能的實作上,兩者交流往往出現“雞同鴨講”的局面。當時,他們找到一款工具叫 App Inventor,建議産品經理可以了解一下——從 App Inventor 入手,不需要複雜的學習,就可以快速搭建産品原型,釋出到手機上檢視效果。張路将這個産品介紹給我,當時我們眼前一亮,這正是我們尋找已久的工具。

App Inventor 原來是谷歌實驗室的一個子計劃,後由麻省理工學院接管(MIT)。它是一款免費的線上開發工具。無需任何程式設計基礎,在可視化程式設計界面下,通過子產品拼接的方式( 類似搭積木的形式),就能制作 Android 手機程式,并可以在手機上運作。這種基于“塊”語言的可視化程式設計方法,顯著地降低了程式設計門檻,就連孩子們也能夠運用自如。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:App Inventor 官方網站截圖

4.一起程式設計

有了“程式設計方向”(教普通大衆學習程式設計),也有了“程式設計語言”( App Inventor),還缺一塊“程式設計空間”(發表内容,跟讀者一起交流)。2014 年春,我和先生創辦了 17coding.net 網站,專門在上面開展與 App Inventor 相關的教學及技術咨詢工作。同時,我在新浪部落格等社交媒體上以“老巫婆”的名義開始發表與 App Inventor 有關的技術文章。

這些年,我們跟讀者交流的陣地可謂遍布線下線上。線下從北上廣到邊城小鎮,從教師教育訓練到業界布展。線上從自建網站到視訊号,微網誌、微信公衆号、微信讀者群、視訊号、B 站,能觸達内容的管道,我們都嘗試了。這個過程,我們甚至有一種“見證了網際網路不同内容管道演變”的深切感受。

跟我們交流的讀者涉及各個年齡段,從幾歲的國小生到耄耋之年的老人;涉及各個行業,從傳統企業到網際網路公司。他們不僅請教問題,還經常把作品分享給我們,這個過程真的是其樂無窮。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:金老師部分線下教育訓練與參展

5. 教就是最大的學

我經常跟大家分享,教大家建立應用、分享内容、編寫圖書這類活動最大的受益人往往是分享人自己。這些年來,這種感受有增無減。希望讀到這篇文章的朋友都能通過創作自己的作品(一個應用、一篇文章都算)來深刻體會這一點。

在此,很開心跟大家分享一下我在教大家學習 App Inventor 過程中的一系列“副産品”。自 2014 年起至今,與張路先生共同創辦了 www.17coding.net 網站,先後翻譯并撰寫了多部與 App Inventor 相關的技術書籍《寫給大家看的安卓應用開發書:App Inventor 2 快速入門與實戰》《App Inventor 開發集錦》《Inventor 開發探底——俄羅斯方塊開發筆記》《App Inventor 趣味應用開發執行個體》等。在新浪部落格等社交媒體上以“老巫婆”的名義發表了近百篇與 App Inventor 有關的技術文章。自 2016 年 9 月起,利用微信公衆号“老巫婆的程式世界”向訂閱使用者發送了 200 多集視訊課程。自 2018 年起,為《愛上機器人》雜志撰寫專欄文章——“數學程式設計實驗室”,讨論用程式解決數學問題的思路與方法。

自 2015 年起,先後為浙江、陝西、北京等地的中國小資訊技術教師提供 App Inventor 程式設計教學教育訓練,受訓人數達數百人。

2021 年 7 月參加 MIT App Inventor 應用馬拉松賽,作品獲得成人組大衆評選第一名。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:金老師部分圖書作品

6. 偶爾迷茫,時常堅定

雖然 App Inventor 官方社群每月有 100 多萬活躍開發者,但相對而言,它在中國還不算熱,使用者仍然在圈定在一個比較小的範圍内:部分國中生、高中生、大學生,程式設計愛好者、教師、教育訓練師。這些年,我們全身心投入 App Inventor 的普及推廣工作,但是,App Inventor 并沒有是以大熱,估計未來大熱的可能性也不大。

我經常會遇到這樣的問題:程式設計語言的選擇有多種,而選擇相對“冷門的 App Inventor”是否有過迷茫?

要說從來沒有一絲迷茫,那也不現實。畢竟,從事推廣普及工作,還是希望看到更多的使用者。有一段時間,我确實有點焦慮,畢竟我們的特長是程式設計技能的教育訓練,而不太擅長營運推廣。不過,一想到 App Inventor 具有巨大的“生産力”,我内心就會變得很堅定。我這裡說的“生産力”的意思是,普通人一旦學習了 App Inventor 就會釋放難以想象的能量。我每天都跟學習者接觸,我看到了 App Inventor 對他們的生活、個人發展都産生了非常積極的影響,一想到這裡,我釋然了。再加上,這兩年 MIT 的推廣力度逐年加大,而且我們在國内的工作受到了 App Inventor 之父 Hal Abelson 等主創人員的支援。我相信,未來,App Inventor 會在更大範圍内,成為更多人的“生産力”。

就在今天,2022 年 9 月 9 日, App Inventor 基金會官方網站釋出了基金會的首屆優秀教師獎項目獲獎人——來自 7 個國家的 10 位教師獲得了 App Inventor 基金會的優秀教師獎,而我是其中的 1/10。

圖靈訪談 | 一位半路出家的程式員的“天命”之選

圖:App Inventor 基金會頒發的“優秀教師獎”獲獎書