自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Daniel Lemire:大學(xué)里做不出好軟件

開(kāi)發(fā) 項(xiàng)目管理
軟件正在吞噬這個(gè)世界。盡管年景不好,F(xiàn)acebook還是創(chuàng)造了650億美元的市值。這樣一個(gè)僅僅2000名開(kāi)發(fā)人員的小公司竟能抵得上一個(gè)汽車制造公司。

軟件正在吞噬這個(gè)世界。盡管年景不好,F(xiàn)acebook還是創(chuàng)造了650億美元的市值。這樣一個(gè)僅僅2000名開(kāi)發(fā)人員的小公司竟能抵得上一個(gè)汽車制造公司。

[[81700]] 

  • 大部分的教授很少編程。因?yàn)樗麄儾痪幊蹋麄兙筒粫?huì)特別強(qiáng)調(diào)像代碼審查或單元測(cè)試這樣的好的開(kāi)發(fā)方法。不相信我說(shuō)的嗎?那去GitHub上找找你最喜歡的教授的作品吧。他能充滿自豪的在上面展示他開(kāi)發(fā)的代碼嗎?
  • 因?yàn)楹苌儆薪淌诰幊蹋阅阋矐?yīng)該不會(huì)吃驚于學(xué)校里很少有軟件發(fā)布途徑來(lái)供那些想展示自己軟件作品的人使用。于是,這也就意味著,即使你開(kāi)發(fā)出高質(zhì)量的軟件,也難有同行來(lái)欣賞。
  • 大多數(shù)學(xué)院里的軟件都是由學(xué)生寫(xiě)成,他們?nèi)狈?jīng)驗(yàn),缺乏寫(xiě)出好軟件的動(dòng)機(jī)。你也許會(huì)認(rèn)為,在學(xué)校里花了4年時(shí)間,上了無(wú)數(shù)堂課,做了無(wú)數(shù)的編程作業(yè)后,大多數(shù)計(jì)算機(jī)科學(xué)/工程的學(xué)生都應(yīng)該成為不錯(cuò)的程序員了。但這不是我看到的。部分的原因是學(xué)校教育是一個(gè)模仿老師的過(guò)程。我相信,如果大學(xué)四年你是跟著李納斯·托沃茲(Linus Torvalds)上課,你一定會(huì)成為一個(gè)相當(dāng)不錯(cuò)的操作系統(tǒng)內(nèi)核編程高手。然而,Linus 不會(huì)、也不喜歡當(dāng)一名大學(xué)教授。大學(xué)教授不花很多時(shí)間去編程,他的學(xué)生也會(huì)這樣。

所以,學(xué)校里的軟件很爛,是因?yàn)閷W(xué)校里的人不善于編程。但這其中還有一些其它因素:

  • 編程可以像煎雞蛋或建一個(gè)鳥(niǎo)窩那么簡(jiǎn)單。你也知道,寫(xiě)一個(gè)PHP腳本把數(shù)據(jù)庫(kù)的內(nèi)容展示到瀏覽器里并不是那么的難。但要開(kāi)發(fā)出一個(gè)不凡的軟件則需要程序員表現(xiàn)的像一個(gè)創(chuàng)造者。然而,你們的編程課程也許會(huì)教如何去煎一個(gè)雞蛋(比喻),但他們不會(huì)教你如何設(shè)計(jì)一個(gè)給四***飯店用的菜肴。創(chuàng)造出新奇軟件的門(mén)檻也許比你想象的要低。根據(jù)一個(gè)論文里的算法,我們可以有十幾種實(shí)現(xiàn)方法,但大部分都是低效率的。即使是已經(jīng)有原型偽代碼提供了,你仍然需要大量的工作經(jīng)驗(yàn)在身,才能給出正確的設(shè)計(jì)。判斷如何能正確的實(shí)現(xiàn)一個(gè)算法也許比你們想象的要難的多。理論家很少有認(rèn)可這點(diǎn)的,他們通常相信最困難的部分是用縝密的理論知識(shí)設(shè)計(jì)出算法。他們不知道在兩個(gè)相同計(jì)算復(fù)雜度的算法會(huì)在軟件實(shí)現(xiàn)上產(chǎn)生成幾個(gè)數(shù)量級(jí)的速度差別。事實(shí)上,假設(shè)有人告訴你了作家 Stephen King的下一部小說(shuō)的大綱,你就能寫(xiě)出一部能和King寫(xiě)的一樣好的小說(shuō)嗎?很值得懷疑。軟件開(kāi)發(fā)也類似。執(zhí)行是一切。再好的策劃也無(wú)效。
  • 大多數(shù)的學(xué)院里的研究者是為自己寫(xiě)軟件。就像烹飪一樣:“只給自己寫(xiě)軟件的人不知道給別人寫(xiě)軟件時(shí)有多少工作要做。”相比起在飯店里當(dāng)一個(gè)廚師,給自己做飯要簡(jiǎn)單容易的多。這兩者之間的難度差異如果說(shuō)有兩個(gè)數(shù)量級(jí)太大,那至少也不在一個(gè)數(shù)量級(jí)上。學(xué)術(shù)界里很少有人會(huì)認(rèn)可這些。他們基本上寫(xiě)的都是寫(xiě)完即丟的代碼:寫(xiě)好程序,使用它,然后忘了它。諸如維護(hù)和文檔之類的問(wèn)題,雖然在一些課堂上也討論過(guò),但在學(xué)院里,鮮有用于實(shí)踐的。

那么,將來(lái)會(huì)如何?我對(duì)學(xué)校里的軟件保持悲觀態(tài)度。也許會(huì)有例外,但看總體情況,我不抱太大希望。因此,當(dāng)我審查一個(gè)學(xué)生的研究報(bào)告或論文時(shí),我會(huì)先假定實(shí)現(xiàn)這個(gè)理論的軟件做的不怎么樣。我希望招聘那些新程序員的人也要這樣想。鑒于我這樣的悲觀論調(diào),實(shí)際是有一些事情可以做的:如果你想在 Facebook找到一份軟件工程師的工作,你就應(yīng)該多花一些時(shí)間在GitHub上,少花一些時(shí)間在課堂上。如果你幸運(yùn)的話,你可以說(shuō)服學(xué)校就你的開(kāi)源作品給你一些學(xué)分。

英文原文:On the quality of academic software

原文鏈接:http://www.aqee.net/on-the-quality-of-academic-software/

責(zé)任編輯:林師授 來(lái)源: 外刊IT評(píng)論
相關(guān)推薦

2019-11-19 14:28:38

語(yǔ)音識(shí)別人工智能技術(shù)

2024-04-22 08:10:00

AI意識(shí)

2017-02-20 17:03:42

感觸架構(gòu)

2024-05-09 09:11:19

營(yíng)銷抽獎(jiǎng)系統(tǒng)

2010-01-06 21:12:42

IT運(yùn)維管理Mocha BSM摩卡軟件

2012-09-12 11:11:11

AMD微軟Windows Ser

2023-09-20 16:33:09

大數(shù)據(jù)數(shù)據(jù)指標(biāo)

2020-04-16 15:19:22

大數(shù)據(jù)學(xué)校課程

2009-03-16 12:11:54

求職大學(xué)技能

2017-01-05 18:52:43

2012-05-30 15:58:39

Java編程代碼

2012-09-03 14:34:39

Java編程代碼

2010-03-10 12:01:15

運(yùn)維管理Mocha ITOM摩卡軟件

2015-09-17 14:21:49

2013-09-10 13:30:51

移動(dòng)應(yīng)用移動(dòng)開(kāi)發(fā)應(yīng)用缺點(diǎn)

2016-03-07 09:43:05

Linux發(fā)行版Elementary

2014-06-16 11:18:20

程序員

2012-03-01 09:29:45

軟件開(kāi)發(fā)

2016-03-10 23:06:28

華為/華為合作伙伴大會(huì)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)