年那個(gè)學(xué)不會(huì)算法的自己)
前言 · 寫給當(dāng)年那個(gè)學(xué)不會(huì)算法的自己初看到這本書的題目也許有人會(huì)覺得風(fēng)馬牛不相及如何把算法寫成童話真的會(huì)有這樣一個(gè)人能把文學(xué)的優(yōu)美趣味、哲學(xué)的思辨加上計(jì)算機(jī)的嚴(yán)謹(jǐn)匯在同一本書里嗎這個(gè)問題不是今天才有的。一百六十多年前牛津大學(xué)的一位數(shù)學(xué)講師寫了一本小女孩掉進(jìn)兔子洞的童話在里面藏了一整章的邏輯玩笑。很多人讀了一百五十年都不知道作者劉易斯·卡羅爾的本職是數(shù)學(xué)教師查爾斯·道奇森。一九九一年挪威的一位中學(xué)教師把整部哲學(xué)史裝進(jìn)一個(gè)十四歲女孩的信箱《蘇菲的世界》后來被譯成了六十多種語(yǔ)言。再往前一八八四年一本叫《平面國(guó)》的小書靠一個(gè)正方形的眼睛講透了維度這件事。這樣的書每次出現(xiàn)評(píng)論界都要猶豫一下它算什么文體讀者從不猶豫它們成了經(jīng)典。所以這個(gè)問題的答案是能而且有人反復(fù)做到過。真正的問題不是能不能是誰來做為什么做。大家好我是秋天的懷念。一個(gè)坐在輪椅上的程序員。這個(gè)開場(chǎng)我寫了很久。不是想怎么寫是想哪些不寫——寫了幾年代碼、教了幾年編程課我習(xí)慣把自己藏在作品后面。但這一本書不行。這本書的序必須從輪椅講起因?yàn)樗v的所有故事都是從輪椅出發(fā)的。我家里有電腦。可我對(duì)它一直無感我不玩游戲也不知道它能干什么。真正讓我和計(jì)算機(jī)相遇的是家人的一句話希望我用計(jì)算機(jī)當(dāng)自己的腿當(dāng)自己的手。后來我才知道這話有個(gè)學(xué)術(shù)版本叫媒介是人的延伸。但對(duì)當(dāng)時(shí)的我來說它就是一個(gè)特別具體的愿望。于是我讀了教育技術(shù)學(xué)一門研究學(xué)習(xí)資源開發(fā)利用的專業(yè)。文科我沒得選——寫字太慢卷子永遠(yuǎn)寫不完我被迫學(xué)了理科教師資格證也因?yàn)樯眢w的原因沒有考成那是 2016 年院長(zhǎng)親口告訴我的。上講臺(tái)的門關(guān)上了可教書育人這件事是專業(yè)塞給我的使命關(guān)不上。后來我做了一個(gè)刷題的應(yīng)用把講臺(tái)搬進(jìn)了軟件里再后來 AI 出現(xiàn)我少年時(shí)那些模糊的愿望突然全被具象化了。然后說算法。我不是科班和算法的緣分從 2014 年高中的一堂數(shù)學(xué)課開始一道找假幣的題老師給了二分法我背了十二年直到一位教授用同一道題告訴我答案可以是五次。我學(xué)得跌跌絆絆學(xué)完整本 C 語(yǔ)言不知道鏈表是什么考研把算法題全部寫滿分?jǐn)?shù)下來評(píng)分標(biāo)準(zhǔn)躺在閱卷人的抽屜里沒有人告訴我錯(cuò)在哪。這些年陪算法一起受傷的日子我記了很多。有人說傷疤要藏好我的看法相反——事故就是故事。把它們講出來算法就沒有那么枯燥。說到這里該交代我的職業(yè)了。我在電力行業(yè)做過信息化需求響應(yīng)、計(jì)價(jià)規(guī)則、出力控制、數(shù)據(jù)清洗電表的那些事我都干過。也正是在這個(gè)行業(yè)里我成了被 AI 傷過的工程師——我手寫的代碼被 AI 寫完了我熬出來的實(shí)現(xiàn)被推翻了。那一刻很難受??呻y受過后我想明白了一件事當(dāng)年手寫的代碼之所以錯(cuò)不是因?yàn)槲冶渴且驗(yàn)閺膩頉]有人告訴我動(dòng)手之前還有一種笨辦法能把每一種可能都先看清楚?,F(xiàn)在我有了這支筆——AI 就是這支筆。所以我要做的不是逃離是用 AI 這支筆完成一場(chǎng)徹底的反叛和自我救贖把當(dāng)年每一個(gè)錯(cuò)誤的寫法重新寫對(duì)一遍。這本書就是那場(chǎng)救贖的產(chǎn)物。它是一本講算法的童話也是一個(gè)程序員的自傳。書的主人公叫林朝歌——山魯佐德講了一千零一夜的故事保住性命他要把自己的這一生也講上一千零一夜。每一夜一個(gè)故事童話的皮算法的核中間夾著他自己。故事可以虛構(gòu)算法必須為真每一夜末尾都附一張真?zhèn)魏藢?duì)表哪句是安徒生說的哪句是我編的寫得清清楚楚。代碼全部用 Java完整、可運(yùn)行每一行都真的跑過。這本書寫給兩種人。一種是學(xué)算法的學(xué)生如果當(dāng)年有這么一本書引我入門我相信自己一定會(huì)比現(xiàn)在更喜歡算法——這話是我寫這本書的全部理由。另一種是當(dāng)年的我自己那個(gè)坐在教室里背二分法、背著背就困惑的少年。寫書的時(shí)候我常常覺得我是在隔著十幾年的時(shí)間和他對(duì)坐把當(dāng)年沒有人告訴我的一切講給他聽。這也是我自己的文學(xué)夢(mèng)用 AI 這支筆寫給過去的自己。借著這支筆我完成了一次精神的復(fù)活也重新和這個(gè)世界建立了連接。山魯佐德講故事是為了活過那一夜。林朝歌講這一千零一夜是為了讓當(dāng)年那個(gè)學(xué)不會(huì)算法的孩子知道你沒有錯(cuò)你只是還沒遇到屬于你的那本書?,F(xiàn)在燈點(diǎn)亮了。第一夜馬上開始。版權(quán)聲明本文為作者原創(chuàng)受著作權(quán)法保護(hù)。未經(jīng)授權(quán)禁止轉(zhuǎn)載、搬運(yùn)、摘編、改編及任何形式的二次創(chuàng)作個(gè)人學(xué)習(xí)引用請(qǐng)注明作者與原文出處。轉(zhuǎn)載授權(quán)請(qǐng)聯(lián)系作者CSDN 私信。侵權(quán)必究。