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

每個(gè)開發(fā)人員都應(yīng)該閱讀的九篇非凡文獻(xiàn)

譯文 精選
開發(fā)
軟件開發(fā)的歷史充滿了讓世界驚訝的創(chuàng)新時(shí)刻。下述文獻(xiàn)定義了將近一個(gè)世紀(jì)的創(chuàng)新之舉,這些創(chuàng)新至今仍在影響著編程。

譯者 | 晶顏

審校 | 重樓

在軟件開發(fā)歷史中,有一些時(shí)刻擴(kuò)展了我們認(rèn)為的可能性,從而改變了我們作為開發(fā)人員所做的一切。某些歷史文獻(xiàn)記錄了計(jì)算技術(shù)中最重要的范式轉(zhuǎn)變,它們是無價(jià)的。這篇文章回顧了過去一個(gè)世

紀(jì)的軟件開發(fā)歷史,總結(jié)了開發(fā)人員都應(yīng)該閱讀的9篇非凡文獻(xiàn)

在軟件開發(fā)史上具有決定意義的9篇文獻(xiàn)

論可計(jì)算數(shù)及其在判定性問題上的應(yīng)用

作者:艾倫·圖靈(Alan Turing

時(shí)間:1936

這是一個(gè)范例文件的原型。圖靈的作品具有這樣的特點(diǎn)在紙上探索不確定的地形,并找到地標(biāo)來繪制地圖。這張?zhí)厥獾牡貓D已經(jīng)為我們服務(wù)了近一百年。

這篇論文提出了一種新的抽象計(jì)算模型,后來被稱之為“圖靈機(jī)”。圖靈機(jī)是一種理論上的機(jī)器,它的構(gòu)造非常簡單,由一條無限長的紙帶和一個(gè)能夠在紙帶上左右移動的可讀寫頭組成。紙帶被劃分成了一個(gè)個(gè)格子,每個(gè)格子上可以寫入一個(gè)符號(0或者1)。可讀寫頭能夠讀取當(dāng)前所在格子上的符號,并根據(jù)一些規(guī)則改變自己的移動方式和紙帶上的符號。這些規(guī)則被稱為“轉(zhuǎn)移函數(shù)”,它們描述了圖靈機(jī)在讀取某個(gè)符號時(shí)應(yīng)該采取什么行動,例如改變當(dāng)前格子上的符號、向左或向右移動可讀寫頭、或者停機(jī)等。

圖靈機(jī)的能力基本上就只有這些。但當(dāng)艾倫仔細(xì)思考圖靈機(jī)的能力和限制時(shí),發(fā)現(xiàn)圖靈機(jī)能夠解決所有可計(jì)算問題,而無法解決不可計(jì)算問題。在論文中,艾倫給出了計(jì)算的定義,并對計(jì)算所能實(shí)現(xiàn)的目標(biāo)給出了絕對限制,這一發(fā)現(xiàn)也成為了現(xiàn)代計(jì)算機(jī)科學(xué)的奠基之作。

《論可計(jì)算數(shù)》(On Computable Numbers在很多層面上都是必讀的,包括作為哥德爾(G?del)不完備定理的延續(xù)。此外,圖靈的“判定性問題”(Entscheidungsproblem是一個(gè)有趣的窗口,它將數(shù)學(xué)、邏輯和計(jì)算機(jī)科學(xué)結(jié)合在一起。它要求在給定的一組公理中,對于給定的輸入,有一種推導(dǎo)是/否真理的通用方法。

傳送門:https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf

關(guān)于EDVAC的報(bào)告初稿

作者:約翰··諾依曼(John von Neumann)

時(shí)間:1945

《關(guān)于EDVAC的報(bào)告初稿是第一份系統(tǒng)描述計(jì)算機(jī)制造方法的公開出版物,具有劃時(shí)代的革新意義。

·諾伊曼提出的EDVAC電子離散變量自動計(jì)算機(jī)架構(gòu)是一種突破,計(jì)算機(jī)的內(nèi)存可以同時(shí)存儲數(shù)據(jù)和指令。換句話說,內(nèi)存可以保存可執(zhí)行的信息。除了核心理念之外,作者還定義了當(dāng)時(shí)機(jī)器的可能性。從圖靈的哲學(xué)數(shù)學(xué)討論到馮·諾伊曼對信息的實(shí)際討論,這是一個(gè)巨大的飛躍

這篇論文有各種有趣的想法,包括關(guān)于計(jì)算中的錯(cuò)誤處理的想法:“設(shè)備可以自動識別最常見的故障,通過外部可見的標(biāo)志指示它們的存在和位置,然后停止。馮·諾伊曼的論文站在了現(xiàn)代計(jì)算機(jī)的大門上,以一種半真實(shí)、半推測的方式描述了我們今天使用的設(shè)備的性質(zhì)。這就是計(jì)算機(jī)的一般架構(gòu)仍然被稱為馮·諾依曼架構(gòu)的原因所在。

不過,盡管關(guān)于EDVAC的報(bào)告初稿描述的是工程學(xué)和數(shù)學(xué)領(lǐng)域的研究成果,但它的遣詞造句通俗而又淺顯,幾乎人人都能看懂。

傳送門:https://web.mit.edu/STS.035/www/PDFs/edvac.pdf

IBM數(shù)學(xué)公式翻譯系統(tǒng)的規(guī)范,F(xiàn)ORTRAN

作者:約翰·巴克斯等人(John Backuss et al)

時(shí)間:1954

雖然FORTRAN規(guī)范沒有公開發(fā)布,但它對語言設(shè)計(jì)和軟件產(chǎn)生了很大的影響。

FORTRAN是編程語言的古老祖先,是當(dāng)時(shí)高級語言的一項(xiàng)突破。它是第一個(gè)真正通用的語言。

試想一下,當(dāng)圖靈在1936年構(gòu)想出計(jì)算機(jī)僅僅28年之后,便誕生了FORTRAN語言,其重要性不言而喻。

FORTRAN規(guī)范給出了一個(gè)很好的起點(diǎn),并幫助創(chuàng)建了一個(gè)語言設(shè)計(jì)者可以依賴的模型。它抓住了一種蓬勃發(fā)展的契機(jī),即當(dāng)時(shí)的硬件和軟件剛剛成為可能。

傳送門:https://archive.computerhistory.org/resources/text/Fortran/102679231.05.01.acc.pdf

GoTo語句有害論

作者:艾茲格·迪科斯徹Edsger Dijkstra

時(shí)間:1968

Edsger Dijkstra這篇發(fā)表于1968年的論文除了給我們提供有關(guān)“有害論”的梗之外,不僅指出了循環(huán)和條件控制流相對于難以遵循的go-to語句的優(yōu)越性,而且激發(fā)了一種思考和討論代碼質(zhì)量的新方式。

Dijkstra的論文給了我們一個(gè)完整的環(huán)境,一種對編程的態(tài)度,以及一種用一頁半的篇幅來看待這個(gè)學(xué)科的方式。

在這里,我們不僅要考慮軟件在編寫和運(yùn)行時(shí)的結(jié)構(gòu),還要考慮工作的特征和我們作為其中的人的角色。這讓我們對軟件工程文化有了一個(gè)粗略的了解,它是一種充滿激情的努力;這種文化支撐著我們今天在軟件領(lǐng)域所做的一切。

Dijkstra的簡短論述還幫助引領(lǐng)了高階語言的產(chǎn)生,使我們離今天使用的編程語言更近了一步。

傳送門:https://homepages.cwi.nl/~storm/teaching/reader/Dijkstra68.pdf

密碼學(xué)的新方向

作者:惠特菲爾德·迪菲(Whitfield Diffie)和馬丁·E·赫爾曼(Martin E. Hellman

時(shí)間:1976年

這篇論文在三個(gè)方面表現(xiàn)突出

  • 這個(gè)提議乍一看似乎不可能。
  • 該解決方案優(yōu)雅且易于理解。
  • 它改變了歷史的進(jìn)程。

如果你已經(jīng)知道非對稱加密的密鑰交換是如何工作的,那么你就知道為什么這篇論文會在我們的名單上。公鑰/非對稱加密的發(fā)現(xiàn)和發(fā)明為互聯(lián)網(wǎng)上所有安全通信如HTTPS奠定了基礎(chǔ),并為32年后的比特幣白皮書奠定了基礎(chǔ)。

《密碼學(xué)新方向》一問世,就在公開通信和國家安全局NSA等政府間諜機(jī)構(gòu)之間掀起了一場史詩般的戰(zhàn)斗。作者似乎也明白他們的提議的激進(jìn)本質(zhì)——畢竟,論文的開場白是:“我們今天站在密碼學(xué)革命的邊緣。

傳送門:https://www-ee.stanford.edu/~hellman/publications/24.pdf

GNU宣言

作者:理查德·斯托曼Richard Stallman

時(shí)間:1985

進(jìn)入八十年代后,黑客社群在軟件工業(yè)商業(yè)化的強(qiáng)大壓力下日漸土崩瓦解,甚至連AI實(shí)驗(yàn)室的許多黑客也組成了Symbolic公司,試圖以專利軟件來取代實(shí)驗(yàn)室中黑客文化的產(chǎn)物——免費(fèi)可自由流通的軟件。

斯托曼對此感到氣憤與無奈。在對Symbolic進(jìn)行了一段時(shí)間的抗?fàn)幒?,他?985年發(fā)表了著名的GNU宣言,正式宣布要開始進(jìn)行一項(xiàng)宏偉的計(jì)劃:創(chuàng)造一套完全自由免費(fèi),兼容于Unix的操作系統(tǒng)GNU(GNU's Not Unix!)。之后他又建立了自由軟件基金會來協(xié)助該計(jì)劃。

從某種意義上說,GNU宣言是開源軟件的宣言。這也是對當(dāng)今許多開發(fā)人員所信奉的熱愛IT”編程精神的大膽聲明。

該宣言可讀性強(qiáng),有趣,反對當(dāng)時(shí)主導(dǎo)行業(yè)的閉源、付費(fèi)許可模式。令人難以置信的是,歷史證明,這是勇敢的少數(shù)派取得勝利的一個(gè)例子。如今,開源軟件無處不在,為熱愛它而編程,同時(shí)也以此為生,已經(jīng)成為一種主流方式。

時(shí)至今日,《GNU宣言仍然不過時(shí),讀起來甚至就像2023年為GitHub項(xiàng)目寫的一樣。它無疑是這份名單上最有趣的論文。

傳送門:https://www.gnu.org/gnu/manifesto.en.html

架構(gòu)風(fēng)格和基于網(wǎng)絡(luò)的軟件架構(gòu)設(shè)計(jì)

作者:羅伊·菲爾?。?/span>Roy Fielding

時(shí)間:2000

雖然這篇論文是在2000年發(fā)表的,但它總結(jié)了90年代分布式編程環(huán)境的經(jīng)驗(yàn)教訓(xùn),然后提出了前進(jìn)的方向。由此,我認(rèn)為應(yīng)該在二十年的軟件開發(fā)歷史中占有一席之地。

該論文收集了開發(fā)人員從早期互聯(lián)網(wǎng)中學(xué)到的一切,并為其最緊迫的問題提供了解決方案。REST很重要,因?yàn)樗闇?zhǔn)了現(xiàn)代軟件復(fù)雜性的核心。這就是為什么20年來它一直是架構(gòu)決策的試金石。

此外,作者關(guān)于復(fù)雜性和Web架構(gòu)中的應(yīng)用設(shè)計(jì)的討論很適合今天的開發(fā)人員閱讀。

傳送門:https://ics.uci.edu/~fielding/pubs/dissertation/top.htm

比特幣點(diǎn)對點(diǎn)電子現(xiàn)金系統(tǒng)

作者:中本聰

時(shí)間:2008

這篇論文匯集了數(shù)字貨幣的所有現(xiàn)有技術(shù),并總結(jié)了其主要問題的解決方案。特別是,比特幣論文解決了雙重支出問題。

它很好地用簡單的語言概述了雙重支出的問題,然后提供了一個(gè)概念性的回應(yīng),然后深入研究了解決方案的一些實(shí)現(xiàn)細(xì)節(jié)。

除了像比特幣這樣的簡單貨幣概念之外,該論文還提出了一種可以利用密碼學(xué)來生產(chǎn)像以太坊這樣的分布式虛擬機(jī)的引擎。

這篇比特幣論文是一個(gè)很好的例子,說明了如何為看似混亂的復(fù)雜性提供一個(gè)簡單、干凈的解決方案。

傳送門:https://bitcoin.org/bitcoin.pdf

TensorFlow用于大規(guī)模機(jī)器學(xué)習(xí)的系統(tǒng)

作者:馬丁·阿巴迪Martin Abadi等人

時(shí)間:2015

如果你正在尋找現(xiàn)代大語言模型LLM人工智能系統(tǒng)道路上的一個(gè)重要里程碑,那么一定非TensorFlow白皮書莫屬。它與廣義機(jī)器學(xué)習(xí)框架的討論相關(guān),并詳細(xì)介紹了TensorFlow——一個(gè)旗艦AI平臺。

雖然這篇論文深入地研究了機(jī)器學(xué)習(xí)池的復(fù)雜一端,但它也出了簡潔的提煉結(jié)果,例如,給定一個(gè)單詞序列,語言模型預(yù)測最有可能的下一個(gè)單詞。這是對現(xiàn)代聊天AI原理和現(xiàn)實(shí)的簡明總結(jié)。

這篇論文由Martín Abadi和許多貢獻(xiàn)者共同撰寫,內(nèi)容十分廣泛,重點(diǎn)聚焦TensorFlow的細(xì)節(jié),特別是在制作更通用的人工智能平臺方面。在這個(gè)過程中,它提供了一個(gè)優(yōu)秀的、高層次的機(jī)器學(xué)習(xí)技術(shù)之旅。對于那些好奇ML和尋找簡單語言進(jìn)入更深層次理解領(lǐng)域的人來說,這是一個(gè)不容錯(cuò)過的讀物

傳送門:https://www.usenix.org/system/files/conference/osdi16/osdi16-abadi.pdf

原文標(biāo)題:9 extraordinary documents every developer should read,作者:Matthew Tyson



責(zé)任編輯:華軒 來源: 51CTO
點(diǎn)贊
收藏

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