1980年代末,威爾遜還是愛丁堡大學(xué)計(jì)算機(jī)科學(xué)系的博士生,同時在校園里作一名程序員。當(dāng)他將物理學(xué)家編寫的代碼輸進(jìn)超級計(jì)算機(jī)時,十分驚訝地發(fā)現(xiàn),其中有一些的效率十分低下?!拔铱粗麄兓ㄉ蠋讉€小時甚至幾天,才弄出那些我?guī)追昼娋湍芨愣ǖ臇|西。這些科學(xué)家比我聰明得多,他們只是不知道早有人弄通了那些讓他們撓頭的代碼?!?br />
威爾遜設(shè)計(jì)了程序創(chuàng)建、調(diào)試和版本控制的課程?!凹兇馐亲孕l(wèi)訓(xùn)練?!彼?992年畢業(yè),六年之后,得到了在洛斯阿拉莫斯國家實(shí)驗(yàn)室給科學(xué)家和工程師們上課的機(jī)會——教他們?nèi)绾斡行实鼐幋a。威爾遜在企業(yè)和學(xué)術(shù)界都待過,現(xiàn)在是Mozilla基金會的全職雇員,他訓(xùn)練出的志愿者正在全世界的校園訓(xùn)練營里教人們編程。
對那些想要踏入數(shù)據(jù)催生的新科學(xué)領(lǐng)域的年輕科研人員,威爾遜的建議是:選擇數(shù)據(jù)密集型項(xiàng)目、保持專注、并且學(xué)習(xí)控制數(shù)據(jù)容量。“學(xué)習(xí)從數(shù)據(jù)中找到有用信息,發(fā)現(xiàn)其中的矛盾與無常、并且知道如何處置,就如同在物理實(shí)驗(yàn)室學(xué)習(xí)儀器操作一樣,是一種動手能力?!?/strong>人在實(shí)踐中更容易長進(jìn),而研究生學(xué)習(xí)可以提供實(shí)踐的天時與地利,威爾遜補(bǔ)充說道。最大的困難并不是編程上的,“而是判斷應(yīng)該使用哪種分析手段,分析出的結(jié)果又是否有用?!遍_源社區(qū),在他看來,是一個找尋編程導(dǎo)師的好地方。
上課去!
為了方便更多傳統(tǒng)科研人員學(xué)習(xí)數(shù)據(jù)科學(xué),一些院校已推出了提供證書的數(shù)據(jù)科學(xué)和數(shù)據(jù)采掘課程。網(wǎng)絡(luò)上也出現(xiàn)了入門級課程,譬如Coursera上的這一發(fā)。
在計(jì)算機(jī)系找一些選修課程,可以幫助研究人員獲得自己需要的技術(shù),但許多科學(xué)家發(fā)現(xiàn),這并不是最有效率的學(xué)習(xí)方法。一個對他們的學(xué)科領(lǐng)域有足夠了解的編程教員,授課的效果要遠(yuǎn)好得多。
朱莉·梅西爾(Julie Messier)是亞利桑那大學(xué)研四的學(xué)生,她在加拿大一個北溫帶森林保護(hù)區(qū)測量了25個物種、超過400棵樹木的35個不同指標(biāo)。為了完成論文,她必須用到編程和統(tǒng)計(jì)學(xué)的技術(shù),對這片巨大的數(shù)據(jù)網(wǎng)絡(luò)進(jìn)行分析。她在猶他大學(xué)找到了一門一學(xué)期的課程——“生物學(xué)家的編程課”。這正是她需要的,但猶他州路途遙遠(yuǎn),課也沒有在網(wǎng)絡(luò)上公開。授課教師伊?!烟兀‥than White)建議梅西爾到自己志愿工作的“軟件工坊”去。意識到系里好多人和她有相同的需求,梅西爾在圖森的自家校園里組織了一個為期兩天的編程突擊營。
只需貼補(bǔ)路費(fèi)和食宿,"軟件工坊"的志愿者就能免費(fèi)上門開辦速成班。系統(tǒng)化的校園課程可以向?qū)W生們提供需要的技能,但其中總有些東西他們一輩子也用不到。"速成式"培訓(xùn)卻只教有用的東西,不過往往效率不高,學(xué)生常產(chǎn)生挫敗感。梅西爾覺得,速成班可以作為“需求向”學(xué)習(xí)過程的一個不錯的補(bǔ)充。
自學(xué)成才
速成教育也許并不完美,但對杰文·韋斯特(Jevin West)卻很管用。韋斯特是瑞典于默奧大學(xué)一位有生物博士學(xué)位的物理學(xué)博士后,他與人共同創(chuàng)立了“特征因子”(Eigenfactor Project)項(xiàng)目, 按一定規(guī)則為科學(xué)知識排序,并繪制一張分布圖。他們將學(xué)術(shù)文獻(xiàn)看作一張大網(wǎng),論文構(gòu)成節(jié)點(diǎn),引用是其間的聯(lián)系。"我們可以用這張網(wǎng)衡量學(xué)術(shù)影響力,最重要的,是它能在不斷膨脹的文獻(xiàn)海洋中發(fā)揮導(dǎo)航作用。"韋斯特說道。最開始對計(jì)算機(jī)感興趣的時候,他沒有上過一堂正經(jīng)的編程課,不過,他周圍有很多這方面的專業(yè)人士。"我很幸運(yùn),不明白的都能問他們。"
學(xué)得越早,效果越好。華盛頓大學(xué)化學(xué)工程系的研究生安德魯?懷特(Andrew White)很小就開始玩父母淘汰的蘋果電腦,高中時一度想當(dāng)個黑客。如今的他,正在用計(jì)算機(jī)模型尋找新的生物材料。他創(chuàng)建了一些分析數(shù)據(jù)的網(wǎng)頁應(yīng)用供大家使用,并且設(shè)計(jì)了一個線上軟件,在同事之間共享數(shù)據(jù)。
懷特說,像他一樣自學(xué)成才的程序員,一般都在網(wǎng)上閱讀教程和書籍,看彼此寫的代碼,在公共論壇上討論問題。研究生時,他又在計(jì)算機(jī)系上了一些選修課,確保自己已全面掌握了編程的基礎(chǔ)。
更多詳細(xì)信息,請您微信關(guān)注“計(jì)算網(wǎng)”公眾號: